The basics of modmaking:
Modmaking as talked about here on this page will be quite much hex editing. To do that you'll need a hex editor. I use a neat little program called HEX workshop. You may download it here.

The HEX numbers. Hex is counted in 0-F this means that 4=4, A=10. It also means that 20=32. Shortly A=10 B=11...F=15. F+F=1E, 1E=30 (10=16 + E=14) Get it? If not you're forced to use the base converter and the hex calculator findable under the Tools menu in HEX workshop. You often set a h after the hex number (20h) to indicate that it's a hex number. But it won't always be there. If it stands Decimal or "d" somewhere it's about normal numbers (0-9)

OFFSET, BYTES, ASCII - An offset is briefly the address to some place in the file. the offset column is the left of the three. You can go to a specific address by entering it in the goto option under the edit menu. You might find an adress like 404532 (this was just an example). Especially when opening a dat file in notepad. In those cases you might need to substract 400C00 from the bigger offset to get the one used in the hex editor. There might be bigger numbers in some dat files but I won't explain them here. They won't be so important to things herein.
A BYTE is two numbers combined. In hex workshop that'll be the middle column. It's two numbers in hex (0-F remember) The highest number possible in one byte is FF (255d). This is also used when writing colours in html for example. FFFFFF stands for white. 255 of every colour. But enough about it.
The ASCII column is the one to the right in your hex editor. It's just text. You can do symbols with your keyboard here. But be careful And just don't overwrite whatever you can.

Pointers  is a thing that points to something. If you want to know where the pointer is pointing to you have to put the pointer in reverse order. So the Pointer C4E94900 should be put like 0049E9C4 (watch out, the bytes should be the same). Then you don’t have to care about that 00 in front of the number. But when you have done that you have to substract a number. These numbers is 402600 for Diablo and 401600 for Hellfire So the offset that pointer points to is gonna be 49E9C4-402600 (this is Diablo's Name pointer in Diablo). The offset ends up to be 9C3C4. If you go there you’ll see the name of diablo (the dark lord). This is some knowledge you'll use quite often.

| Index | Monsters >>

 

 

Hosted by www.Geocities.ws

1