Jump to content

Imported animations causing crashes


Flexar
 Share

Recommended Posts

I'm new to hacking, and as is to be expected, I've had some problems. One of them is that whenever I attempt to initiate a battle with a character with an imported animation the game crashes. If anyone could help me with this, it would be most appreciated. I'm hacking FE8 and using imported animations from both FE6 & 7.

Link to comment
Share on other sites

I imported all the Hector animations, Eliwood's lord animations, Lloyd's animations, the nomad animations, the alternate hero animations, and the king animation. I used FEditor Adv to make dumps and then insert them into FE8, used Nightmare's custom animation module and exchanged the pointers of classes that I didn't want in the game or unused ones for those of the custom animations.

Link to comment
Share on other sites

I imported all the Hector animations, Eliwood's lord animations, Lloyd's animations, the nomad animations, the alternate hero animations, and the king animation. I used FEditor Adv to make dumps and then insert them into FE8, used Nightmare's custom animation module and exchanged the pointers of classes that I didn't want in the game or unused ones for those of the custom animations.

I hope you used the fix that SoC(I think) made, if not, that animation is going to be a problem.

Anyway, you should check the animations in Feditor, if they are a garbled mess, re-insert them. If any animations are a garbled mess, you will have to re-insert them(in the same slot, mind you).

Link to comment
Share on other sites

Nope, I imported the king animation straight from FE6. While I should probably do that, none of the animations work.

None of them seemed any more garbled than a reasonable deal of the sprites in the vanilla FE8. Reinserting them has changed nothing. Is there not something I should do before I reinsert them?

Link to comment
Share on other sites

No, none of them do that. Thanks, anyway.

Ok, I'll give it a go at explaining how to import it with Feditor Adv. I'm going to assume you have the same version as I do.

1. In your FEditor Adv folder, click the application thing or whatever it is called 'run'
2. You will be prompted to open a file. Open up a clean FE6 or FE8 ROM.
3. Click on Tools, then 'Class Animation Manager.' A standing sprite, a weird looking sheet, some colors and a bunch of buttons should pop up.
4. Click the arrow pointing up next to Input Index, and scroll through the animations until you find Female Shaman. If you are using FE8, go to 76. I don't know what it is for FE6.
5. Click the button that says Dump. Give it whatever name you feel like (For this example, I'll call it ShamanF), then save it. You should probably save it into a new folder, because it saves more than one file.
6. Here's where you need a hex editor. My personal favourite is HxD. So use it. Anyway, in that folder you 'dumped' the animation into, there will be a file called 'whatever you called it' Frame Data.dmp (in my case, "ShamanF Frame Data.dmp) Open this file with HxD
7. You will see a bunch of numbers. Press Ctrl+R. Click the bubble that says All (its above Forward) Change the drop down box next to 'Datatype' from 'Text-string' to Hex-values
8. Enter 47 00 00 85 into the 'Search For' text box, and 00 00 00 85 into the 'Replace with' text box. Press Ok.
9. A text box should pop up and say it replaced 7 occurences. Close the text box, and save the file.
10. Run FEditor again, only this time, open FE7 instead of FE6 or FE8
11. Again, click on Tools, then 'Class Animation Manager'
12. Look where it says 'Max Index' at the top of the screen. The Max Index should say A2. Change this to A3.
13. In the Input index, enter A3. It should remain as whatever animation you were last viewing.
14. Click on the button that says 'Insert'. You will be prompted to open a file. Go to that folder where you dumped the animation, and select (whatever you called it), The one that has
no file extension, so for me its 'ShamanF'.
15. Wait a couple of seconds, and a text box should say 'Animation Inserted!' Now click File, then save. And that's it, you're done!

After a bit of googling I found this, and it would appear that I've been skipping steps 6-9. However, when I attempt step 8, HxD comes up with an error message telling me that it can't find 47 00 00 85. Does anyone know the reason for this?

Edited by Flexar
Link to comment
Share on other sites

I think I got what your problem is.

example.png

Be sure that the separators are set to 0.

They should be at 255 by default.

It'd be a good idea to learn by yourself how to make what this module does.

For example, what you see in the screen I posted would be like this in hex:

07 01 03 00 00 00 09 01 04 00 00 00

Red: separators (three bytes of 00s each time)

Blue: the equivalent of +00, +01, +02 in the pic

Orange: the equivalent of +04, +05, +06 in the pic

Put something like that in free space and do the proper repointings~

Hope this helps.

Link to comment
Share on other sites

^ If you're using Nightmare 2.0 you can just specify where to put the data manually, like in one of those big blocks of zero'd data, then dereference the pointer and avoid the problem entirely by having the memory you're modifying initialized to something more sane than 0xFF

Bonus! You know where the data is and have complete control over it instead of being forced to use an arbitrary address or modify a module.

Because none of them have cape repeating animations like Mages or Shamans. That's the fix for cape flowing.

Good catch. That crap is why I added the looping command in the animation builder. I tried reverse engineering it and it was awful. I think there's separate data somewhere (that is probably hardcoded) which details the OAM for those cape flowing frames and I never located it. At some point my genius shoved me aside and started typing and when it let me sit back in my chair I realized it had gone with the obvious solution of making an assembly hack to loop any arbitrary sequence of frames.

Edited by Solais
Link to comment
Share on other sites

This is why you start with a hex editor. Learn to break down the image of a collection of arbitrary bytes into meaningful sections and scrutinize each bit of data in the set. Also good practice for recognizing data patterns and building that intuition attribute that makes hour long hacks take seconds.

I refer you now to the time I told Sauce to "scroll up" and did exactly that

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...