Seite 1 von 1

Sacred Underworld ModLoader

Verfasst: 26.08.2006 14:58
von Thorium
Hi,

Feedback brauch ich eigentlich keins, will nur mal Leuten die sich nicht entscheiden können PureBasic zu kaufen zeigen das sowas auch möglich ist.

Es handelt sich um einen aufwändigen Mod Loader für das kommerzielle Spiel Sacred Underworld. Sacred hat keinen buildin Modsupport, so ist ein Mod Loader unabdingbar, wenn man die Installation nicht dauerhaft manipulieren will. Also der Sinn des Mod Loaders ist es modifizierte Spieldateien in Sacred zu laden ohne dabei die Sacredinstallation zu manipulieren.

Und das funktioniert so:
Die Mod ist eine einzelne Datei, welche aus dem Mod Loader (.exe) und dem Modpacket (modifizierte Dateien) zusammengesetzt ist. Startet man nun die Mod.exe erstellt der Loader ein Verzeichnis namens "Mod" im Sacredverzeichnis und entpackt dort die modifizierten Dateien hin. Dann startet er Sacred und wartet auf ein Patchzeitfenster um ein paar Dinge im Prozessspeicher von Sacred zu patchen. Das Problem ist, das Sacred stark geschützt ist, durch einen sehr guten Exe-Packer, kein unpacker existent. Also muss im richtigen Augenblick gepatcht werden, nämlich dann wenn der Code dekomprimiert wurde aber die Spieldateien nochnicht geladen wurden. Also Patcht der Loader Sacred im richtigen Augenblick und zwar ändert er die Dateipfade so, das Sacred die Dateien aus dem Modverzeichnis läd anstatt aus dem eigentlichen Datenverzeichnis. Zudem biegt der Modloader noch das Pak-Verzeichnis auf das Mod-Verzeichnis um. Das ermöglicht das austauschen von einzelnen Texturen ohne die Texture.pak zu manipulieren. Nachdem Sacred die Datendateien geladen hat injiziert der Loader einen Remote Thread in den Sacred-Prozess um eine spielinterne Prozedur aufzurufen die einen Text in die Debugausgabe von Sacred schreibt. Dieser Text enhählt das Sacred gemoddet wurde. Sehr interessant zu wissen für die eigentlichen Spieleentwickler. Nachdem Sacred beendet wurde löscht der Mod Loader das Modverzeichnis wieder.

In der Praxis funktioniert das noch nicht für die .bin Dateien des Spiels aber mit allen .pak Dateien und einzelnen Texturen (.tga).

Der ModLoader ist nochnicht fertig, deswegen gibts noch keinen Source, kommt aber noch. Eine Demomod, welche eine Alpha des ModLoaders verwendet, gibt es schon. Zum Download gehts hier.

Verfasst: 26.08.2006 20:51
von Tafkadasom2k5
Thorium...
Du bist genial.. :o :allright:

Etwas wie Sacred zu patchen ist echt ein kleiner Geniestreich- und das mit Purebasic...

Ich bin beeindruckt!
Kanns eider ned testen, da ich weder Sacred noch Mods habe ^^ (Habe nur ne kurze Zeitlang den Singleplayer gezockt ^^)

Gr33tz
Tafkadasom2k5

Verfasst: 26.08.2006 21:30
von MVXA
Hört sich ja richtig kompliziert an. Ich wünschte, ich könnte das Tool auch
testen aber ich besitze Sacred nicht.