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

Is unused ("null") for editboxes.

That information should be referenced frequently as I don’t want to have to constantly reiterate myself about understood things, such as “#” denoting a comment.

For me, the easiest way to make a Nightmare module is to just copy someone else’s. After all, it’s so much easier to just steal the format than to make it from scratch. Thus it’s relatively harmless to use it as a basis for your own nightmare module (granted if you use the same offsets and stuff or you’re just making an update then you should give/leave credit to the original maker). I am going to use the FE7 Item Editor for my explanation of the format.

1 – Always 1

FE7 Item Editor by SpyroDi, updated by Nintenlord – the name. a super long name might not fit.

0xBE222c – the starting offset of the data. I can’t help you with finding this. When you find an array of data and you want to make a nightmare module for it, you’ll know the offset then.

159 – the number of entries, in decimal.

36 – the number of bytes in each entry, in decimal. Note that the starting point of the last entry + its length should be this number.

FE7 Item Editor.txt – the filename of a list of names to use for each entry. It must be a text file in the same folder, and each name should have its own line.

NULL – don’t worry about it

After the header, we start breaking apart the data into different entries, like so:

Item Name Pointer – the name of the entry. Should identify what it is

0 – the starting point of that data entry, always starts at 0.

2 – the length of that entry, in bytes, in decimal.

NEHU – the type of data it is.

NULL – a dropdown list for dropdown data types, including the number of values, followed by the values themselves, with the label for the value accompanying every value. You’ll see for yourself in a minute.

Item Description Pointer – name redux

2 – starting point. Note that the last entry started at 0 and was 2 bytes, and 0+2=2.

2 - length

NEHU - type

NULL - text – NULL means that no dropdown list is used.

The file continues like this all the way to the bottom. And that’s all there is in broad sight. However, I’ve yet to cover the different data types. The nightmare format tells what each is but you may not understand that, so I will just use a few more words to make it more clear:

TEXT - Text editbox – allows for there to be a text parameter, meaning an ASCII text string. Let’s say a certain 8 bytes is not like a statistic but an actual string of text, you’d use this to make it so that Nightmare will let you edit the text as text and not numbers.

HEXA - Hex array (useful for indicating and changing unknowns) – this lists the values out as individual bytes. Like its description says, its mainly useful if you have a bunch of unknown values that you want to compare between entries.

NEHU - Numeric editbox, hex unsigned – a standard old edit box where you can type in the numeric value you want. Hex means hexadecimal, you know the counting system we’ve been using since forever in hacking, and unsigned means that the values aren’t signed, meaning… oh, I guess I should teach that. If a value is signed, it means that it can change sign—any value after 127, which is equal to 0x7F, becomes negative. That’s right, you can have negative values. That’s how things like negative growths come about. You can never have signed hex values though, hex values just aren’t negative, ever—the whole point of the signed/unsigned system is to make it so that hex values come out as signed in the decimal system.

NEDS - Numeric editbox, decimal signed – see above, a standard edit box where the value is in decimal and is signed (can be negative)

NEDU - Numeric editbox, decimal unsigned - a standard edit box where the value is in decimal and is unsigned (cannot be negative)

NDHU - Numeric dropbox, hex unsigned – a dropbox entry, see NEHU for info about “hex unsigned”

NDDU - Numeric dropbox, decimal unsigned – a dropbox entry, the values are in decimal and aren’t signed

Here are a few examples:

Weapon Ability 1 - name

8 – offset from start of entry (8)

1 – length of 1 byte

NDHU – type, Numeric Dropbox Hex Unsigned, meaning it’s a dropbox where the values are in hexadecimal and unsigned

Weapon Ability 1.txt – the list of values possible to use, if it were NEHU instead of NDHU this would have to be NULL since “NEHU” doesn’t use lists, the “E” being for “editbox” and all, whereas the “D” in “NDHU” is for dropbox and all. And all. :D

Here’s an excerpt from a list:

256

0x00 None

0x01 Weapon

0x02 Magic

0x03

0x04 Staff

As you can see, the top number is the number of entries, followed by a new line with the hex and the name. If there is no label it still works fine though.

Just remember the following:

  • You can’t have an entry be outside the length of the nightmare module that is specified in the header

  • The difference between decimal, hexadecimal, signed, and unsigned

  • Test small nightmare modules first and then build on them, or you may find yourself with so many errors that you don’t know where they come from

  • Nightmare modules are meant for simplifying tables. Not every little thing needs a nightmare module! (Despite the fact that I made many small and near-pointless nightmare modules, haha, I only did that to make it easy on people who don’t like hex editors…)

  • There’s this tutorial to help you at all times, so you can do it!

You’re on your way to helping the community, starting small, but that’s how every normal person starts. This is the final chapter dedicated to a specific teaching purpose; the rest are very general or aren’t meant to teach anything about hacking. This means that you have now completed learning most everything there is to being an awesome Fire Emblem hacker, and now you can start contributing to the hacking scene yourself in every way possible!

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