Höchstwahrscheinlich gibt es hier keine solche Person, die kein GTA spielen würde (oder zumindest nichts davon gehört hätte). Die erste 3D-Version der Serie wurde vor etwa 20 Jahren veröffentlicht. Es war GTA III. GTA: Vice City kam ein Jahr später heraus. Trotzdem werden diese Spiele nicht nur gespielt, sondern auch von Mods erstellt. Diese Spiele wurden auf viele Plattformen portiert, aber leider wurde Linux (bis vor kurzem) umgangen. Die einzige Möglichkeit, Linux zu spielen, war Wein. Aber in letzter Zeit hat sich alles geändert.
Die Nachricht fiel mir auf - Die Entwickler haben das Reverse Engineering von GTA III und Vice City abgeschlossen und Ports für verschiedene Plattformen freigegeben .
Und da ich alles befolge, was mit den Quellen zu tun hat (Lecks, Entdeckungen usw.), und auch gerne Software aus der Quelle erstelle, konnte ich dies natürlich nicht ignorieren. Aus den Nachrichten ging hervor, dass die Enthusiasten den Quellcode für GTA III und GTA: VC veröffentlicht haben. Meine Freude kannte keine Grenzen. Ich ging sofort zu Github, um weitere Informationen zu erhalten.
Wesentliche Verbesserungen (in Bezug auf Miami):
- Viele kleinere und größere Fehler wurden behoben.
- Benutzerdateien (Speichern und Einstellungen) werden jetzt im GTA-Stammverzeichnis gespeichert.
- Die Einstellungen werden jetzt in der Datei reVC.ini gespeichert (sie befanden sich ursprünglich in gta_vc.set).
- Debug-Menü hinzugefügt (verfügbar mit STRG + M).
- Kostenlose Kamera (Debug-Kamera). STRG + B - Ein / Aus. Wenn diese Option aktiviert ist, kann die Kamera frei auf der gesamten Karte bewegt werden.
- Ladebildschirme zwischen Inseln entfernt.
- Und einige andere Korrekturen / Verbesserungen, einschließlich Korrekturen für andere Plattformen.
Hinweis: Diese Parameter können in der Datei core / config.h konfiguriert werden . Einige Parameter können direkt im Spiel geändert werden (über das Debug-Menü), während der Rest neu erstellt werden muss.
Kommen wir zum interessantesten, nämlich der Versammlung von Miami (GTA: VC).
Wir brauchen:
- Linux-Distribution (Ubuntu, Debian, Mint usw.);
- Originaldateien (Assets) aus dem VC-Spieleverteilungskit (im Falle eines GTA III-Builds werden GTA III-Dateien entsprechend benötigt).
- GCC.
- Einige Bibliotheken und Header-Dateien.
Ich benutze Linux Mint 19.3 als Betriebssystem (basierend auf Ubuntu 18.04 LTS). Sie können gcc-Compiler wie folgt installieren (falls nicht installiert):
sudo apt install build-essential
Installieren der erforderlichen Bibliotheken:
sudo apt install libopenal-dev libglew-dev libglfw3-dev libsndfile1-dev libmpg123-dev
Hier werden wir anhalten und genauer darauf eingehen. Gestern habe ich eine halbe Stunde lang nach einer Lösung für das Kompilierungsproblem gesucht, weil ich nachlässig war. Auf GitHub wird klar angegeben, dass die Version der glfw-Bibliothek mindestens 3.3 sein muss, während die Ubuntu 18.04-Repos 3.2 haben. Wenn Sie ein auf Ubuntu 18.04 erstelltes Distributionskit haben (oder die Version der glfw-Bibliothek im Repository niedriger als 3.3 ist), muss diese Bibliothek aus Quellen kompiliert werden. Aber hier gibt es nichts Schwieriges. Herunterladen des Archivs github.com/glfw/glfw/releases/download/3.3.2/glfw-3.3.2.zip
Entpacken Sie es in einen beliebigen Ordner. Wir gehen in den entpackten Ordner und führen die folgenden Befehle aus:
mkdir glfw-build
cd glfw-build
cmake -DBUILD_SHARED_LIBS=ON ../
make -j2
sudo checkinstall
Die Bibliothek der gewünschten Version ist installiert. Jetzt klonen wir das Repository:
git clone --recursive -b miami https://github.com/GTAmodding/re3.git reVC
Es wird nicht lange dauern. Nach dem Klonen beträgt die Größe des reVC-Ordners ca. 120 MB (davon sind 70 MB ein .git-Ordner).
Wechseln Sie als Nächstes zum Ordner reVC und starten Sie premake5Linux:
./premake5Linux --with-librw gmake2
Das Generieren der Build-Dateien dauert einige Sekunden.
Hinweis: Wenn Sie die arm / arm64-Architektur verwenden, müssen Sie das Dienstprogramm premake5Linux aus den Quellen erstellen und dann mit dem oben angegebenen Parameter ausführen.
Nun die Montage selbst. Folgende Konfigurationen sind für den Build zur Verfügung:
- debug_linux-x86-librw_gl3_glfw-oal
- debug_linux-amd64-librw_gl3_glfw-oal
- debug_linux-Arm-librw_gl3_glfw-oal
- debug_linux-arm64-librw_gllf3_release_linux-release_lf
-release-olf-release_llf-release_ref_release_ref_release_llf
- ole -librw_gl3_glfw-oal
- release_linux-arm-librw_gl3_glfw-oal
- release_linux-arm64-librw_gl3_glfw-oal
Ich denke, aus den Namen geht alles hervor. Die Hauptsache ist, amd64 und arm64 nicht zu verwechseln (ich habe letzte Nacht schläfrig übersehen, dann konnte ich nicht verstehen, warum die Montage nicht stattfindet).
Wechseln Sie in das Verzeichnis reVC / build und führen Sie make mit Ihrer Konfiguration aus. Bei der Debug-Version für amd64 müssen Sie:
make config=debug_linux-amd64-librw_gl3_glfw-oal
Die Kompilierung ist schnell genug. Auf meinem alten Laptop (Asus X55A, Pentium B970 2x2,3 GHz und 4 GB Speicher) dauerte die Erstellung der Debug-Version 2 Minuten. 10 Sekunden (Ausgabedatei = 30,4 MB), Freigabe - 4 Minuten. 44 Sekunden (Dateigröße = 43,8 MB). Aus eigener Erfahrung werde ich sagen, dass es in vielen Fällen normalerweise das Gegenteil ist.
Wenn die Kompilierung fehlerfrei bestanden wurde, befindet sich die reVC-Binärdatei im Ordner reVC / bin / your_configuration / Debug_or_Release /.
Kopieren Sie den Originalordner mit GTA: VC irgendwo (wenn Sie möchten, können Sie alle Dateien aus dem Stammverzeichnis löschen - wir brauchen sie nicht). Dann kopiere unsere reVC-Binärdatei in den Spielordner. Theoretisch kann das Spiel bereits gestartet und sogar gespielt werden. Der Text einiger Menüpunkte wird jedoch nicht richtig angezeigt:
Um dies zu beheben, kopieren Sie die Ersatzordner von reVC / gamefiles in den Spielordner. In diesem Fall wird das Spiel jedoch auf Englisch sein.
Gehen wir nun das Debug-Menü durch:
Um das Debug-Menü zu aktivieren oder zu deaktivieren, drücken Sie STRG + M.
- Cam - alles was mit der Kamera zu tun hat.
- Cheats - Verschiedene Cheats.
- Debug - Zeigt verschiedene Debug-Informationen, die Position des Spielers usw. an.
- Debug-Rendering - Sie können verschiedene Objekte, Fahrzeuge, Gebäude, Fußgänger ausblenden oder anzeigen, die Wege von Fahrzeugen und Fußgängern anzeigen usw.
- Spiel - Teleportation zu einem beliebigen Ort (Sie müssen zuerst eine Markierung auf der Karte setzen). Sie können auch absolut jede Mission starten.
- Partikel - Ich weiß nicht was es ist.
- Rendern - Einige Korrekturen, FPS-Einstellungen, Grafikeinstellungen ...
- Spawn - Spawn Fahrzeuge.
- Zeit & Wetter - Zeit und Wetter einstellen.
Das Erstellen von GTA III ist nicht anders, außer das Klonen des Repositorys:
git clone --recursive https://github.com/GTAmodding/re3.git
Über Mods: Texturen, Skripte, Modelle sollten funktionieren. Aber dll / asi, CLEO wird nicht funktionieren. Einige Funktionen dieser Mods sind bereits in re3 implementiert, andere können in der Datei config.h konfiguriert werden.
Verwandte Links:
github.com/GTAmodding/re3 Montageanleitung
für GTA III
Ready reVC-Binärdateien für Mac, Linux, Windows
Ready re3-Binärdateien für Mac, Linux, Windows Anzeigen
des Repositorys in Visual Studio Code
Lifehack: Wenn Sie Github im Github-Link ändern .com auf github1s.com, dann kann das Repository im praktischen Visual Studio-Code angezeigt werden.