id Software

Robert Beckebans RBDOOM-3-BFG

6. März 2023 · Spiele · andreas · Kein Kommentar

Was mit Quake 2 funktioniert, funktioniert auch mit Doom 3 - zumindest mit der Doom 3 BFG-Edition. Für diese wurde das ursprüngliche Doom 3 nicht nur überarbeitet, sondern auch um die Missionspakete “Resurrection of Evil” und “The Lost Mission” sowie die Vorgängerspiele Doom und Doom 2 ergänzt.

Die am weitesten verbreitete Portierung der Spiele-Engine stammt von Robert Beckebans, der das Projekt “RBDOOM-3-BFG” bis heute kontinuierlich pflegt und auftretende Fehler bereinigt.

RBDOOM-3-BFG is based on DOOM-3-BFG and the goal of this port is to bring DOOM-3-BFG up to latest technology in 2023 making it closer to Doom 2016 while still remaining a DOOM 3 port regarding the gameplay. [Quelle]

Die benötigten Dateien können entweder direkt von der Projektseite auf Github heruntergeladen oder - sofern verfügbar - aus den offiziellen Paketquellen einer Linux-Distribution installiert weden:

$ sudo apt install rbdoom3bfg

Wie üblich sind bei der Spiele-Engine keinerlei Inhalte enthalten, diese müssen zusätzlich bereitgestellt werden. Der einfachste (legale) Weg führt entweder über einen Kauf bei Steam oder GOG.com, die weitere Vorgehensweise ist auf der Projektseite beschrieben.

Sofern die Installationsdatei von GOG.com vorliegt, kann diese auch - statt wie empfohlen umständlich über Wine installiert - direkt mit “innoextract” entpackt und anschließend verwendet werden:

$ innoextract setup_doom_3_bfg_1.14_\(13452\).exe

Sobald die Spieldaten entpackt wurden, können diese an einen beliebigen Ort “MEIN-PFAD” kopiert werden:

$ mkdir -p /MEIN-PFAD/Doom3BFG/
$ cp -r --preserve=timestamp app/base /MEIN-PFAD/Doom3BFG/

Anschließend sollte noch das Konfigurationsverzeichnis erzeugt und eine “autoexec.cfg” darin abgelegt werden, welche die Sprache auf die gewünschte Version setzt - bei den Installationsdateien von GOG.com wird sonst automatisch “Japanisch” als Standardsprache gewählt.

$ mkdir -p ~/.local/share/rbdoom3bfg/base/
$ echo 'seta sys_lang "english"' >> ~/.local/share/rbdoom3bfg/base/autoexec.cfg

Dann kann Doom 3 BFG gestartet werden, wobei zu beachten ist, daß es keinerlei Parameter gibt, um das Datenverzeichnis anzugeben. Das ausführbare “rbdoom3bfg” ist im Ordner “MEIN-PFAD” zu starten.

Wer möchte, kann sich den Start noch mit Hilfe einer “.desktop”-Datei erleichtern.

$ cp --preserve=timestamp app/language_setup.png /MEIN-PFAD/Doom3BFG/

$ vi ~/.local/share/applications/Doom3BFG.desktop

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Doom 3 BFG
Exec=/usr/games/rbdoom3bfg
Icon=/MEIN-PFAD/Doom3BFG/language_setup.png
Path=/MEIN-PFAD/Doom3BFG/
Terminal=false
Categories=Game

Auch hier ist “MEIN-PFAD” mit dem oben gewählten Pfad zu ersetzen.

Optional: AppArmor Profil

Optional kann auch noch ein AppArmor Profil erzeugt und in “/etc/apparmor.d” abgelegt werden. Folgendes Profil reicht (hier) aus, um RBDOOM-3-BFG mit einer NVidia-Graphikkarte zu spielen:

# 2023-03-02 athul/initial
#include <tunables/global>

