Quote:
Originally Posted by janix99
soweit ich weis werden hacks meist nur gepatcht, weil programmpfäde im spiel verändert wurden. wäre es nicht möglich, eine veränderte version des spiels zu machen die mit variablen funzt? is nur ne frage xD wäre lustig^^
|
Da ändern sich nicht irgendwelche Pfade, sondern die Adressen können sich ändern. Lass mich das kurz mit wen wenig Pseudocode veranschaulichen.
Code:
function foo()
//hier passiert irgendwas, was genau spielt keine Rolle
end
Nach dem Erstellen erhält diese Funktion eine Adresse, an der sie später in den Arbeitsspeicher geladen wird. Nehmen wir einfach mal an 0x00080085.
Nun erstellen die Entwickler einen neuen Patch und fügen eine neue Funktion hinzu.
Code:
function bar()
//auch hier ist egal was passiert
end
function foo()
//hier passiert irgendwas, was genau spielt keine Rolle
end
Nun steht die Funktion "bar" vor "foo", dadurch verschiebt sich die Adresse der Funktion "foo" vom Ursprungswert auf einen anderen.
Wenn man sein Programm also so eingestellt hat, dass es die Funktion an der Adresse 0x00080085 aufruft, dann wird das nach dem Patch nicht mehr funktionieren, da sie nun nicht mehr dort ist.
So kannst du dir das prinzipiell vorstellen, auch wenn das ein wenig vereinfacht wurde.
Jedoch verstehe ich nicht was du mit "eine veränderte version des spiels zu machen die mit variablen funzt" meinst. Das solltest du vielleicht ein wenig genauer ausführen, falls du darauf eine Antwort erhalten möchtest.