GZDoom - Le Bottin des Jeux Linux

GZDoom

🗃️ Specifications

📰 Title: GZDoom 🕹️ / 🛠️ Type: Tool
🗃️ Genre: Adventure & Action 👁️ Visual: 3D
🏷️ Category: Adventure & Action ➤ FPS ➤ Fantasy & Sci-fi ➤ Doom 1&2, Hexen 1, Heretic, Strife 🏝️ Perspective: First person
🔖 Tags: 3D engine; id Tech 1 engine; Flagship; Doom; Heretic; Hexen; Strife; Hacx; Chex Quest; FPS; Shooter; Multi-platform; Moddable; Level Editor; Local Multi; Online Multi; Co-op; Local Co-op; PvP; PvE; Controller; Weather; Day & Night; 3D VR ⏱️ Pacing: Real Time
🐣️ Approx. start: 2006-02-24 👫️ Played: Single & Multi
🐓️ Latest: 2024-04-28 🚦 Status: 05. Tested & Working (status)
📍️ Version: Latest: 4.12.2 / Dev: 4625d4a ❤️ Like it: 1. 🙏️⭐⭐⭐⭐⭐ (fantastic)
🏛️ License type: 🕊️ Libre 🎀️ Quality: 1. 🏆️⭐⭐⭐⭐⭐ (perfect)
🏛️ License: GPL-3 ✨️ (temporary):
🐛️ Created: 2013-10-03 🐜️ Updated: 2024-08-25

📦️ Deliverables

📦️ Package name: gzdoom ..... 📦️ Arch: ✓
📄️ Source: ✓ ..... 📦️ RPM: ✓
⚙️ Generic binary: ..... 📦️ Deb: ✓
🌍️ Browser version: ..... 📦️ AppImage: ✓
📱️ PDA support: ✓ ..... 📦️ Flatpak: ✓
✨️ Not use: ..... 📦️ Snap: ✓

🚦 Entry status

📰 What's new?: 👔️ Already shown:
💡 Lights on: 💭️ New version published (to be updated):
🎨️ Significant improvement: 🦺️ Work in progress:
🎖️ This work: 5 stars 🚧️ Some work remains to be done:
👫️ Contrib.: goupildb & Louis 👻️ Temporary:
🎰️ ID: 13910

📖️ Summary

