Strange Dual-Animation Glitch

  • Thread starter Thread starter Sega Chief
  • Start date Start date
Status
Not open for further replies.
S

Sega Chief

Guest
I was testing fights when I found I'd accidentally left some model IDs unchanged in the scene.bin, so instead of Sweepers and Mono Drives I got a horde of Clod and Harpy instead. Thing is, after a few turns the Clods synched up with each other and started to use two spell animations together at the same time.

It starts after 40s in this vid:

Proud Clod was using his 04 animation (according to the Proud Clod (...) editor) for the spell attacks which is one of his normal animations for attacking (wrist laser) as far as I'm aware. The game locks up when Haste is used with Matra Magic, which I'd presumed was because of a mis-match between Clod's and Harpy's animations but I think they synched with Light Shell and Vacuum prior to that. There was nothing special in the AI that I could see, which I've provided at the end. Is there something different about the way Proud Clod's animations work because of his Jamar Armor? Anyone got any ideas on this or seen something like it before? If it's not specific to Clod then it could perhaps be used (with some finesse) for 'combining' spell animations in gameplay mods. Maybe.

'Proud Clod'/Sweeper AI
Code: [Select]
Code:
0x000 If (Random MOD 4 == 0)0x000 {0x009 TargetMask <- RandomBit(AllOpponentMask)0x011 Perform("Matra Magic"[0052], EnemyAttack)0x016 }0x016 Else0x016 {0x019  }0x019  Else0x019  {0x01C   If (Random MOD 4 == 1)0x01C   {0x021   If ( (AllOpponentMask.Status:Darkness == 0) )0x021   {0x02E   TargetMask <- RandomBit( (AllOpponentMask.Status:Darkness == 0) )0x03D   Perform("Tear Gas"[0119], EnemyAttack)0x043   }0x043   Else0x043   {0x046   TargetMask <- RandomBit(AllOpponentMask)0x04E   Perform("W-Suppressor"[0118], EnemyAttack)0x054  }0x054  Else0x054  {0x057   }0x057   Else0x057   {0x05A  TargetMask <- RandomBit(AllOpponentMask)0x062  Perform("W-Suppressor"[0118], EnemyAttack)0x068  }0x068  Else0x068  {0x06BPOP(Random MOD 4)0x06CSCRIPT END
'Harpy'/Mono-Drive AI
Code: [Select]
Code:
0x000TargetMask <- RandomBit(AllyMask)0x008 If (Not  (Random MOD 4) )0x008 {0x010 Perform("Heal"[026A], EnemyAttack)0x016 }0x016 Else0x016 {0x019 Perform("System Upgrade"[0013], EnemyAttack)0x01ESCRIPT END
 
Here's PC's animation scripts:

Code: [Select]
Code:
0: 00 FE C01: C7(0001, 01) 01 F6 E5 EE2: C7(0001, 02) E5 EE3: C7(0001, 03) 02 03 04 F7(03) 05 E5 EE4: E8 C7(0001, 04) EA 06 07 08 EC 09 E5 EE5: E8 C7(0001, 05) EA 0A 0B 0C EC 0D E5 EE6: E8 C7(0001, 06) EA 0A 0B 0C EC 0D E5 EE7: C7(0001, 07) 0E 0F AD(0E, 044C, 05, 0A) AD(0D, 044C, 05, 0A) D8(05, 0010) F7(0C) 10 11 E5 EE8: E8 C7(0001, 08) FC EA 12 13 14 EC 15 E5 EE9: C7(0001, 09) 16 EE10: 18 FE C011: C7(0001, 0B) 19 F6 E5 EE12: E8 C7(0001, 0C) EA 1A 1B 1C EC 1D E5 EE13: C7(0001, 0D) 1E EE14: C7(0001, 0E) 1F EE19: C7(0001, 13) C3 F4(0F) F3 B8 EE
Note that the majority of these start with C7(0001, XX) as the first or second command. This code tells the animation engine to make the actor in enemy slot 1 (or one slot ahead of it, I'm not sure) perform animation XX. That's how it communicates with Jamar Armor to make it move along with PC. So when one of the PCs is moving, it's essentially telling the next one to perform its animation too (it looks like you have more than two PCs in that video). If Harpy is farther down the formation list there, it will try to make Harpy perform some of these animations too. However:
Code: [Select]
Code:
0: A9 C9 00 C11: 01 F6 E5 EE2: E5 EE3: BE(21) BE(26) C2(26) FC 02 D1(04B0, 0000, 08) F0 03 04 FA F0 05 E5 EE4: E8 B6(00) AA FC EA 06 C9 07 CA 08 EC 09 E5 EE5: E8 B6(00) AA FC EA 0A C9 0B CA 0C EC 0D E5 EE6: E8 B6(00) AA FC EA 0E C9 0F CA 10 EC 11 E5 EE
Harpy's only got 7 animations. Trying to execute animation 8 or higher will likely cause an error. I'm not sure how the game handles this, but that's your explanation of what's going on.
 
Yeah, the Harpy was in a slot ahead of the Clods; it was in slot 2 while the Clods were in slot 0 (another enemy was in slot 1 but unused for that formation). Many thanks for that info, it'll come in handy. I'm going to see if an invisible mini-Clod can synch up with an enemy and start mixing animations ♪
 
Status
Not open for further replies.
Back
Top