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