📜️[en]: A libre, multi-platform, single-player / multi-player (up to 8 on LAN) source port of id Software's DOOM engine, derived from the ZDoom project (dead). It is compatible with Ultimate Doom (Doom 1), Doom 2, Heretic, Hexen, and Strife. The vast majority of Doom's boundaries are removed, adding many features such as free view (up / down), high resolutions, transparency, jumps, sloped 3D floors, dynamic lights, ... It is currently one of the best DOOM engines. 📜️[fr]: Un port source libre et multi-plateforme, solo/multi (jusqu'à 8 en LAN), du moteur de DOOM d'id Software, dérivé du projet ZDoom (mort). Il est compatible avec Ultimate Doom (Doom 1), Doom 2, Heretic, Hexen, et Strife. La vaste majorité des limites de Doom est supprimée, ajoutant de nombreuses fonctionnalités telles que la vue libre (haut/bas), les hautes résolutions, la transparence, les sauts, les planchers inclinés en 3D, les lumières dynamiques, ... Il s'agit actuellement de l'un des meilleurs moteurs de DOOM.

🎥️ Videos


📰 Progress: (4.5/202103),


🕯️ How To: (201808),


🎮️ Showcase:
• Total Chaos(201810), Don`t play with HELL – Black Edition(201708), SIGIL (by John Romero)(202110),

• Brutal DOOM Black Edition(201712), The Trailblazer(201511), Doom 64 CE(202103),

• Ashes 2063(202109), Doom Slayer Chronicles mappacks (with Brutal Doom)(201809), Guncaster Vindicated (with Hell On Earth Starter Pack)(201808),

• Doom Slayer Chronicles(201809), Doom Remake 4 + HontE Remastered(201905), ARGENT + Hurt (big solo map)(201904),

• Brutal Wolfenstein 3d(201811), Doom: The Golden Souls 2(201806), DaggerHell Overkill(201809),

• Blood Rebirth(201807), Blood Mod(201709), Blood: The Curse Hunter (WIP/201907),

• VietDoom(201912), Bloom(201910), Bolognese Gore(201811),

• ZRift (mod) + UAC Ultra (map)(202008), Doom4 vanilla(201909), LitDoom + Neko HUD(202104),

• Project Brutality 3.0 (202211), Unfamiliar Trilogy (202301), Ashes 2063 (202110),

• Voxel Doom(202208), Ultra-Crispy(201902), Elysium's Curse (202307),

• 10 MORE Essential Doom Mods (202308), 10 ESSENTIAL Doom Mods (202307), 10 Insane DooM Mods (202203),

• Even More Great DOOM Total Conversion Mods (202308), 5 RPG Doom Mods You Must Experience (202211),

🕸️ Links

🏡️ Website & videos
[Homepage] [Dev site] [Features/About 1 2 3] [Screenshots 1 2] [Videos ft(4.5/202103) ft(201605) ft(201601) ft(201905) t(202xxx) gd(202xxx) gu(202xxx) r(202xxx) lp(201907) lp[hu](201905) ht(201808) d(202308) d(202307) d(202203) d(202308) d(202211) g(201809) g(201709) g(201406) g(201304) g(201103) g(201404) g(201512) g(201606) g(201608) g(201308) g(200802) g(201109) g(201304) g[fr](202xxx) g[de](202xxx) g[ru](201702) g[pl](202xxx) g[cz](202xxx) g[sp](202xxx) g[pt](202xxx) g[it](202xxx) g[tr](202xxx)] [WIKI 1 2] [FAQ] [RSS] [Changelog 1 2 3 4]

💰 Commercial
• (See our entries “Resources - Doom 1&2, Heretic, Hexen 1&2, Strife”, "The Ultimate DOOM (Doom 1)", “Doom II: Hell on Earth (Doom 2)”, "HeXen: Beyond Heretic (Hexen 1)", "Heretic: Shadow of the Serpent Riders (Heretic 1)", "Strife: Quest for the Sigil (Veteran Edition)")


🍩️ Resources

🔘️ Daily Buids
• GZDoom Download (Daily buids binaries): [DRD Team Development Builds]

🔘️ Game compatibility of this engine
• This engine is compatible with the following games (according to [DoomWiki]): Doom 1&2, Heretic, Hexen, Strife, Hacx, Chex Quest 1

🔘️ Required for playing Doom 1 (IWAD)
Commercial - Windows version (Doom 1 aka Ultimate Doom [fr] [en] [de], to get the DOOM1.WAD file, See also the doom1-wad | doom-wad-shareware packages in the repos of your distrib for some demo levels): 💰 [IsThereAnyDeal] [Humble Store] [Gamersgate] [Steam] [GOG] 🎬️ t(201301) r(201604)
• 🗿️See also our entry: Resources - Doom 1&2, Heretic, Hexen 1&2, Strife
Libre alternative - Freedoom (Freedoom Phase 1 for single player games)(Doom 1 equivalent, on your linux distrib, to get the freedoom1.WAD file, BSD-like): 🕊️ [Homepage] [Dev site] 🎬️ g(0.12.0/ph1/201910) g(0.12.0/ph1/201910)

🔘️ Required for playing Doom 2 (IWAD) and most of the following mods
Commercial - Windows version (Doom 2 [fr] [en] [de] | Final Doom [fr] [en] [de] (included in Doom 2 for Steam & GOG versions) =2 campaigns: "The Plutonia Experiment" & "TNT: Evilution", to get the DOOM2.WAD file): 💰 [IsThereAnyDeal (Doom 2) (Final Doom)] [Humble Store] [Gamersgate] [Steam] [GOG] [Gamesplanet [fr]] 🎬️ t(201411) r(201110) r(200811) g(201310) g(202012)
• 🗿️See also our entry: Resources - Doom 1&2, Heretic, Hexen 1&2, Strife
Libre alternative - Freedoom (Freedoom Phase 2 for single player games | FreeDM for multiplayer games)(Doom 2 equivalent, on your linux distrib, to get the freedoom2.WAD & freedm.wad files, BSD-like): 🕊️ [Homepage] [Dev site] 🎬️ mp(0.12.0/201910) mp(0.12.0/201910) mp(0.12.0/201910) g(0.12.0/ph2/201910) g(0.12.0/ph2/201910)

🔘️ Required for playing Heretic 1 (IWAD)
Commercial - Windows version (Heretic 1 aka Heretic: Shadow of the Serpent Riders [fr] [en] [de], to get the Heretic.wad file, See also the heretic1-wad package in the repos of your distrib for some demo levels): 💰 [IsThereAnyDeal] [Steam] [GOG] 🎬️ gu(200904) r(202009) r(201008) g(201411) g(201203)
• 🗿️See also our entry: Resources - Doom 1&2, Heretic, Hexen 1&2, Strife
Libre alternative - Blasphemer (Blasphemer for single player games | BlasphemDM for multiplayer games) (Heretic 1 equivalent, on your linux distrib, to get the blasphem.wad & blasphdm.wad files, BSD 3-Clause): 🕊️ [Homepage] [Dev site] 🎬️ g(201610) g(201912)

🔘️ Required for playing Hexen (IWAD)
Commercial - Windows version (HeXen: Beyond Heretic [fr] [en] [de], to get the Hexen.wad file, See also the hexen1-wad package in the repos of your distrib for some demo levels): 💰 [IsThereAnyDeal] [Steam] [GOG] 🎬️ r(201208) r(200910) r(201306) g(201307) g(201507) g[fr](202211)
• 🗿️See also our entry: Resources - Doom 1&2, Heretic, Hexen 1&2, Strife
Libre alternative - Zauberer (Hexen equivalent, to get at a later date the zauberer.wad file, ISC): 🕊️ [Homepage] [Dev site] 🎬️ g(202xxx)

🔘️ Required for playing other games (IWAD)
🦺️ (work in progress)

🔘️ Games/Mods
• See our entry: Resources - Doom 1&2, Heretic, Hexen 1&2, Strife

🛠️ Technical informations
[Open Hub] [PCGamingWiki] [MobyGames] [DoomWiki (GZDoom) (Chex Quest)] [Wikia] [ZDoom wiki (Compile ZDoom on Linux)] (List of supported games) [Trilobite.org (Richard's DOOM/DOOM 2 BESTIARY)] [DoomWiki (DSDHacked)]

🦣️ Social
(GZDoom) Devs (GZDoom Team 1 2] [fr] [en]): [Site 1 2] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(ZDoom, GZDoom, Raze) Devs (Christoph Oelckers (coelckers, Graf Zahl) [fr] [en]): [Site 1 2] [DoomWiki] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(ZDoom) (Devs Marisa Heit (Randi, Randy) [fr] [en]): [Site 1 2] [DoomWiki] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(ZDoom) Devs (Braden Obrzut (Blzut3) [fr] [en]): [Site 1 2 3] [DoomWiki] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
Devs (DRD Team 1 2 [fr] [en]): [Site 1 2] [Chat] [Forums] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(Doom) Devs (id Software [fr] [en]): [Site 1 2] [MobyGames] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(Doom Team)(199311) 2 (Doom Team)(early days) 3 (Doom Team)(201808) 4 (J. Carmack)(201604) 5 (J. Romero) (201806)]
(Heretic, Hexen) Devs (Raven Software [fr] [en]): [Site 1 2] [MobyGames] [mastodon] [Facebook] [Instagram] [PeerTube] [YouTube] [glassdoor] [LinkedIn] [PressKit] [Interview 1(25th Anniversary)(201505) 2(Brian Raffel)(200903) 4(Arnie Swekel)(201204)]
The Project: [Blog] [Forums 1 2] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [reddit] [Discord]

🐝️ Related
[Wikipedia (ZDoom and derivatives) [fr] [en] [de]]
[Wikipedia (Chex Quest) [fr] [en]] [de]]
[HOLaRSE [de]] [LibreGameWiki]

📦️ Misc. repositories
[Repology] [pkgs.org] [Generic binary] [Arch Linux / AUR] [openSUSE] [Debian 1(author's repo) 2 (specific repo)] [Flatpak] [AppImage(author's repo)] [Snap] [PortableLinuxGames]

🕵️ Reviews
[Gaming on Linux (SIGIL, by John Romero)]

🕊️ Source of this Entry: [Site (date)]

🦣️ Social Networking Update (on mastodon)

🛠️ Title: GZDoom
🦊️ What's: A libre source port of DOOM engine
🏡️ https://zdoom.org
🐣️ https://github.com/coelckers/gzdoom
🔖 #LinuxGameDev #Flagship #LibreGameEngine #FPS #Doom
📦️ #Libre #Bin #Arch #RPM #Deb #Flatpak #AppIm #Snap
📖 Our entry: https://www.lebottindesjeuxlinux.tuxfamily.org/en/online/lights-on/

🥁️ Update: 4.12.2
⚗️ New features 💎
📌️ Changes: https://github.com/ZDoom/gzdoom/releases
🦣️ From: 🛜️ https://github.com/coelckers/gzdoom/releases.atom

🎮️ https://www.youtube.com/embed/cGf-aiCGICA
🎮️ https://www.youtube.com/embed/MWCLlcj-auY
🎮️ https://www.youtube.com/embed/GeOMK65YuLQ
🎮️ https://www.youtube.com/embed/6HBJtZa6Ucs

🕶️ An example of a game using GZDoom engine (Deluge Mod on Mod DB)

📚️ GZDoom is a libre, multi-platform, single-player / multi-player (up to 8 on LAN) source port of id Software's DOOM engine, derived from the ZDoom project (dead). It is compatible with Ultimate Doom (Doom 1), Doom 2, Heretic, Hexen, and Strife. The vast majority of Doom's boundaries are removed, adding many features such as free view (up / down), high resolutions, transparency, jumps, sloped 3D floors, dynamic lights, ... It is currently one of the best DOOM engines.

📕 Description [en]

📜️ "A libre, single-player / multi-player source port of DOOM engine, derived from the ZDoom project" 📜️

ZDoom

ZDoom now comes in multiple flavours! The primary port, GZDoom, sports advanced hardware (OpenGL) and enhanced software rendering capabilities, while the port LZDoom serves as an alternative with a different feature set. Although the parent ZDoom codebase has been discontinued, the latest official release is available here for posterity.

GZDoom is the latest version targeting current systems with modern graphics hardware. (Vulkan/OpenGL 4.5 capability recommended, but the minimum requirement is OpenGL 3.3)


GZDoom

GZDoom is a 3D-accelerated Doom source port based on ZDoom coded and maintained by Christoph Oelckers.

Features

GZDoom features an OpenGL renderer and lots of new features, among them:

• Sloped 3D floors
• Light effects, including dynamic lights, brightmaps, and glowing flats.
• Quake2-style skyboxes
• True color support
• Model support

It was originally based on the 2.0.96x community build but is now based on official versions of ZDoom, occasionally using slightly newer Git code. The source is of course available.

Dynamic lights and brightmaps

GZDoom comes with a file entitled lights.pk3, which contains dynamic light definitions for relevant standard Doom, Heretic, Hexen and Strife actors, and a file entitled brightmaps.pk3 which contain brightmaps for many of these games' sprites. Loading these files automatically or not can be toggled from the IWAD selection box.


🌍️ Wikipedia:

ZDoom and derivatives

ZDoom is a source port targeted at Microsoft Windows, Linux, and Mac OS X. The first version, version 1.11, was released on March 6, 1998. ZDoom is one of the most advanced and feature-filled Doom source ports from an editing perspective, supporting Boom editing extensions, plus all of the extensions made in the version of the Doom engine used in Hexen: Beyond Heretic, as well as several other new features. In addition to Doom, it supports Chex Quest, Heretic, Hexen: Beyond Heretic, and Strife: Quest for the Sigil. Unlike many other source ports, ZDoom cannot play demos recorded with Vanilla Doom, including the intro demos found in the IWAD. The most recent version of ZDoom, version 2.8.1, was released on February 22, 2016. As of January 7th, 2017, further development has been ceased. ZDoom Forums user randi, a developer on the source port, made a post that states the following: "I am hereby eschewing further ZDoom development. There will be no future releases. Consider QZDoom or GZDoom as replacements. As for the zdoom.org site, eruanna has kindly accepted to take care of it so that the forum and wiki can continue to live on."

(...)

GZDoom

GZDoom is a source port based on ZDoom that extends its feature set to include an OpenGL 3 renderer. It was released on August 30, 2005. GZDoom also boasts 3D floor support compatible with Doom Legacy and Vavoom, 3D model support, 360 degree skyboxes, and other features. The latest version of GZDoom, version 2.2.0, was released on September 18, 2016.

(...)

📕 Description [fr]

Un moteur de Doom 1&2 dérivé de ZDoom, par la GZDoom Team, initié par coelckers, Graf Zahl, sur la base du moteur ZDoom de Marisa Heit (sur la base du moteur d'id Software et d'autres ressources).

GZDoom est un port source libre et multi-plateforme, solo/multi (jusqu'à 8 en LAN), du moteur de DOOM d'id Software, dérivé du projet ZDoom (mort). Il est compatible avec Ultimate Doom (Doom 1), Doom 2, Heretic, Hexen, et Strife. La vaste majorité des limites de Doom est supprimée, ajoutant de nombreuses fonctionnalités telles que la vue libre (haut/bas), les hautes résolutions, la transparence, les sauts, les planchers inclinés en 3D, les lumières dynamiques, ... Il s'agit actuellement de l'un des meilleurs moteurs de DOOM.

Crédit image (lien ci-dessus): Deluge Mod (Mod DB).


ZDoom

ZDoom est à présent disponible en plusieurs déclinaisons ! Le port principal, GZDoom, intègre un matériel avancé (OpenGL) et des capacités de rendu de logiciel améliorées, tandis que le port LZDoom constitue une alternative avec un ensemble de fonctionnalités différent. Bien que la base de code ZDoom parent ait été supprimée, la dernière version officielle est disponible ici pour la postérité.

GZDoom est la dernière version qui cible les systèmes actuels avec du matériel graphique moderne. (La fonctionnalité Vulkan / OpenGL 4.5 est recommandée, mais la configuration minimale requise est OpenGL 3.3.)


GZDoom

GZDoom est un port source de Doom en 3D accélérée basé sur ZDoom, codé et maintenu par Christoph Oelckers.

Fonctionnalités

GZDoom dispose d'un rendu OpenGL et de nombreuses nouveautés, parmi lesquelles:

• des planchers inclinés en 3D
• Des effets de lumière, comprenant des lumières dynamiques, des plans lumineux et des plans incandescents.
• des fonds d'écrans (NdT : le ciel) de style Quake2 / Unreal
• le support des textures en couleur véritable
• le support de modèle

Il était à l'origine basé sur la compilation de la communauté v. 2.0.96x, mais est maintenant basé sur les versions officielles de ZDoom, utilisant occasionnellement un code Git légèrement plus récent. Le source est bien-sûr disponible.

Lumières dynamiques et plans lumineux

GZDoom est livré avec un fichier intitulé lights.pk3, qui contient des définitions de lumière dynamiques pour Doom, Heretic, Hexen et Strife, et un fichier intitulé brightmaps.pk3 qui contient des graphiques lumineux pour plusieurs sprites de ces jeux. Le chargement de ces fichiers automatiquement ou non peut être basculé à partir du menu de sélection d'IWAD.



🌍️ Wikipedia:

ZDoom et dérivés

ZDoom est un portage très populaire, apportant de très nombreuses améliorations de gameplay et assurant une compatibilité avec d'autres portages plus anciens, notamment Boom et Doom Legacy. Il a de très nombreux dérivés dont GZDoom qui apporte de nombreuses améliorations graphiques OpenGL, QZDoom qui optimise le rendu graphique en mode logiciel, et plusieurs portages dédiés au jeu en ligne, comme Odamex, ZDaemon ou Zandronum (héritier de Skulltag).

ZDoom est utilisé comme moteur pour plusieurs jeux indépendants de Doom, et inclus dans les fichiers de ces jeux : Chex Quest 3, Action Doom 2: Urban Brawl, Harmony et The Adventures of Square.

🚧️ Installation ➜ 🚀️ Launching [fr]

⚙️ Installation à partir du binaire du moteur :

📦️ Installation à partir du paquet Manjaro/Arch :
🌞️ Recommended (Easy to install / to use)
• Il(s) est/sont dans les dépôts Manjaro/Arch, il suffit d'installer le(s) paquet(s).

📦️ Installation (méthode alternative) à partir du binaire au format Flatpak :
🌧️ Not recommended (More complicated to install / to use)
• Un binaire au format Flatpak est disponible. Il vous suffit d'utiliser votre gestionnaire de paquets Flatpak (discover et/ou gnome-software) pour l'installer en quelques clics.

💡Nota :
▸ Installation du support du format Flatpak (si ce n'est par défaut sur votre distribution) :
• Installez le support Flatpak : flatpak qt5-base
• Redémarrez votre PC (nécessaire).
• Installez un gestionnaire de paquets Flatpak : discover (mon préféré) et/ou gnome-software

[The Linux Experiment] compare les différents formats (Snaps vs Flatpaks vs Appimages) en novembre 2023.
[The Linux Experiment] fait le point sur le sujet en août 2023.
• Un excellent outil pour gérer les droits des applications installées via Flatpak : [Flatseal] (à installer depuis Flatpak).
• Par défaut (si vous n'avez réglé aucun droit supplémentaire via Flatseal ci-avant), lorsque votre application nécessite des données externes au paquet Flatpak (exemple : les données d'un jeu - tel que : game.ipk3 ou doom2/), il est nécessaire de les copier dans le répertoire Flatpak de votre application (situé dans ~./var/app/votre_application ou ~./local/share/flatpak/votre_application).
Exemple : ~./var/app/org.zdoom.GZDoom/.config/gzdoom/ ou ~./local/share/flatpak/net.dengine.Doomsday/current/active/files/)
• Si au lancement de votre application il ne se passe rien, copiez son raccourci en console pour voir le message d'erreur obtenu. Si vous obtenez le message "Could not initialize GLX", en console lancez : “$ flatpak update” puis relancez votre application.
• Les données des applications installées via Flatpak sont copiées dans : ~./.var/app/ ou ~./local/share/flatpak/
• Les binaires des applications installées via Flatpak sont copiées dans : /var/lib/flatpak/app/
Exemple de raccourci Flatpak : /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=gzdoom.sh org.zdoom.GZDoom



📄️ Installation à partir du source du moteur : (optionnel)
🌞️ Recommended (Easy to install / to use)
• Si vous souhaitez quelque-chose de très récent (versions de développement) et/ou qu'il n'y a pas de binaire disponible pour votre distribution/architecture (32/64-bits), la compilation du source est une bonne idée, voir un passage obligé.

▸ Installation des dépendances (en dépôt) :
• Installez au préalable le(s) paquet(s) suivant(s) : sdl2 cmake git zlib sdl2 libjpeg-turbo nasm tar bzip2 gtk3 fluidsynth libgme openal mpg123 libsndfile timidity++
(pour Debian/Ubuntu, installez les paquets éponymes, généralement précédés du préfixe “lib” et suivis du suffixe "-dev" s'ils sont disponibles, avec en plus les paquets spécifiques suivants : build-essential zlib1g-dev libsdl2-dev libjpeg-dev libbz2-dev libgtk-3-dev libfluidsynth-dev libopenal-dev libmpg123-dev libsndfile1-dev timidity)

▸ Téléchargement du source (sur GitHub) :
☝️ Nota : Évitez le téléchargement du source via les liens https, car ils ne fournissent pas les dépendances
Version stable, dans le répertoire souhaité, lancez : $ git clone -b "Nom_de_la_release" --recursive https://github.com/coelckers/gzdoom
Nom_de_la_release : à remplacer par le nom d'une release valide indiquée sur la page de développement : sur GitHub, dans la section Release, le nom valide est l'étiquette située à gauche du titre, ou cliquez sur "Tags" pour obtenir la liste des étiquettes valides).
ou Version récente (non stable), dans le répertoire souhaité, lancez : $ git clone --recursive https://github.com/coelckers/gzdoom

▸ Compilation :
• Dans son répertoire racine lancez successivement :
$ cmake -S . -B build/
$ cd build/
$ make -j$(nproc)
↪ le(s) binaire(s) issu(s) de la compilation se trouve(nt) dans le répertoire build/
↪ vous obtenez le(s) binaire(s): gzdoom
↪ et les containers de données : gzdoom.pk3 lights.pk3 brightmaps.pk3 game_support.pk3 game_widescreen_gfx.pk3


🏜️ Installation de contenu complémentaire :

▸ Données graphiques
Pour fonctionner, les moteurs Doom requièrent à minima un fichier de données artistiques autonome dénommé IWAD (Internal WAD). Voir la section "Resources" ci-dessus, sections "Required for ...".

▸ Rendu sonore amélioré
• Installez l'un des synthétiseurs MIDI :
⚬ fluidsynth (sous Debian, installez libfluidsynth-dev et libfluidsynth1)
⚬ timidity++ (sous Debian installez timidity)
(vous pouvez installer les 2 et voir ensuite les différences sous le jeu, personnellement j'ai une préférence pour le relief sonore obtenu avec fluidsynth)
• et l'une de ces fontes sonores (en dépôts) :
⚬ soundfont-opl3-fm-128m (sous Debian : opl3-soundfont)
⚬ soundfont-fluid (sous Debian : fluid-soundfont-gm + fluid-soundfont-gs)

Au lancement du jeu vous serez peut-être amené à sélectionner manuellement le synthétiseur MIDI souhaité via le menu "OPTIONS"➜Sound options➜MIDI DEVICE➜(Timidity++ par exemple), sinon vous obtiendrez le message "Starting MIDI playback failed" en console.


🚀️ LANCEMENT DU JEU

▸ Classique :
• Si vous l'avez installé à partir d'un paquet ou installé dans les répertoires système : [Alt+F2] gzdoom

☝️ Nota : le moteur sait de lui-même identifier les données compatibles disponibles et les présenter via un menu, si elles sont installées dans son répertoire (/usr/share/doom/ pour Doom).

• Pour tester un jeu sans l'installer dans les répertoires système :
⚬ avec le moteur GZDoom des dépôts, placez-vous dans le répertoire du jeu, et lancez : $ gzdoom . (n'oubliez pas le ".").
⚬ avec le moteur GZDoom compilé, copiez dans le répertoire du jeu les livrables issus de la compilation (gzdoom gzdoom.pk3 lights.pk3 brightmaps.pk3 game_support.pk3 game_widescreen_gfx.pk3) et lancez en console dans ce répertoire : $ ./gzdoom
• Il est possible de spécifier le set de données à utiliser via la commande : $ ./gzdoom -IWAD jeu.pk3

▸ Via un lanceur pour moteur id Tech (recommandé pour le jeu en solo avec mods) :
🌞️ Recommended (Easy to install / to use)
• Pour le jeu solo, utilisez l'un de ces lanceurs (tous en dépôts Arch/Manjaro) : [Enyo Launcher], [Doom Runner], [QZDL] ou [Rocket Launcher 2.0]. Ce type d'outil permet de simplifier l'association Moteur/IWAD/Mod(s) et de lancer le tout en 2 ou 3 clics par la suite.


📑️ PARAMÉTRAGE

[Enyo Launcher]
Onglet "Game" : Création ou utilisation d'un profile existant, sélection du fichier de données artistiques autonome (IWAD) et lancement des mods éventuels
⚬ Définissez un nouveau nom de profile correspondant au Nom de votre jeu (cliquez sur "+" dans la section "Game profile). Exemple de nom : "Freedoom 2 + Brutal Doom v2.1 + Nom_du_Moteur".
⚬ Précisez-lui ("Game data file") le chemin complet vers le fichier de données artistiques autonome (IWAD) que vous souhaitez utiliser (exemple : /usr/share/games/doom/freedoom2.wad).
⚬ Si vous souhaitez lancer le jeu avec un mod, dans la zone "Add-ons for selected profile", ajoutez ( "+") les fichiers ".pk3" fournis avec ce mod. Il est possible de réorganiser leur ordre d'exécution.
Onglet "Settings" : Définition du moteur à utiliser pour lancer le jeu/mod
⚬ Sélectionnez au déroulant le moteur souhaité. S'il n'est pas listé, il est possible d'en ajouter d'autres ("+").
Lancement du jeu
⚬ Cliquez sur le bouton "Run" en bas de l'interface.



💡 Nota
• Pour améliorer l'affichage : dans le menu OPTIONS ➜ Display options du jeu modifiez les paramètres souhaités (les options sont explicites).
• À noter que certains mods peuvent se cumuler : le mod principal (par exemple, Brutal Doom: Black Edition), avec un pack de musiques (exemple : Alternate Dark Ambient Music Pack), un pack d'effets graphiques (exemple : ZDoom Overhaul Pack), et un pack d'armes (exemple : Doom 2016 weapons addon).

🕵️ Test [fr]

📜️ Préambule :
⚬ 1ere édition : le ? sous Debian. Par : goupildb. ⏱️ Durée du test : ? minutes. 🎯️ Objectif : Initialisation de l'entrée, tests et premières impressions.
⚬ Mise à jour : le 26 Mai 2022 sous Manjaro. Par : goupildb. ⏱️ Durée du test : 120 minutes. 🎯️ Objectif : tester le fonctionnement de différentes alternatives d'installation du moteur GZDoom avec un contenu (IWAD) autonome (en l'occurence le jeu "SNAP The Sentinel").
⚬ Mise à jour : le 27 Juillet 2024 sous Manjaro. Par : goupildb. ⏱️ Durée du test : 40 minutes. 🎯️ Objectif : Test(s) de compilation.



🫕️ Installation :
A l'occasion de la saisie du jeu [SNAP The Sentinel ("Just the IWAD")], j'ai eu envie de tester quelques alternatives d'installation avec le moteur GZDoom qu'il utilise.

➊ ▸ 🐎️ Moteur

▸ (✔ v. 4.12.2, (4.7.1 compilé en 2022)) Source : FONCTIONNEL.
🏅️Recommended:
• 🟢️ Méthode 1 (plus généraliste, car la compilation est par essence généraliste, mais pas forcément à la portée des débutants): compiler le moteur GZDoom.
Voir la section "Installation" ci-avant. la compilation nécessite quelques dépendances à installer au préalable, néanmoins elle n'est pas très compliquée et fonctionne bien.
Je télécharge le jeu SNAP The Sentinel et le copie dans le répertoire de mon choix avec les livrables obtenus par la compilation (gzdoom gzdoom.pk3 lights.pk3 brightmaps.pk3 game_support.pk3 game_widescreen_gfx.pk3), puis dans ce répertoire je lance : $ ./gzdoom
➜ Ça marche, c'est un peu plus long, mais là aussi le graphisme semble plus joli qu'avec la version Flatpak.

▸ (✘ v. 4.7.1 (compilé en 2024), 4.0.0, 3.7.2, 3.6.1, 3.6.0, 3.5.0, 3.2.0, 3.1.0) Source : NE FONCTIONNE PAS. la compilation plante à 91%
↪ (...) /src/sound/oplsynth/OPL3.cpp:467:42: erreur: « numeric_limits » n'est pas un membre de « std » (...) src/sound/oplsynth/OPL3.cpp:467:57: erreur: expected primary-expression before « double » (...) make[1]: *** [CMakeFiles/Makefile2:736: src/CMakeFiles/zdoom.dir/all] Error 2 // et pour la v. 4.7.1 : src/common/rendering/vulkan/thirdparty/vk_mem_alloc/vk_mem_alloc.h:2410:9: erreur: « snprintf » n'a pas été déclaré dans cette portée

🟠️ Les moteurs en dessous de 4.12.2 ne se compile plus, ce qui interdit le fonctionnement des mods non compatibles avec cette dernière version. Un moyen de contourner le problème est de récupérer le binaire d'un paquet Debian (voir la section "Installation" ci-avant). Ces binaires Debian sont disponibles pour toutes les versions de GZDoom.

▸ (✔ v. 4.7.1) Paquet Arch/AUR : FONCTIONNEL.
🏅️Recommended:
• 🟢️ Méthode 2 (la plus simple, mais peut-être pas accessible sur toutes les distributions Linux): installer le paquet de votre distribution (Manjaro/Arch en ce qui me concerne).
J'ai installé le paquet gzdoom, je télécharge le jeu SNAP The Sentinel et le copie dans le répertoire de mon choix. Dans ce répertoire je lance : $ gzdoom . (n'oubliez pas le "." qui indique au moteur de se placer dans le répertoire courant pour les données).
➜ Ça marche, c'est super simple.

▸ (✔ v. 4.7.1) Paquet Flatpak : FONCTIONNEL.
🌧️ Not recommended:
• 🟠️ Méthode 2 (plus généraliste, car Flatpak est présent sur toutes les distributions, mais il me semble un peu plus compliqué à mettre en oeuvre): installer le flatpak du moteur GZDoom.
On clique sur le lien Flatpak du moteur GZDoom, ce qui télécharge le paquet Flatpak du moteur GZDoom. On clique ensuite sur ce livrable Flatpak, ce qui lance l'application "Logiciels" de GNOME sur la page de GZDoom, sur laquelle on clique sur le bouton "Installer" (j'ai du m'y reprendre à 2 fois car l'installation a planté la 1ere fois ; néanmoins la 2nde a été la bonne après une bonne dizaine de minutes d'attente de la fin du téléchargement).
Ensuite il est nécessaire de copier l'IWAD du jeu SNAP The Sentinel (snapgame.ipk3) dans le répertoire (container isolé) Paquet Flatpak du jeu (dans ~/.var/app/org.zdoom.GZDoom/.config/gzdoom/). On lance ensuite le moteur soit depuis la page GZDoom de l'interface de "Logiciels" de GNOME soit depuis le raccourci GZDoom (Flatpak) qui a été créé dans la section "Jeux" du menu des applications.
➜ Ça marche, l'installation est plus longue et un peu plus compliquée, bizarrement le graphisme semble moins joli qu'avec la méthode 1 - pour des réglages identiques (???).


➋ ▸ 🫀️ Données externes à assembler

🟢️ L'absence de livraison des données avec le source requiert quelques opérations complémentaires :
- installation du jeu original ou utilisation de données alternatives (freedoom et/ou blasphemer),
- installation de mods,
- lancement d'un jeu.

Le lancement d'un jeu peut se faire :
- (🌧️ Not recommended: ) via la ligne de commande. Ca marche bien, mais il faut se rappeler des paramètres, et si vous utilisez plusieurs mods simultanés : c'est un peu lourd.
- (🏅️Recommended: ) ou en s'aidant d'une interface telle que Enyo Launcher (voir la section "Installation" ci-avant). Pour une expérience optimale et simple, je recommande l'interface "Enyo Launcher" (voir la section "Installation ci-avant) soit avec le source compilé, soit avec le paquet des dépôts. L'interface est ergonomique et l'on peux se créer des profils que l'on lance d'un seul clic : génial !


🧪️ Tests effectués :

Quelques mods testés et appréciés (récapitulatif, liens ci-dessus section "Resources") :

▸ Mutators
Les "Mutators" sont des mods pouvant éventuellement être ajoutés à d'autres mods (d'où ma dénomination "Mutators"). Ils ne modifient pas réellement le gameplay mais ajoutent des fonctionnalités.

↪ Doom 2016 weapons addon : (⭐⭐⭐)
🟢️ un genre de mutator, sous la forme d'un pack d'armes de Doom 2016. Ce mod fonctionne aussi bien avec Zandronum qu'avec GZDoom et quelque-soit le mod initial ou la carte retenue.

↪ ZDoom Overhaul Pack (23/12/2013) : (⭐⭐)
🟢️ un genre de mutator, sous la forme d'un pack d'effets graphiques (exclusivement pour Doom, Doom II, Final Doom, Final Doom: TNT Evolution, The Plutonia Experiment. Il ne perturbera pas les autres jeux mais n'apportera rien). Il n'améliore pas le graphisme en lui-même (effets lumineux) mais ajoute différents effets (traces de pas baignés de sang, effets d'éclaboussures d'eau, ...).


▸ Mods
↪ Brutal Doom: Black Edition v. 3.1c : (⭐⭐⭐)
🟢️ Excellent

↪ The Trailblazer v.1.4b : (⭐⭐)
🟢️ Très bien aussi

↪ Samsara v.0.3 : (⭐⭐)
🟢️ Pas mal. Jouez à Doom avec différents personnages / HUD d'id (Quake, Heretic, ...)

↪ Stronghold : (⭐⭐⭐)
🟢️ Un mod vraiment original avec un réel effort sur les décors. Il est possible de faire les tableaux classiques de Doom avec juste un changement de look des armes et du HUD, ou de rentrer vraiment dans le jeu en revenant au menu principal (Esc) et en lançant un nouveau jeu (New Game). On démarre avec un simple jeu de type défense de tour où l'on doit repousser des vagues ennemies, puis on arrive dans les installations de l'UAC où je n'ai fais qu'explorer brièvement les lieux (j'ai pu acheter du bouclier à un magasin et lire des instructions, mais il y avait aussi un bar et d'autres portes d'accès à d'autres zones). Ce mod a fonctionné aussi bien avec Zandronum qu'avec GZDoom, avec Doom 1 ou Doom 2, néanmoins sous Zandronum le ciel était remplacé par le motif de transparence (damier blanc et gris, bug).

↪ Zion v8 Alpha : (⭐⭐⭐)
🟢️ Génial. Il fonctionne aussi bien avec GZDoom qu'avec Zandronum, mais le rendu graphique m'a semblé largement supérieur avec GZDoom. Le gameplay est très proche de Brutal Doom ou Brutal Doom: Black Edition, mais avec de supers armes, des monstres qui semblent plus retors et des tas d'améliorations graphiques. Pour l'instant, l'un des meilleurs mods que j'ai testé (sur seulement 3 tableaux). L'équipe signale qu'à ce stade il peut encore y avoir quelques soucis d'équilibrage. Le bestiau fait son poids : plus de 700Mo :). Excellent.

↪ Duke Nukem Level conversion for Doom2 : (⭐⭐)
🟢️ Une carte très très sympa reproduisant la map 1 (un seul niveau mais de bonne taille) de Duke Nukem 3D. Cette carte a fonctionné aussi bien avec Zandronum qu'avec GZDoom. Néanmoins avec Zandronum au démarrage la bande son ne fonctionnait pas avec fluidsynth, mais fonctionnait avec "Timidity" et "OPL synth emulation", mais au redémarrage suivant elle fonctionnait avec fluidsynth (?). Les armes et gameplay sont classiques, le tableau est assez grand avec beaucoup de monstres. J'ai passé un bon moment.

↪ WolfenDOOM: Spear of Destiny : (⭐⭐⭐)
🟢️ Une série de scénarios à télécharger sur le site de l'auteur, à jouer en utilisant Doom 2 en plus du wad du scénario. Je l'ai testé avec GZDoom 3.1.0, Zandronum 3.0 et PrBoom-plus 2.5.14 : le meilleur rendu a été obtenu avec GZDoom 3.1.0, néanmoins celui de PrBoom-plus 2.5.14 est lui aussi assez bon à condition d'activer l'OpenGL. Le problème de PrBoom-plus 2.5.14 est que si l'on active la mire de visée, l'on ne peut pas viser correctement les ennemis car il ne supporte pas la vue haut/bas, contrairement aux autres.
WolfenDOOM: Spear of Destiny peut aussi se jouer avec un contenu alternatif (testé avec FreeDoom2) mais dans ce cas il présente nettement moins d'intérêt car les décors de Wolfenstein ne sont pas reproduits (seuls les armes et le HUD sont affichés, donc pas trop d'intérêt). Si vous cherchez un peu de difficulté, prenez un niveau difficile car les ennemis sont plutôt faciles à éliminer. Le problème est que les medikits sont rares, et dans le niveau maxi de difficulté les ennemis réapparaissent mais pas les medikits. Assez bien, sans plus.

↪ Toward The Hell v1.5 : (⭐⭐⭐)
🟢️ Fantastique, démoniaque ! Un scénario / ensemble de cartes / mod (de nouveaux monstres). J'ai d'abord testé 4 ou 5 (6?) cartes avec ce mod seul. Puis j'ai tout recommencé (j'en suis à présent au 6ème ou 7ème tableau ?) avec ce mod (Toward The Hell) + Brutal Doom: Black Edition v. 3.1c + GZDoom (sous Brutal v20b+Zandronum je ne suis pas parvenu à un affichage correct : la vue en extérieur est beaucoup trop sombre et malgré différents réglages le jeu n'est pas jouable). Il est également jouable avec Zion v8 Alpha + GZDoom (testé quelques minutes). Voilà un jeu très original avec beaucoup d'idées novatrices pour ce type de jeu, de l'humour (davantage au début), mais surtout un vrai gameplay, un scénario qui tient la route, une progression dans l'horreur et la difficulté, et des mécanismes surprenants qui vous tiennent en haleine et vous empêchent de décrocher (la mise à jour du Bottin en a pris un coup :)). Ne vous fiez pas qu'aux 2 premières cartes qui vous donnent un petit aperçu de la suite à venir. C'est grandiose, un vrai FPS qui vous tient en haleine comme un bon film / bouquin de S.F. J'ai adoré (pas terminé à l'écriture de ces lignes).

↪ DemonSteele : (⭐)
🟢️ Un Doom version samouraï, avec de nouvelles armes, un nouveau HUD. Fonctionne aussi bien avec GZDoom 3.1.0 qu'avec Zandronum 3.0. Très bien réalisé, mais personnellement je ne suis pas fan.

🔴️ N'ont pas fonctionnés :
↪ Brutal Doom v20b : mais fonctionne avec le moteur Zandronum 3.0
↪ Project Brutality 2.03 : n'a pas fonctionné non plus avec Zandronum 3.0. Le jeu se lance (Doom 1 ou 2) mais sans le mod.
↪ Brutal Doom 64 : n'a pas fonctionné non plus avec Zandronum 3.0. Le jeu se lance (Doom 1 ou 2) mais sans le mod.
↪ Insanity's Brutality 4.0 : testé avec Brutal Doom: Black Edition v. 3.1c et Brutal Doom v20b. Je ne vois aucune différence. À priori il ne fonctionne pas.


🏆️ Impressions :

‣ 🌤️ Axes d'amélioration
• J'ai trouvé le graphisme de base moins beau (moins d'effets lumineux OpenGL) qu'avec le moteur Zandronum, sauf pour les mods Zion v8 Alpha et WolfenDOOM: Spear of Destiny (voir ci-après), pour lesquels il s'est révélé supérieur.

‣ 🌞️ J'ai aimé
• Les monstres m'ont semblé nettement plus coriaces (même les simple soldats), retors et rapides, rendant l'expérience de jeu des 1ers niveaux de Doom différente.
• J'adore le fait de devoir recharger mon arme d'un clic droit, je trouve que c'est un vrai "+" pour l'ambiance du jeu (une option que n'ai pas retrouvé dans les menus de Zandronum, à moins que ce ne soit le mod lui-même).
• les bruitages des armes sont particulièrement réussis, même le pistolet de base a un son convaincant
• même le gore devient drôle :)
• La version 3.1.0 me semble offrir un niveau de compatibilité avec les mods meilleur que Zandronum (plusieurs mods fonctionnent avec GZDoom 3.1.0 et pas avec Zandronum 3.0).


🧭️ Conclusion :

🕵️ Impression globale : 👍️
❤️ Like it: 🙏️⭐⭐⭐⭐⭐ (fantastic)
🎀️ Quality: 🏆️⭐⭐⭐⭐⭐ (perfect)

🟢️ GZDoom est devenu l'un des meilleurs moteurs de Doom 1 &2 actuel pour ses fonctionnalités avancées et surtout sa compatibilité avec les mods. Néanmoins Zandronum n'est pas loin derrière, avec quelques résultats graphiques - selon les mods, qui le placent dans certains cas au-dessus.
🟢️ Installer du contenu pour ce moteur est à la portée de tous, et le moteur est à la fois performant et d'une utilisation simple. Excellent !
👏️ ❤️ Un grand bravo et merci (notamment pour la version Linux !) à ses auteurs !