Bei diesem Projekt handelt es sich um eine Neuimplementierung des Spiels Duke Nukem II, das ursprünglich 1993 von Apogee Software für MS-DOS veröffentlicht wurde. RigelEngine fungiert als Drop-in-Ersatz für die ursprüngliche ausführbare Datei: Sie liest die Datendateien des Spiels und spielt sich genau wie das Original, läuft jedoch nativ auf modernen Betriebssystemen und ist in modernem C++-Code geschrieben.
Im Vergleich zur Ausführung des Originals in einem Emulator bietet RigelEngine viele moderne Erweiterungen und Verbesserungen der Benutzerfreundlichkeit, darunter:
Für das Originalspiel wurde nie ein Quellcode veröffentlicht, daher basiert dieses Projekt auf Reverse Engineering (insbesondere der Zerlegung der Original-Binärdateien). Eine vollständige Rekonstruktion des Originalcodes finden Sie unter Duke2Reconstructed.
Probieren Sie die Webversion aus! (über Emscripten zu wasm kompiliert)
Lesen Sie die FAQ
Sehen Sie sich ein Showcase-Video an (veraltet)
RigelEngine ist stabil und hinsichtlich des Funktionsumfangs ziemlich vollständig. Alle vier Episoden des Spiels (Shareware und registrierte Version) sind vollständig spielbar und dem Originalspiel ebenbürtig.
Ich habe derzeit keine Pläne für eine wesentliche zukünftige Entwicklung – ich gehe davon aus, dass sich das Projekt im „Wartungsmodus“ befindet. Das bedeutet, dass ich mein Bestes geben werde, um auftretende größere Probleme/Bugs zu beheben und CI am Laufen zu halten, aber ich werde keine neuen Funktionen hinzufügen.
RigelEngine läuft unter Windows, Linux und Mac OS X.
Es ist auch ziemlich einfach auf Steam Deck zu installieren.
Die Linux-Version läuft auch gut auf kleinen Einplatinencomputern (SBCs) wie dem Raspberry Pi und Odroid Go Advance. Siehe Ausführung auf Raspberry Pi und Odroid Go Advance.
Es gibt auch einen PS Vita-Anschluss (von Drittanbietern).
RigelEngine ist nicht sehr anspruchsvoll, erfordert aber OpenGL-fähige Grafikhardware. Zur Kompilierungszeit kann entweder OpenGL 3.0 oder OpenGL ES 2.0 ausgewählt werden.
Jede Nvidia- oder AMD-Grafikkarte ab 2007 sollte das Spiel problemlos ausführen. Integrierte Intel-GPUs haben jedoch erst 2011 OpenGL 3-Unterstützung hinzugefügt. Unter Linux kann die Verwendung von GL ES eine Option für ältere Intel-GPUs sein.
Weitere Informationen finden Sie unter Unterstützte Grafikkarten.
Außer der Grafikkarte benötigen Sie nicht viel. Das Spiel benötigt weniger als 64 MB RAM und läuft einwandfrei auf einer Single-Core-ARMv6-CPU mit einer Taktrate von 700 MHz (Raspberry Pi 1).
Beiträge zu RigelEngine sind herzlich willkommen! Bitte werfen Sie einen Blick auf den Beitragsleitfaden, bevor Sie eine PR erstellen.
Im Wiki gibt es eine wachsende Menge an Dokumentation, die den Einstieg in die Codebasis erleichtert. Ein guter Ausgangspunkt ist „Architekturübersicht“.
Wenn Sie auf der Suche nach einfachen Aufgaben für den Einstieg sind, werfen Sie einen Blick auf die Ausgaben mit der Bezeichnung „Gute erste Ausgabe“.
Um RigelEngine auszuführen, werden die Spieldaten des Originalspiels benötigt. Sowohl die Shareware-Version als auch die registrierte Version funktionieren. Wenn Sie RigelEngine zum ersten Mal starten, wird eine Dateibrowser-Benutzeroberfläche angezeigt und Sie werden aufgefordert, den Speicherort Ihrer Duke Nukem II-Installation auszuwählen. Der gewählte Pfad wird im Benutzerprofil des Spiels gespeichert, sodass Sie ihn beim nächsten Mal nicht erneut auswählen müssen.
Es ist auch möglich, den Pfad zu den Spieledateien als Argument in der Befehlszeile zu übergeben, was während der Entwicklung nützlich sein kann.
Sie können die Shareware-Version kostenlos von archive.org herunterladen. Die Vollversion (auch bekannt als registrierte Version) kann auf Zoom Platform gekauft werden, einem Store, der immer noch eine Lizenz zum Verkauf des Spiels besitzt (im Gegensatz zu anderen digitalen Stores wie Steam und Gog).
Wenn Sie bereits eine Kopie des Spiels haben, können Sie RigelEngine auch auf diese vorhandene Installation verweisen.
Die einzigen für RigelEngine tatsächlich erforderlichen Dateien sind:
NUKEM2.CMP
(die Hauptdatendatei)NUKEM2.F1
, .F2
, .F3
usw. bis .F5
(Intro-Filmdateien)Die Einführungsfilme sind nicht obligatorisch. RigelEngine überspringt einfach die Filmwiedergabe, wenn die Dateien nicht gefunden werden. Sie sind jedoch immer noch Teil des Erlebnisses, daher empfehle ich, sie beim Kopieren der Spieldateien irgendwohin mitzunehmen.
Wenn in den Spieldateien gespeicherte Spiele, Highscore-Listen oder Einstellungen vorhanden sind, importiert RigelEngine diese beim ersten Start in sein eigenes Benutzerprofil.
Weitere Informationen, die nicht ganz in diese README-Datei passen, finden Sie im Wiki. Sie finden beispielsweise Informationen zur Aktivierung der integrierten Debugging-Tools, eine Liste der Fehler in der Originalversion, die in Rigel Engine behoben wurden usw.
Mit jeder Version werden vorgefertigte Binärdateien bereitgestellt. Ab Version 0.8.0 umfasst dies Windows (x64), Mac OS (x64) und deb
Pakete für Debian/Ubuntu/Mint-Linux-Distributionen (auch x64).
Ein Flatpak ist ebenfalls erhältlich.
Sehen Sie sich auch Linux-Builds von Drittanbietern an, um eine Liste anderer Linux-Pakete/Builds zu erhalten, die von Distributionen und anderen Projekten bereitgestellt werden.
Detaillierte Anweisungen für jede Plattform finden Sie unter BUILDING.md.