Hi,
I found "strange" sound sequence overriding (-> SEQ_READY) for 2DA soundset. Engine has two sequence IDs, one for animation and second for sound. Sound sequence ID is copy of Animation sequence ID, but each animation type has own override. Main issue is override "SEQ_SHOOT -> SEQ_READY", instead ranged(shoot) sound engine for some creatures plays nothing because 2DA.READY is empty for all(?) creatures. Ok, these monsters don't have ranged animation(?), but if we give them ranged weapon (and game will not crash) what happens...
Other issue is Ankheg sounds, it looks messy.
BG2 Chars (5xxx):
BG1 Chars (64xx):
Monster (73xx, 77xx, 7Fxx, ...):
MonsterOld (70xx, 72xx, ...):
MonsterMulti (12xx):
MonsterLayered (80xx):
MonsterMultiNew (13xx):
SEQ_ATTACK_SLASH -> SEQ_ATTACK SEQ_ATTACK_BACKSLASH -> SEQ_ATTACK SEQ_ATTACK_JAB -> SEQ_ATTACK SEQ_EMERGE -> SEQ_READY not used (all other anims has it, so i skipped) SEQ_HIDE -> SEQ_READY not used (all other anims has it, so i skipped)
Ankheg (3xxx):
SEQ_ATTACK_SLASH -> SEQ_ATTACK SEQ_ATTACK_BACKSLASH -> SEQ_ATTACK SEQ_ATTACK_JAB -> SEQ_ATTACK SEQ_DAMAGE -> SEQ_READY ? SEQ_HEAD_TURN -> SEQ_READY ? SEQ_SHOOT -> SEQ_READY ? SEQ_WALK -> SEQ_READY ? SEQ_EMERGE -> SEQ_READY error, but not used when above ground, so OK
Effect (0xxx):
SEQ_* -> SEQ_READY
TownStatic (4xxx):
AmbientStatic (Bxxx):
SEQ_SHOOT -> SEQ_READY SEQ_WALK -> SEQ_READY SEQ_ATTACK_SLASH -> SEQ_READY SEQ_ATTACK_BACKSLASH -> SEQ_READY SEQ_ATTACK_JAB -> SEQ_READY
Flying (Dxxx):
Ambient (Cxxx):
SEQ_READY for all except SEQ_WALK, or second path: SEQ_ATTACK_SLASH -> SEQ_READY SEQ_ATTACK_BACKSLASH -> SEQ_READY SEQ_ATTACK_JAB -> SEQ_READY SEQ_SHOOT -> SEQ_READY
MonsterIcewind (Exxx):
SEQ_ATTACK_SLASH -> SEQ_ATTACK SEQ_ATTACK_BACKSLASH -> SEQ_ATTACK SEQ_ATTACK_JAB -> SEQ_ATTACK SEQ_CAST -> SEQ_READY ?, if doesn't have "Ca" suffix *.BAM SEQ_CONJURE -> SEQ_READY ?, if doesn't have "Sp" suffix *.BAM SEQ_SHOOT -> SEQ_READY ?, if doesn't have "A4" suffix *.BAM
MonsterLarge (9xxx):
MonsterLarge16 (Axxx):
MonsterQuadrant (10xx, 11xx):
SEQ_ATTACK_SLASH -> SEQ_ATTACK SEQ_ATTACK_BACKSLASH -> SEQ_ATTACK SEQ_ATTACK_JAB -> SEQ_ATTACK SEQ_SHOOT -> SEQ_READY ?
MonsterLayeredSpell (2xxx):
SEQ_ATTACK_SLASH -> SEQ_ATTACK SEQ_ATTACK_BACKSLASH -> SEQ_ATTACK SEQ_ATTACK_JAB -> SEQ_ATTACK SEQ_SHOOT -> SEQ_READY ?, only if anim = 22xx or 23xx