/usr/games/rbdoom3bfg {
  #include <abstractions/X>
  #include <abstractions/base>
  #include <abstractions/audio>
  #include <abstractions/nvidia>

  deny network,
  @{HOME}/.local/share/rbdoom3bfg/** rwk,
  /MEIN-PFAD/Doom3BFG/** r,
  /sys/devices/** r,
  /var/lib/dbus/machine-id r,
  /proc/** r,
  /dev/nvidia* rw,
}

Zu beachten ist die Anpassung von “MEIN-PFAD” sowie das anschließende Neuladen der AppArmor-Profile, nachdem “rbdoom3bfg” hinzugefügt wurde.


Retrogaming mit Yamagi Quake II

26. Februar 2023 · Spiele · andreas · Kein Kommentar

Irgendwie fühlt es sich seltsam an, die Wörter Quake II und Retrogaming in einem Satz zu verwenden, aber Wikipedia sagt

häufig werden bereits Spiele bis zum Ende der 1990er Jahre als „retro“ angesehen [Quelle]

und somit fällt das Ende 1997 veröffetlichte Quake II wohl in diese Kategorie.

Trotz des für Software fast biblischen Alters können Spieleentwickler mit der Freigabe des Quellcodes der Spiel-Engine dafür sorgen, daß auch Jahrzehnte nach der Erstveröffentlichung ihre Werke ohne größere Klimmzüge (für den Endanwender) noch gespielt werden können. So auch Quake II, dessen Spiel-Engine auf unzählige Plattformen portiert wurde und inzwischen sogar im Webbrowser lauffähig ist.

Ein auf PCs weitverbreiteter Client für Quake II ist Yamagi Quake II, der für verschiedene Betriebssysteme verfügbar und auch bei vielen Linux-Disttributionen in den Standard-Paketquellenenthalten ist.

Screenshot

Wer das Rundum-Sorglos-Paket möchte, sollte das Paket “quake2” installieren, welches auch gleich den “game-data-packager” mitinstalliert. Dieser schnürt für eine ganze Reihe von Spielen mehr oder minder vollautomatisch aus bereits vorhandenen Spiel-Installationen oder Original-CDs installationsfähige Datenpakete, im Fall von Quake II werden bei Bedarf sogar die Daten der Demo heruntergeladen und paketiert.

Wer möchte, kann aber auch mit Hilfe einer Minimalinstallation und ein paar Befehlen auf der Kommandozeile eine spielfähige Installation erstellen. Die Anleitung hierfür bietet der Yamagi Quake II Installation Guide.

Wer das Original-Spiel nicht oder nicht mehr besitzt, kann sich mehr oder minder regelmäßig bei GOG.com für wenig Geld die Originalversion inklusive der offiziellen Missionspakete zulegen.

Die Installation des Yamagi-Clients erfolgt in diesem Fall ohne die “recommends”-Pakete

$ sudo apt install yamagi-quake2 --no-install-recommends

Anschließend kann mit Hilfe von “innoextract” das GOG-Installationspaket entpackt werden und die Dateien können in das Yamagi Quake II-Standard-Verzeichnis “~/.yq2/” kopiert werden.

$ sudo apt install innoextract
...
$ innoextract setup_quake2_quad_damage_2.0.0.3.exe
...
$ mkdir ~/.yq2/
$ cp -r --preserve=timestamp app/baseq2 ~/.yq2/
$ cp -r --preserve=timestamp app/music ~/.yq2/

Mit dem Aufruf von

$ /usr/lib/yamagi-quake2/quake2

wird Quake II gestartet. Wer die Dateien lieber an einer anderen Stelle in Dateisystem ablegen möchte, kann dies ebenfalls tun und muß den Aufruf des Clients um den Parameter “-datadir” ergänzen:

$ /usr/lib/yamagi-quake2/quake2 -datadir VERZEICHNISNAME

Um das Starten komfortabler zu gestalten, kann noch eine “.desktop”-Datei erstellt werden:

$ cp --preserve=timestamp app/goggame-1441704824.ico ~/.yq2/
$ vi .local/share/applications/Quake2.desktop

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Quake ][
Exec=/usr/lib/yamagi-quake2/quake2
Icon=~/.yq2/goggame-1441704824.ico
Terminal=false
Categories=Game

Das Kopieren der Missionspakete erfolgt analog zum Hauptspiel:

$ cp -r --preserve=timestamp app/rogue ~/.yq2/
$ cp -r --preserve=timestamp app/xatrix ~/.yq2/

Beim Aufruf des Clients ist noch ein “+set game rogue” oder “+set game xatrix” hinzuzufügen.


Quake II in Full HD

21. Mai 2016 · Spiele · andreas · Kein Kommentar

Wer Quake 2 auf einem modernen Rechner installiert, erlebt eine Überraschung: die Auswahl der Bildschirmauflösungen endet bei 1600 x 1200, die heute meist übliche Full-HD-Auflösung von 1920 x 1080 wird nicht zur Auswahl angeboten.

Abhilfe schaffen entweder ominöse Patches aus unbekannten Quellen oder ein kurzer Eingriff mit dem HEX-Editor: in der “Quake2.exe” nach der Bytefolge

00 40 06 00 00 B0 04 00

suchen und diese durch

00 80 07 00 00 38 04 00

ersetzen. Hierdurch wird bei Auswahl der 1600 x 1200’er Auflösung stattdessen 1920 x 1080 eingestellt.


Rage

16. November 2011 · Spiele · andreas · Kein Kommentar

Wenn es eine Firma gibt, welcher die PC- und insbesondere Grafikkarten-Hersteller viel zu verdanken haben, dann ist dies id Software. Egal, ob mit den Spielen der DOOM-Reihe erstmals halbwegs realistisch dreidimensionale Szenarien durchwandert werden konnten oder die Beleuchtung von Quake 2 erst mit einer 3dfx Voodoo so richtig zur Geltung kam - die Spiele der Texaner waren immer geeignet, PC-Besitzern einen guten Grund zum Aufrüsten ihres Spielgeräts zu liefern und im Gegenzug deren Kinnlade noch etwas weiter herunterklappen zu lassen.

Um so gespannter durfte man dem Release von RAGE entgegenblicken, das nicht ausschließlich für den PC, sondern als Cross-Platform-Shooter auch für XBOX360 sowie PS3 entwickelt wurde.

Screenshot

Während auf den Konsolen mit Einlegen des Datenträgers auch fast schon losgespielt werden darf, müssen sich PC-Besitzer erstmal mit Steam auseinandersetzen: Die Installation des zugehörigen Clients ist Pflicht, dieser dient nicht nur zur Online-Aktivierung sondern bindet auch die auf DVD erworbene Version fest an das bei der Installation angegebene (und zwangsweise anzulegende) Steam-Account. Nach Abschluss der Installation sowie dem Laden der obligatorischen RAGE-Patches sollte der Client sinnvollerweise in den Offline-Modus gewechselt werden, sonst erfreut er permanent mit Community-Gedöhns, Selbstupdates und Special-Offers, die man auf keinen Fall versäumen sollte. Vor allen von Online-Kauf bei Steam ist aus sicherheitstechnischen Gründen zur Zeit abzuraten - die Kundendatenbank ist erst vor Kurzem von Hackern komprommitiert worden.

RAGE zeigt schon innerhalb der ersten Spielminuten, daß id Software im Laufe der Jahre nichts verlernt, aber leider auch nur sehr wenig bis gar nichts dazugelernt haben. Während es Spiele wie Star Wars: The Force Unleashed zumindest schaffen, mit einer tollen Präsentation über spielerische Mängel hinwegzutrösten ist es auch die Präsentation welche zu den Schwachpunkten von RAGE zählt.

Wie bisher in fast allen Vorgänger-Spielen wird man mitten ins Geschehen geworfen und darf, diesmal in der Endzeit statt im Weltraum, um das eigene Überleben sowie das der gesamten Menschheit kämpfen.

Screenshot

id Software versucht, eine offene Welt vorzugaukeln, aber bereits nach den ersten Gesprächen mit den gelangweilt herumstehenden NPCs bleibt nur wenig vom Eindruck einer funktionierenden und lebendigen Welt übrig. Nach festgelegtem Raster wird der Spieler ohne jegliche Entscheidungsfreiheit von Ort zu Ort geschickt um dort lineare Wege abzuschreiten und, sobald das Ziel erreicht ist, mittels vorher hermetisch verschlossener Türen fast in Nullzeit wieder zum Ausgangspunkt zurückzukehren. Realisiert wird dies (nach ebenfalls alter Tradition) durch geskriptete Events, die beim Überschreiten imaginärer Linien Tore hinter dem Spieler schließen, Gegner loslaufen oder auch Fahrzeuge mit feindlich gesonnener Besatzung aus dem Nichts auftauchen lassen.

Wohl um ein durchgängig forderndes Erlebnis bieten zu wollen, können Waffen nicht von Gegnern aufgesammelt werden, sondern sind nur als Questbelohnungen oder in Shops erhältlich. Als besonders motivierendes Element darf nach dem Betreten einzelner Levelabschnitte dieser nicht mehr verlassen werden, ohne daß die Meldung “Your mission is incomplete, you will lose progress.” erscheint.

Sehen die Kulissen aus der Entfernung meist schlichtweg atemberaubend aus, so werden diese bei näherer Betrachtung schnell zu einem einzigen Pixelbrei, während der Hintergrund allzu deutlich an Matte-Paintings erinnert. Im Gegensatz hierzu stehen die detailreichen Figuren, die nicht nur hübsch anzusehen sind, sondern auch ihr vielfältiges Bewegungsrepertoire ausnutzen.

Screenshot

Alles in allem ist RAGE sicherlich kein schlechtes Spiel sondern setzt auf bekannte id Software-Trademarks. Aber während sich die Branche in den letzten Jahren stetig weiterentwickelt hat, spielt sich RAGE immer noch wie das vor rund 7 Jahren erschienene DOOM3 - mit allen Vor- und Nachteilen.

Bedenkt man, was z.B. bei FALLOUT aus einem ähnlichen Setting gemacht wurde, ist RAGE letztendlich nicht mehr als ein enttäuschender Kurztrip.


Quake II OpenGL-Renderer unter Windows 7

17. November 2009 · Spiele · andreas · 3 Kommentare

Versucht man standardmäßig, Quake 2 unter Windows 7 mit einer anderen Einstellung als dem Software-Renderer zu betreiben, führt dies in der Regel zu einem Absturz des Spiels.

Sofern eine NVIDIA-Karte verbaut ist, ist des Rätsels Lösung in der NVIDIA Systemsteuerung unter “3D Einstellungen” / “3D Einstellungen verwalten” zu finden und nennt sich “Erweiterungsbeschränkung”.

nvidia-quake2

Wird diese vom Default-Wert “Aus” auf “Ein” umgestellt, so startet Quake 2 auch mit dem OpenGL-Renderer.