Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Fire Emblem Ultimate Tutorial.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
7.86 Mб
Скачать

Chapter 35-36: The Animation Modules & Repointing Tutorial

In this chapter we’re going to quickly go over the modules in the ‘Animation’ folder-at least, the modules we haven’t gone over yet.

First, we’re going to start with the Animation Pointer Table Editor. It’s a table for both reference and repointing that has relevant offsets for each animation. The header is just some text that I probably wouldn’t edit. The ‘mode divider’ is also something I wouldn’t edit. Frame data can be edited but you have to know how and it’s not something that’s really suggested or needed very often. I might cover the basics of how to do it. I wouldn’t suggest editing anything there except maybe the palette. The palette is like, the generic class palette, for generic units. Yeah. :\

Next, the Item Animation Reference Pointer module. All it can possibly do for you is repoint two pointers to something else. Since it uses a dropdown, you are limited to only repointing it to one area.

Since we don’t want to be too limited in our hacking, I’m going to teach you how to repoint it in a hex editor. Skip this if you don’t care about expanding/repointing data, especially if you don’t care about this data at all. All it does is repoint Spell Associations so that you can add more weapons to the list.

Go to offset 0x052B24. If you’re wondering how I figured this offset out, all I did was edit the Nightmare module (.nmm file) in a text editor and looked under the line that says the name of the module.

As said, this is sort of limiting. We can just go to that offset in a hex editor and repoint it to whatever we want.

If you don’t know, ‘pointer form’ in a hex editor is (0x08000000 + offset) – reversed. The default offset to animation lists or whatever is 0x00C999C0. I add 0x08000000 so it becomes 0x08C999C0. Then I reverse the order of the bytes (a byte is like two digits). 0x08 C9 99 C0 becomes C0 99 C9 08. At that offset I told you to go to, we see exactly those bytes. If we wanted to repoint it to some other blank space, we’d take the offset of the blank space and reverse it like I just did, then just type it in.

However, if you remember, the NMM has TWO pointers to repoint. Well, to find the other pointer, we’ll just search for its bytes. So we do a search (typically ctrl+F) in our hex editor of C0 99 C9 08.

(Make sure to set the input/datatype to hexadecimal, not decimal, text, or something else.)

Alright, we found another instance. That’s the only other instance there is. So we repoint this one too. After that, we’re almost done.

Now we’re going to copy the old data to the new area. Let’s say our new area is at 0xD70500, just for teaching purposes. We’re going to copy the data there where there is plenty of free space to be used. The point of free space is to add more things to a list or table.

The purpose of repointing is like moving books to another room. You can only put so many books into a room before you get to the walls and you can’t put anymore. So we just designate another room for all the books. This room has PLENTY of space though, so we can add even more books. However, we can’t have an infinite number of books, because the building has its limits as well.

The equivalent:

We can only put so many entries of data (in this case, item animation/spell animations) into one area before we run into other data. So we have to designate another area to use, and then move all of our old animations there. Then we can add our own item/spell animations there.

Hopefully this is all starting to make sense. We did the designating (repointing), so now we have to move our stuff. Go to 0xC999C0 and copy all the data from there to 0xC9A1B0 (but don’t include that last 0xFF byte).

Copy it (ctrl+C) and paste it into our new area. Per my example, I am putting it at 0xD70500. You know how to paste data, hopefully (make sure you are PASTING data, NOT inserting new data, if you insert new data it’ll shift over the offsets of other data and your ROM will get royally screwed).

Now save your ROM in your hex editor. We’re going to do one last thing. To make sure we don’t have to edit data in hex, we’ll edit our Nightmare Module to edit the data at our new offset.

The “repointing module” is the one we were using before I said “this has its limits, it’s lame”. The actual data we are repointing is the item animations, AKA spell associations. So go to the spell association editor and make a copy of that .NMM file. Make a copy for your repointed table of data.

Call it something to remind you that it’s repointed. Now open it with a text editor (my NMMs are already set to open with a text editor-if yours don’t, just double-click them, hit “open with a specific program” or something like that, and choose Notepad or your preferred text editor from the list of programs).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]