Hacking Grundlagen

Wir sammeln alle Infos der Bonusepisode von Pokémon Karmesin und Purpur für euch!

Zu der Infoseite von „Die Mo-Mo-Manie“
  • So, da hier immer wieder sehr viele Knöpfchendrücker rumlaufen die glauben sie seinen Romhacker, schreib ich hier mal ein Tuto in dem die wirklichen GRUNDLAGEN vorkommen. Los gehts, nicht wie viele glauben mit dem Mapping sondern mit ein bisschen Hacker Chinesisch:


    Begriffserklärung:


    Offset - Ein Offset ist eine Stelle im Rom. Meist handelt man hier mit Hexzahlen. Es ist gut sich Offsets die man so findet wo irgendetwas besonderes ist mal in einer Textdatei zu speichern. Beispielsweiße findet man ab 800000 immer freihen Platz, also FF Bytes, wo man Scripts hinschreiben, bilder hinschreiben oder Text schreiben kann.


    Pointer - Ein Pointer ist in gba recht einfach zu behandeln, da er leicht zu berechnen ist. Ein Pointer zeigt auf eine Adresse, also ein Offset. Dies kann ein Funktionsaufruf sein. Zum beispiel der Start der Kampffunktion usw. Ein Pointer ist so aufgebaut, dass man einfach nur das Offset auf das gepointet werden soll Byteweise verdrehen muss(Aus ABCDEF wird EFCDAB) und dann 08 anhängen muss. Angenommen wir haben einen Text bei 324A. Dieser ist kurz und wir wollen aber einen längeren Text haben. Also pointen wir um. Zuerst einmal müssen wir wissen wo denn der Text aufgerufen wird, also einen Pointer auf 324A suchen. DIeser Vorgang wird als Repointen bezeichnet. Wir suchen im Hexeditor nach 4A3208, Das ist unser Pointer. Den verändern wir nun so, dass er auf eine freihe Stelle zeigt(ich kann gerade nicht prüfen wo eine Freihe Stelle ist. Genau so wenig weiß ich ob bei 324A wirklich ein Text steht hab grad kein Hexeditor da), angenommen wir haben eine freihe Stelle bei 326B. Wir ändern den Pointer "4A3208" in "6B3208" und schreiben unseren Text auch nach 326B. Jetzt ist er umgepointed. Das könnte man jetzt mit dem Professor Text machen. Oder mit was auch immer man will. Man kann den Text auch ändern(Texthacking mit Thingy)


    repointen - Ist der Vorgang nach einem bestimmten Pointer zu suchen(wie in unserem Beispiel dem Pointer der auf einen Text zeigt)


    umpointen - Ist der Vorgang einen Pointer so zu verändern, dass er auf eine von uns ausgesuchte Stelle zeigt. So kann man alles umpointen nicht nur Text, auch Bilder.


    Byte - Enthält einen Wer zwischen 0 und 255, bzw. 0 und FF in Hex. FF, bzw. 255 ist meist unbenutzt.



    Fortgeschrittenes Hacking:


    Dies ist nun kein wirkliches Tutorial. Eher eine Anregung. Es geht darum dass Tools und Mausklicks nicht die ganze Welt sind, es gibt und das ist auch beim GBA der Fall, Dinge die noch kein Hacker erforscht hat. Dazu zählen der Animationsheader, ich meine zu glauben das auch das ganze Kampfsystem erst teilweiße erforscht wurde. Somit kann man Attackeneigenschaften noch nicht verändern, man kann zwar Zwischen den Typen wählen, wie "Erzeugt Paralyse" "schläfert gegner ein" aber man kann keinen eigenen Code dort einschläusen so dass eine Attacke zum beispiel so aussieht: Erzeugt bei Paralyse den doppelten Schaden. Das müsste man wieder selbst erforschen. Dies ist äußerst schwierig. Denn es gibt kein festes Schema nach dem man arbeiten kann. Man kann Logging einschalten und gucken ob man was spezielles findet, dann ein bisschen nach pointern ausschau halten und dort und da mal repointen, aber wirklich ein festes Schema GIBT ES NICHT. Ich hab sowas selbst mal probiert(bzw. ich und haefele), da haben wir nach dem Animationsheader gesucht. Gefunden haben wir ihn nicht, obwohl Haefele so ein guter Hacker ist und so viel kann, das hat er nicht geschafft. Da gehört eben auch Glück dazu.


    Ich hoffe ich hab euch ein wenig anregen können, das Grundlagentuto ist auf jedenfall Pflicht. Vorher am Besten noch das Hexadezimale System lernen. Danach diese Grundlagen und dann das Texthacking. Mapping muss man nie lernen, das ist einfach(wenn man vom grafischen absieht aber das ist außerhalb des Bereichs "Hacking" da gehört dann Paletten hacking wieder dazu usw. wenn man das hat kann man eigentlich machen was man will, ich hab mich damals für Scripting entschieden mittlerweile hab ich aber auch Titlescreen und so weiter gelernt. Nur die Grundlagen sollte man immer beherrschen.


    Tutorial Urheberrecht liegt voll und ganz bei mir, Sturmvogel, es darf weder ganz noch teilweiße kopiert/übersetzt werden.


    ~SBird~