Hi there,
I am completely new to rom-hacking and went through some tutorials to get started.
- using FireRed, the XSE-Editor, Free Space Finder and Advance Map.
But the "Dynamic Offset" is causing me some headache: Whenever I compile the tutorial scripts the "new" Offset increases.
I assume that is because the editor looks for empty space and thus skips the space it had occupied with the previous version of the script. But doesn't that waste a lot of space?
Or is there actually an option to avoid that? If not, isn't it better to use static offsets?
For example:
if I compile this once, it gives me the new offset: 0x800000
if I compile again it gives me 0x800024
right now I am at 0x800147 and I can use any of them on an NPC and it works, so I basically copied the skript each time I compiled.
btw. it was even weirder with emerald (hence why I swapped to FireRed until I get some experience).
edit: The solution:
to avoid the increase in the offset while compiling the same dynamic script again just add #clean at the beginning of the script, this deletes the last compiled script.
Hower if you compiled a different script in between you will have to use either #erase or #removeall, of which the latter seems more suitable. #removeall simply removes the whole script located at a given offset.
Carefull: Don't use #clean the first time you compile a script or it deletes the previous one.
I am completely new to rom-hacking and went through some tutorials to get started.
- using FireRed, the XSE-Editor, Free Space Finder and Advance Map.
But the "Dynamic Offset" is causing me some headache: Whenever I compile the tutorial scripts the "new" Offset increases.
I assume that is because the editor looks for empty space and thus skips the space it had occupied with the previous version of the script. But doesn't that waste a lot of space?
Or is there actually an option to avoid that? If not, isn't it better to use static offsets?
For example:
Spoiler:
Code:
#dynamic 0x800000
#org @start
lock
faceplayer
msgbox @1 0x6
release
end
#org @1
= Hi.\nMy name is Diego.
if I compile again it gives me 0x800024
right now I am at 0x800147 and I can use any of them on an NPC and it works, so I basically copied the skript each time I compiled.
btw. it was even weirder with emerald (hence why I swapped to FireRed until I get some experience).
edit: The solution:
to avoid the increase in the offset while compiling the same dynamic script again just add #clean at the beginning of the script, this deletes the last compiled script.
Hower if you compiled a different script in between you will have to use either #erase or #removeall, of which the latter seems more suitable. #removeall simply removes the whole script located at a given offset.
Carefull: Don't use #clean the first time you compile a script or it deletes the previous one.
Last edited: