Author Topic: FF7 Main npc models/animations questions/troubles  (Read 5184 times)

Quid?

  • *
  • Posts: 46
    • View Profile
Hello,

I hope this is the right place for this, I am doing a bit of modeling for something and I can't figure out the following questions so far.
Long story short, I made a new foe battle model using Rufus's animations, but they turned out too limited for my purpose, so I switched the model to use Vincent animations. My troubles:

1, Whenever the new model take damage, the fight freeze, it's not a crash, everyone keep moving in their idle animations but noboby will move to do something else, player party included.

2, Depending on which animation I choose in Proud Clod for the attack commands of my model, the game crash in the fight's beginning, and I have made loads of testing to make sure it does come from the physical attack animations choices. Some animations will play without crash, but so far none of them is one that shoot a gun. I had a lucky break with magic casting and found fastly a animation that work, but for the physical I seem to be doom at trying the 40 animations from Vincent one by one? Or can someone tell me which animations numbers are supposed to be the attack in the party members models?

3, Because of the Vincent's skeleton/animations, the model have several weapons attached to it, and of course I can see them in Kimera but how do I choose one for the model in game?
Battle models don't have rsd files that seem editable like the field ones, and I know I can delete the weapons files and give my model a hand with Rufus's gun for example, that was what I did at first, but I realised that the game were actually looking for the weapon(s) file during some crashes, so I tried working with them but not only I can't figure how to make one show up in game, it hasn't solved my 2 other problems above neither.

Please, and thanks in advance for saving my sanity.


Quid?

  • *
  • Posts: 46
    • View Profile
Re: FF7 Main npc models/animations questions/troubles
« Reply #1 on: 2019-10-03 12:57:24 »
Ok, I have solved problems 2 and 3 but the first is still bugging me.
I took a couple screenshots if it can help someone to reconize the problem:
https://imgur.com/a/SMVT6xQ

The model take a hit, does a half kneel animation then come back to it's idle anim... Then nothing else happen, the camera just stay on him and no one else will act, including party members if I select them a command or if I don't.

About problem 2, I tried animations one by one and made this list, it's not very complete as far as details and accuracy goes for some anims, but maybe it could help someone else who has trouble sorting out which anims attack and cast magic in party members:
Vincent anims:
03 change, move forward
04 change, move backward
05 taking damage?
06 taking damage?
07 fall on ground?
08 dodge?
09 steal?
0A 360 degre turn on self, taking damage?
0B dodge?
0C gun sling?
0D run, runaway?(anim freeze the fight)
0E run again?(anim freeze the fight)
0F Character disappear
10 dodge?
11 materia casting 1
12 fall forward and disappear
13 yet again a dodge?(anim freeze the fight)
14 attack, Shoot
15 attack, Shoot 2
16 attack, Shoot 3
17 attack, Shoot 4
18 attack and move forward without going back to initial position
19 attack, Shoot 5
1A attack, Shoot 6
1B attack, Shoot 7
1C attack, possible mime?
1D materia casting 2
1E Enemy talent casting
1F Invocations casting

Sega Chief

  • *
  • Posts: 4098
  • These guys is sick
    • View Profile
Re: FF7 Main npc models/animations questions/troubles
« Reply #2 on: 2019-10-03 21:39:33 »
The expected enemy animation index is slightly different to the player character animation index, so when taking a hit without adjustments an invalid animation gets played and it hangs. To get around this problem you can manually adjust the Damage Taken animation to a different ID. Add this to the enemy's pre-battle AI:

12   2060
11   4088
80
60   08
90

That translates to:
Self.DamageAnimID <- 8

This sets the damage taken animation to the Dodge animation. You could try replacing the 08 with one of the actual damage taken animations instead, I think I used 08 because Sephiroth doesn't have a damage-taken animation and I ended up using Dodge for all of the enemies using player-character models as a base. But if the damage-taken animations don't work then at least Dodge is proven to work in its place.

Looking at your notes, it seems there might be some differences between characters but they roughly have the same structure.

Tifa
-) 0: Idle (No need to change)
-) 1: Near Death (only use as alt idle, trigger is status ailment or when near death).
-) 2: Victory Animation
-) 3: Change Row Forward
-) 4: Change Row Backward
-) 5: Stand/Evade
-) 6: Dead
-) 7: Running
-) 8: Cover
-) 9: Use Item
-) 0A: Throw Item
-) 0B: Can't be read by Kimera/Missing?
-) 0C: Use Magic
-) 0D: Hit
-) 0E: Stun Hit - Two sets
-) 0F: Hit Knocked Down
-) 10: E.Skill Twirl
-) 11: Sense
-) 12: Manipulate
-) 13: Steal
-) 14: Deathblow
-) 15: Change Lane (unused in base game)
-) 16: Change Lane (unused in base game)

-) 0D:
-) 0E: Runs, ends up close
-) 0F: Turns invisible, works...?
-) 10: Row Change
-) 11: Magic again
-) 12: Damage Taken - FF03 (ejected)
-) 13: Damage Taken - FF01 (stunned)
-) 14: Fully working standard attack
-) 15: Slash-All/Long Range
-) 16: 2x-Cut A
-) 17: 2x Cut B (stays in place)
-) 18: 4x-Cut A
-) 19: 4x Cut B
-) 1A: 4x-Cut C
-) 1B: 4x-Cut D
-) 1C: Flash
-) 1D: Spell
-) 1E: E.Skill Use
-) 1F: Summon

Quid?

  • *
  • Posts: 46
    • View Profile
Re: FF7 Main npc models/animations questions/troubles
« Reply #3 on: 2019-10-04 05:09:28 »
The expected enemy animation index is slightly different to the player character animation index, so when taking a hit without adjustments an invalid animation gets played and it hangs. To get around this problem you can manually adjust the Damage Taken animation to a different ID. Add this to the enemy's pre-battle AI:

12   2060
11   4088
80
60   08
90

That translates to:
Self.DamageAnimID <- 8

Thank you, thank you and thank you, Sega Chief. It is working great! I thought about something like this yesterday, except I must have made a mistake and I putted it in the main script, not the pre-battle, it caused crashes that almost made me give up and go back to the Rufus animations.
You just saved me from settling with a more limited option.

I tried animations 5 and 6 as well as 8, they are also working on a Vincent's based character.
One thing, I don't understand where is the < in your code (no 45 opcode), or what it's purpose would be?
To me it reads: Self.DamageAnimID - 8
Which is enough?
Anyway it works and I am keeping the info in my notes.

And thanks for your Tifa's anims list, I will be keeping it as reference as well. Much more detailled than my Vincent list for sure.