Sacred Underworld ModLoader

Spiele, Demos, Grafikzeug und anderes unterhaltendes.
Benutzeravatar
Thorium
Beiträge: 1722
Registriert: 12.06.2005 11:15
Wohnort: Germany
Kontaktdaten:

Sacred Underworld ModLoader

Beitrag 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.
Zuletzt geändert von Thorium am 26.08.2006 20:57, insgesamt 1-mal geändert.
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.

Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke! Bild
Benutzeravatar
Tafkadasom2k5
Beiträge: 1578
Registriert: 13.08.2005 14:31
Kontaktdaten:

Beitrag 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
OpenNetworkConnection() hat geschrieben:Versucht eine Verbindung mit dem angegebenen Server aufzubauen. 'ServerName$' kann eine IP-Adresse oder ein voller Name sein (z.B.: "127.0.0.1" oder "ftp.home.net").
php-freak hat geschrieben:Ich hab die IP von google auch ned rausgefunden!
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Hört sich ja richtig kompliziert an. Ich wünschte, ich könnte das Tool auch
testen aber ich besitze Sacred nicht.
Bild
Antworten