|
Autor: |
George
|
Hinzugefügt: |
16.06.2019 23:09 |
Views: |
11271 |
Downloads: |
1069 |
Beschreibung: |
Einführung
Dieses inoffizielle Gothic 3 SDK richtet sich an Modder mit Erfahrung in C ++ und Reverse Engineering.
Die Gothic 3-Game-Engine (Genome) besteht aus mehreren Dynamic Link Libraries (DLLs), die voneinander abhängig sind. Daher exportiert jede dieser DLLs den größten Teil ihrer Funktionalität. Wir können C ++ - Klassen- und Funktionsdeklarationen aus den exportierten Symbolen rekonstruieren, die wir dann zur Schnittstelle mit der Engine verwenden.
Binäre Kompatibilität
Gothic 3 wurde mit Visual Studio 2005 (Plattform-Toolset v80) erstellt. Aus Gründen der optimalen Kompatibilität sollten wir für unser Projekt denselben Compiler verwenden. Zitieren der MSVC-Dokumentation zum Thema Binärkompatibilität:
In Visual Studio 2013 und früheren Versionen war die Binärkompatibilität zwischen Objektdateien (OBJs), statischen Bibliotheken (LIBs), dynamischen Bibliotheken (DLLs) und ausführbaren Dateien (EXEs), die mit verschiedenen Versionen des Compiler-Toolset und der Laufzeitbibliotheken erstellt wurden, nicht garantiert.
Aber seien wir ehrlich, niemand möchte heutzutage mit Visual Studio 2005 arbeiten. Nach ausgiebigen Tests kam ich zu dem Schluss, dass Visual Studio 2013 (Plattform-Toolset v120), obwohl dies nicht offiziell garantiert ist, zumindest in den für dieses Projekt relevanten Bereichen binärkompatibel mit dem v80-Compiler zu sein scheint. Die Verwendung des v120-Compilers bietet den Vorteil einer verbesserten IDE und die Möglichkeit, C ++ 11-Sprachfunktionen zu verwenden.
Möglicherweise würden sogar neuere Versionen von Visual Studio (MSVC-Compiler) funktionieren, aber ich habe das nicht ausführlich getestet.
Building
Das Gothic 3 SDK wird mit Visual Studio 2013 erstellt (Community Edition ist ausreichend). Alternativ können Sie eine neuere Version von Visual Studio verwenden, jedoch muss das Plattform-Toolset v120 installiert sein, das im Lieferumfang von Visual Studio 2013 enthalten ist (Hintergrundinformationen finden Sie unter Binärkompatibilität).
Unter source/Scripts/ finden Sie eine Reihe von Beispielprojekten. Hier können Sie auch Ihre eigenen Kreationen hinzufügen. Die Build-Artefakte landen in bin/scripts/.
Installation
Kopieren Sie den Inhalt von bin in Ihr Gothic 3-Installationsverzeichnis. Jede DLL im Skriptordner, die der Namenskonvention Skript _ *. Dll folgt, wird vom Spiel automatisch geladen.
Credits
NicoDE für sein RisenSDK, das eine großartige Inspiration für die Entwicklung des Gothic 3 SDK war. Baltram für seine Beiträge zur RisenSDK AsmJit AsmTK diStorm3 protobuf ZeroMQ PCG
Release-Thread |
|
|