Scripthacking
aus RHWiki, der freien Romhacking-Enzyklopädie
Unter Scripthacking versteht man das Modifizieren von Scripts. Bei unbekannten Scriptsprachen ist das mindestens genauso aufwendig und kompliziert wie ASM-Hacking.
| Inhaltsverzeichnis |
Hacken von Scripts
Um Scripts zu ändern, muss man zunächst wissen, wo sich die Scripts befinden. Falls dies nicht dokumentiert ist, muss man sie mit einer der beiden unten beschriebenen Möglichkeiten suchen.
Nachdem man nun das Offset hat, muss man natürlich auch den Aufbau der einzelnen Befehle und Funktionen kennen. Falls diese nicht bekannt sind, kann diese ebenfalls durch die unten beschriebenen Wege erforschen.
Wenn man dann schließlich alle benötigten Informationen hat, ist das eigentliche Scripthacking recht simpel. Man kann entweder neue Befehle hinzufügen, Befehle löschen oder Parameter eines bereits vorhandenen Befehls modifizieren. Falls man das Script verlängert, sollte man jedoch darauf achten, dass man keine anderen Daten überschreibt und gegebenenfalls umpointet.
Suchen von Scripts
Es gibt grundsätzlich zwei Möglichkeiten (neben dem Corrupting) Scripts zu suchen:
1. Durch Debugging
Eine Methode Scripts zu finden ist das geschickte Setzen von Breakpoints in einem Debugger. Diese Methode verlangt bei jedem Spiel individuelles Vorgehen und kann nicht verallgemeinert werden.
2. Durch Suchen von Textpointern
Eine weitere Methode ist, nach Textpointern zu suchen. Diese Methode liefert oft schnelle Ergebnisse, da die meisten Scriptsprachen auch über Methoden zur Textausgabe verfügen. In einigen Fällen jedoch, verwenden Scripts bloß Index-Nummern in einer Haupt-Pointertabelle mit allen Texten, was das Suchen ungemein erschwert bzw. unmöglich macht.
Analyse von Scripts
Die gründlichste Methode ist hier wohl die Analyse des Codes, doch kann man die Struktur auch durch Ausprobieren und logisches Denken herausfinden, wobei dies bei komplexen Scriptsprachen nur sehr schwer möglich ist.

