Baldur's Gate Wiki

SHOUT is a script used by creatures to inform others about an attack.

Baldur's Gate[]

IF
	AttackedBy([GOODCUTOFF],DEFAULT)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Shout(99)
		Enemy()
END

IF
	HitBy([GOODCUTOFF],CRUSHING)
THEN
	RESPONSE #100
		Shout(99)
		Continue()
END

IF
	Heard([ANYONE],99)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Shout(99)
		Enemy()
END

Tales of the Sword Coast[]

IF
	AttackedBy([GOODCUTOFF],DEFAULT)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Shout(99)
		Enemy()
END

IF
	HitBy([GOODCUTOFF],CRUSHING)
THEN
	RESPONSE #100
		Shout(99)
		Continue()
END

IF
	Heard([ANYONE],99)
	Allegiance(Myself,NEUTRAL)
	!Class(Myself,INNOCENT)
THEN
	RESPONSE #100
		Enemy()
		MoveToObject(LastHeardBy(Myself))
END

IF
	Heard([ANYONE],99)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Enemy()
END

IF
	Heard([ANYONE],99)
	!Class(Myself,INNOCENT)
	!See(NearestEnemyOf(Myself))
THEN
	RESPONSE #100
		MoveToObject(LastHeardBy(Myself))
		Continue()
END

Baldur's Gate: Enhanced Edition and Siege of Dragonspear[]

IF
	OR(2)
		StateCheck(Myself,STATE_STONE_DEATH)
		StateCheck(Myself,STATE_FROZEN_DEATH)
THEN
	RESPONSE #100
		SmallWait(5)
END

IF
	AttackedBy([GOODCUTOFF],DEFAULT)
	!GlobalTimerNotExpired("shouted","LOCALS")
THEN
	RESPONSE #100
		Shout(99)
		SetGlobalTimer("shouted","LOCALS",ONE_ROUND)
		SmallWait(5)
		Enemy()
END

IF
	HitBy([GOODCUTOFF],CRUSHING)
	!GlobalTimerNotExpired("shouted","LOCALS")
THEN
	RESPONSE #100
		Shout(99)
		SetGlobalTimer("shouted","LOCALS",ONE_ROUND)
		Continue()
END

IF
	!Class(Myself,INNOCENT)
	Heard([NOTEVIL],99)
	OR(6)
		Alignment(Myself,LAWFUL_GOOD)
		Alignment(Myself,CHAOTIC_GOOD)
		Alignment(Myself,NEUTRAL_GOOD)
		Alignment(Myself,LAWFUL_NEUTRAL)
		Alignment(Myself,CHAOTIC_NEUTRAL)
		Alignment(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Enemy()
		MoveToObject(LastHeardBy(Myself))
END

IF
	!Class(Myself,INNOCENT)
	Heard([NOTGOOD],99)
	OR(3)
		Alignment(Myself,CHAOTIC_EVIL)
		Alignment(Myself,NEUTRAL_EVIL)
		Alignment(Myself,LAWFUL_EVIL)
THEN
	RESPONSE #100
		Enemy()
		MoveToObject(LastHeardBy(Myself))
END

IF
	Class(Myself,INNOCENT)
	Heard([ANYONE],99)
THEN
	RESPONSE #100
		RunAwayFromNoLeaveArea(LastHeardBy(Myself),180)
END

IF
	Heard(NearestMyGroupOfType,99)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Enemy()
END

Baldur's Gate II[]

IF
	AttackedBy([GOODCUTOFF],DEFAULT)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Shout(99)
		Enemy()
END

IF
	HitBy([GOODCUTOFF],CRUSHING)
THEN
	RESPONSE #100
		Shout(99)
		Continue()
END

IF
	Heard([ANYONE],99)
	Allegiance(Myself,NEUTRAL)
	!Class(Myself,INNOCENT)
THEN
	RESPONSE #100
		Shout(57)
		Enemy()
		MoveToObject(LastHeardBy(Myself))
END

IF
	Heard([ANYONE],99)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Enemy()
END

IF
	Heard([ANYONE],57)
	Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Enemy()
END

IF
	Heard([ANYONE],99)
	!Class(Myself,INNOCENT)
	!See(NearestEnemyOf(Myself))
THEN
	RESPONSE #100
		MoveToObject(LastHeardBy(Myself))
		Continue()
END

IF
	Heard([ANYONE],57)
	!Class(Myself,INNOCENT)
	!See(NearestEnemyOf(Myself))
THEN
	RESPONSE #100
		MoveToObject(LastHeardBy(Myself))
		Continue()
END