DSDA-Doom (formely PrBoom+) - Le Bottin des Jeux Linux

DSDA-Doom (formely PrBoom+)

🗃️ Specifications

📰 Title: DSDA-Doom (formely PrBoom+) 🕹️ / 🛠️ 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: FPS; 3D engine; Doom Vanilla; Heretic; Hexen; Hacx; Chex Quest; id Tech 1 engine; libretro compatible; Multi-platform; Flagship ⏱️ Pacing: Real Time
🐣️ Approx. start: 2020-11-11 👫️ Played: Single & Multi
🐓️ Latest: 2024-11-01 🚦 Status: 05. Tested & Working (status)
📍️ Version: Latest: 💥️ 0.28.2 / Dev.: 687b10b ❤️ Like it: 2. 👏️⭐⭐⭐⭐ (excellent)
🏛️ License type: 🕊️ Libre 🎀️ Quality: 1. 🏆️⭐⭐⭐⭐⭐ (perfect)
🏛️ License: GPL-2 ✨️ (temporary):
🐛️ Created: 2010-08-20 🐜️ Updated: 2024-11-16

📦️ Deliverables

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

🚦 Entry status

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

📖️ Summary

📜️[en]: A libre, multi-platform engine (and successor of PrBoom+, whose development has been halted) compatible with Doom 1 & 2, TNT Evolution, Heretic, Hexen, Freedoom 1 & 2 (does not yet support Blasphemer), emphasizing on functionalities while preserving compatibility. It offers support for OpenGL, MIDI synthesizers, MBF21 (mod compatibility standard), UDMF (map standard), MAPINFO (declarative standard in WAD files), MUSINFO, Ogg and MP3 formats, high-resolution textures and sprites, up/down view, game speed change, tracking camera, treadmills, silent teleporters, friendly monsters (dogs), friction effects, and many improvements (on Heads up, maps, menus, controls, . ..). A great engine for fine-tuning parameters, delivered with Doom Shareware for immediate testing. 📜️[fr]: Un moteur libre et multi-plateforme (et successeur de PrBoom+ dont le développement est arrêté) compatible avec Doom 1 et 2, TNT Evolution, Heretic, Hexen, Freedoom 1 & 2 (ne supporte pas encore Blasphemer), mettant l'accent sur les fonctionnalités en préservant la compatibilité. Il offre le support d'OpenGL, des synthétiseurs MIDI, de MBF21 (standard de compatibilité des mods), d'UDMF (standard pour les cartes), de MAPINFO (standard déclaratif dans les fichiers WAD), de MUSINFO, des formats Ogg et MP3, des textures et sprites haute résolution, de la vue vers le haut / le bas, du changement de vitesse de jeu, d'une caméra suiveuse, des tapis roulants, des téléporteurs silencieux, des monstres amicaux (chiens), des effets de friction, et beaucoup d'améliorations (sur l'Heads up, les cartes, les menus, les contrôles, ...). Un bon moteur permettant un paramétrage très fin et livré avec Doom Shareware pour un test immédiat.

🎥️ Videos


🩳️ Shorts: Eternity 2 (maps) (202401),


🎲️ Gameplay:
• Attack on IO (202305), Hotel of the Dead (202307), The Mind Asylum (202306),

• Bitter Dream (202410), Preacher (202109), Don't Turn Your Back On The City (202405),

🕸️ Links

🏡️ Website & videos
Website: [Homepage 1 2(archived)] [Dev site 1 2(archived) 3(archived)] [Features/About] [Screenshots]
Videos: t(202xxx) ts(202xxx) gd(202xxx) gu(202xxx) id(202xxx) r(202xxx) lp(202xxx) ht(202xxx) g(202112) g(0.26.2/202307) g(202305) g(202312) g(0.25.6/202304) g[fr](202xxx) g[de](202xxx) g[ru](202xxx) g[pl](202xxx) g[cz](202xxx) g[sp](202xxx) g[pt](202xxx) g[it](202xxx) g[tr](202xxx)]
Doc: [WIKI] [FAQ]
Updates: [RSS] [Changelog 1 2 3]

💰 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

🔘️ Launcher
• DSDA-Launcher (a launcher for the dsda-doom source port, GPL-3): [Homepage] [Dev site] [forums] 🎬️ g(202xxx)

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

🔘️ 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 1 - Zauberer (Hexen equivalent, to get at a later date the zauberer.wad file, ISC): 🕊️ [Homepage] [Dev site] 🎬️ g(202xxx)
Libre alternative 2 (in dev) - Lastermaul (Hexen equivalent, on your linux distrib, to get the lastermaul.wad file, Public Domain material & CC0): 🕊️ [Homepage] [Dev site] 🎬️ g(202xxx)


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

🔘️ Maps, Scenarios
• Preacher (6 map island hopping adventure, now on idgames!): [Homepage] g(202109) g(202111)
• Ancient Aliens (a megawad featuring 32 colorful, action-packed maps for Boom compatible ports), by Paul DeBruyne (skillsaw): [Homepage] [Doom Wiki] g(201912)
• Mekanism (juicy maps full of orange & purple goodness just in time for Halloween), by Womp the Cat: [Homepage] g(202211)
• Mogor's Winter (a small wad for boom, 11 maps. Prboom-plus with "-complevel 9" is recommended), by Shadowman: [Homepage] g(201612)
• Resurgence (a 32 maps megawad project that requires Boom-compatible source ports to play), by Josh Sealy with Guest Mapper Darkwave0000: [Homepage] g(201502)
• Estranged (a 32 level megawad, cleanly detailed levels with a variety of environments), by Foodles: [Homepage] g(201701)
• 💥️ Eternity 2 (a 37-level megawad for Doom II (compatible with DSDA-Doom & GZDoom), Free): [Homepage] [Dev site] [Doom WIKI] 🎬️ g(202401)
• 💥️ Attack on IO (a 7 map wad with themes of tech bases, castles and bloody unholy landscapes, free): [Homepage] [DoomWorld] [Dev site] 🎬️ g(202305)
• 💥️ Hotel of the Dead (You come to your senses on the street outside the hotel building and suddenly find crowds of demonic creatures all around you., free): [Homepage] [DoomWorld] [Dev site] 🎬️ g(202307)
• 💥️ The Mind Asylum (Short single D2 map, free): [Homepage] [Dev site] 🎬️ g(202306)
• 💥️ Bitter Dream (a set of 10 MBF21 maps with all original music composed by me, intended to take you on a dark, cosmic journey, free): [Homepage] [Dev site] 🎬️ t(202410) g(202410)
• 💥️ Don't Turn Your Back On The City (urban map, free): [Homepage] [Dev site] 🎬️ g(202405)

🛠️ Technical informations
[PCGamingWiki] [MobyGames] [Doom Wiki] [MBF21] [UDMF] [MAPINFO]

🦣️ Social
(DSDA-Doom) Devs (DSDA-Doom Team 1 2 [fr] [en]): [Site 1 2] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(DSDA-Doom) Devs (Kraflab 1 2 [fr] [en]): [Site 1 2] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(PrBoom+) Devs (PrBoom Team 1 2 [en]): [Site 1 2 3] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(PrBoom+) Devs (Andrey Budko (e6y, Андрей Будько) [en]): [Site 1 2] [Forums] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
(DOSDoom) Devs (DOSDoom Team [fr] [en]): [Site 1 2] [Chat] [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)]
The Project: [Blog] [Chat] [Forums] [mastodon] [PeerTube] [YouTube] [PressKit] [reddit] [Discord]

🐝️ Related
[Wikipedia (Boom et dérivés / Boom and derivatives) [fr] [en] [de]]
[Wikipedia (Doom) [fr] [en] [de]]
[archlinux wiki] [Wikia]

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

🕵️ Reviews
[HowLongToBeat] [metacritic] [OpenCritic] [iGDB]

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

🦣️ Social Networking Update (on mastodon)

🛠️ Title: DSDA-Doom (formely PrBoom+)
🦊️ What's: A libre Doom engine, emphasizing on functionalities while preserving compatibility
🏡️ -
🐣️ https://github.com/kraflab/dsda-doom
🔖 #LinuxGameDev #Flagship #FPS #Doom
📦️ #LibreGameEngine #Arch #RPM #Deb #AppIm
📖 Our entry: https://www.lebottindesjeuxlinux.tuxfamily.org/en/online/lights-on/

🕵‍♂️️ 0.28.2: 👏️⭐⭐⭐⭐
🥁️ Update: 0.28.2
⚗️ New features 💎
📌️ Changes: https://github.com/kraflab/dsda-doom/releases
🦣️ From: 🛜️ https://github.com/kraflab/dsda-doom/releases.atom

🩳️ https://www.youtube.com/embed/bl4GaMw4mDE
🎲️ https://www.youtube.com/embed/DfeDrUNOpDY
🎲️ https://www.youtube.com/embed/BW11Uutd8VY
🎲️ https://www.youtube.com/embed/RGO-yJ77i4o

🕶️ An FPS view of Heretic at the start of the game (26 seconds of play), as the player (me) battles Gargoyles in a dark room leading to a flooded square (on the right of the screen). One of the special features of the DSDA-Doom engine is its ability to display the map as a transparent overlay in the top left-hand corner of the screen.

📚️ DSDA-Doom is a libre, multi-platform engine (and successor of PrBoom+, whose development has been halted) compatible with Doom 1 & 2, TNT Evolution, Heretic, Hexen, Freedoom 1 & 2 (does not yet support Blasphemer), emphasizing on functionalities while preserving compatibility. It offers support for OpenGL, MIDI synthesizers, MBF21 (mod compatibility standard), UDMF (map standard), MAPINFO (declarative standard in WAD files), MUSINFO, Ogg and MP3 formats, high-resolution textures and sprites, up/down view, game speed change, tracking camera, treadmills, silent teleporters, friendly monsters (dogs), friction effects, and many improvements (on Heads up, maps, menus, controls, . ..). A great engine for fine-tuning parameters, delivered with Doom Shareware for immediate testing.

📕 Description [en]

📜️ "A libre Doom engine, emphasizing on functionalities while preserving compatibility" 📜️ .

PrBoom+ is a Doom source port developed from the original PrBoom project.

The target of the project is to extend the original port with features that are necessary or useful for me personally and to all those interested in my work. It is worth noting that all changes introduced by me in no way break PrBoom's compatibility with the original Doom/Doom2 engines, and it is possible to be confident this will never happen in the future since compatibility is as important a merit of PrBoom as it is to me.


🍥️ Debian:

Doom source port with a focus on demo recording and speedrunning
This is a fork of prboom+ with many new features, including:


• Heretic, Hexen, MBF21, and Doom-in-Hexen support
• In-game console and scripting
• Full controller support
• Palette-based lightmode for opengl
• Debugging features for testing
• Strict mode for speedrunning
• Various quality of life improvements
• Advanced tools for TASing
• Rewind

DSDA-Doom requires game data to run. Free game data is available in the freedoom package. Commercial game data can be packaged using game-data-packager. DSDA-Doom supports all flavors of Doom, including The Ultimate Doom, Doom 2 and Final Doom as well as Chex(R) Quest, HacX, Freedoom: Phase 1 and Phase 2 and FreeDM.

Additionally, DSDA-Doom supports Heretic and Hexen.


DoomWiki (CC BY-SA 4.0 International):

DSDA-Doom (also Doom Speed Demos Archive - Doom) is a source port based on the PrBoom+um 2.6.x fork of PrBoom+ by Kraflab. It can currently be compiled in Microsoft Windows, macOS, and Linux environments. It has extra tooling for demo recording and playback, with a focus on speedrunning. It also implements several new standards for mod and map authors alike.

Kraflab received the special Codeaward at the Cacowards 2021, in part for creating the novel rewind and on-the-fly map restart features of DSDA-Doom. Being the pioneering source port for MBF21 was also a factor.

History

DSDA-Doom was first released as version 0.1.0 on November 11, 2020.

DSDA-Doom features

DSDA-Doom is not intended to be a direct successor to PrBoom+ and many features present in PrBoom+ have been removed as they do not serve DSDA-Doom's purpose of being a speedrun-oriented source port. Some features are also disabled while recording demos in order to comply with the rules of the Doom Speed Demo Archive, an example of this being instant 180-degree turning, which was banned in March 2023.

Some features that DSDA-Doom offers are:

✅️ A unified executable, supporting both OpenGL and Software renderers
✅️ OpenGL 2.0 based renderer. DSDA-Doom requires a video card with non power-of two support. These include:
• Nvidia: Geforce 6 series and higher
• AMD/ATI: Radeon R500 series and higher
• Intel: GMA 3 series and higher
• VIA: Chrome 9 series and higher
• Matrox: Parhelia series and higher
✅️ A rewind feature
✅️ Heretic and Hexen support
✅️ Many new parameters useful for speedrunning
✅️ More accurate perception of spectres in both OpenGL and Software mode
✅️ QOL improvements
✅️ Support for several new mapping standards:
• DEHEXTRA
• MBF21
• DSDHacked
• UDMF
✅️ UMAPINFO and MAPINFO support
✅️ COMPLVL support

Compatibility modes

DSDA-Doom supports various compatibility settings to adjust its behavior, much like those initially implemented for MBF. In addition to individual settings for each difference in behavior, it allows the user to set compatibility levels to behave like earlier versions and modifications of the Doom engine. With the compatibility levels, DSDA-Doom may provide almost flawless compatibility with regular demos, as well as those recorded with Boom engines.

To change compatibility levels, the cheat code tntcomp can be used ingame. The game can also be launched with the -complevel parameter, or with default_compatibility_level in the config file, followed by one of the following numbers:
(see DoomWIKI)

Launcher

On April 1, 2021, Pedro Beirão (PBeGood) introduced a launcher specifically meant to be used with the DSDA-Doom source port. It contains several launch options to quickly jump into specific levels, adjust complevels and set up demo settings. It currently exists as a stand-alone release but integration into DSDA-Doom itself is planned.

Current releases for the launcher may be found at its GitHub page.


🌍️ Wikipedia:

Boom was a port for DOS of the Doom source code by TeamTNT. Boom fixed numerous software glitches and added numerous other software enhancements into the engine to such a degree that its additions have been incorporated into most modern versions of Doom source ports (such as PrBoom+, ZDoom and Doom Legacy). The last update of Boom, version 2.02, was released on October 22, 1998. In October 1999, Boom's source code was released. Further development of Boom as a source port was continued for DOS as MBF, for Windows as PrBoom, and for Linux as LxDoom. The latter two later merged as PrBoom and also took on many of the MBF features, so PrBoom's own successor, PrBoom+, is effectively the modern equivalent of Boom.

LxDoom

LxDoom was a source port for Linux created by Colin Phipps in 1999 based on Boom. It particularly focussed on removing the limitations and bugs inherited from the original Doom, and increasing computational efficiency. In 2000 it was combined with PrBoom, a Windows source port, becoming its basis. PrBoom was from then available in both Windows and Linux versions.

PrBoom

PrBoom is a Doom source port derived from Linux and Windows ports of Boom and MBF that includes an optional OpenGL renderer, as well as options allowing it to restore the behavior of earlier executables (such as Doom version 1.9, Boom, and MBF) in essential ways. A variation named PrBoom+ provides enhanced demo recording and viewing capabilities. PrBoom was used as the engine for id Software's official port for the iPhone, Doom Classic. The source port is packaged in the Ubuntu Software Center as well as Fedora's RPM software repository alongside Freedoom. PrBoom was last updated on November 9, 2008.

Although PrBoom and PrBoom+ are simpler than some other Doom source ports, they are often preferred as staying relatively close to the behavior of the original games, and have good demo support. However, some of the bug fixes and behavior changes of other ports may unbalance how levels made for the original games play, giving players certain advantages or disadvantages.

📕 Description [fr]

Un moteur compatible et amélioré des jeux Doom 1&2, Heretic et Hexen, par la DSDA-Doom Team (initié par Kraflab), reprenant le travail du moteur PrBoom+ (Andrey Budko (e6y, Андрей Будько) / la PrBoom Team).

DSDA-Doom (aka Doom Speed Demos Archive - Doom) est un moteur libre et multi-plateforme (et successeur de PrBoom+ dont le développement est arrêté) compatible avec Doom 1 et 2, TNT Evolution, Heretic, Hexen, Freedoom 1 & 2 (ne supporte pas encore Blasphemer), mettant l'accent sur les fonctionnalités en préservant la compatibilité. Il offre le support d'OpenGL, des synthétiseurs MIDI, de MBF21 (standard de compatibilité des mods), d'UDMF (standard pour les cartes), de MAPINFO (standard déclaratif dans les fichiers WAD), de MUSINFO, des formats Ogg et MP3, des textures et sprites haute résolution, de la vue vers le haut / le bas, du changement de vitesse de jeu, d'une caméra suiveuse, des tapis roulants, des téléporteurs silencieux, des monstres amicaux (chiens), des effets de friction, et beaucoup d'améliorations (sur l'Heads up, les cartes, les menus, les contrôles, ...). Un bon moteur permettant un paramétrage très fin et livré avec Doom Shareware pour un test immédiat.

• DSDA-Doom est le successeur de PrBoom+ (pour Proff Boom Plus), un fork du projet PrBoom, lui-même issu du moteur Boom (dérivé de DOSDoom) puis d'une fusion avec LxDoom et LsdlDoom.
• Un fork du source (voir la section "Resources" ci-dessus) le rend compatible avec libretro (pour plus de précision concernant l'application libreto, voir la fiche "Libretro (& RetroArch)"

Ressources et documentations disponibles : voir les fiches "Ressources - Doom 1&2, Heretic, Hexen 1, Strife" et "Freedoom".

Crédit image (lien ci-dessus): Debian


PrBoom + est un port source de Doom développé à partir du projet original PrBoom par Andrey Budko ().

L'objectif du projet est d'étendre le port d'origine avec des fonctionnalités qui me sont nécessaires ou utiles ainsi qu'à tous ceux qui s'intéressent à mon travail.
Il est intéressant de noter que tous les changements que j'ai introduit ne rompent en rien la compatibilité de PrBoom avec les moteurs Doom / Doom2 originaux, et que vous pouvez avoir l'assurance que cela n'arrivera jamais à l'avenir puisque la compatibilité a une valeur aussi importante pour le projet PrBoom que pour moi.



🍥️ Debian:

Clone moderne du jeu classique de tir en vue à la première personne, Doom
PrBoom+ est un portage moderne du source du jeu classique en 3D de tir en vue à la première personne, Doom, publié originellement par id Software en 1993. Il utilise la bibliothèque SDL (Simple DirectMedia Layer) et propose facultativement un rendu avec OpenGL. Il est basé sur PrBoom, MBF et LxDoom, qui sont eux basés sur Boom de TeamTNT, un portage disponible librement de Doom pour DOS.

En plus des caractéristiques de PrBoom, PrBoom+ propose la fréquence de trame non plafonnée, une vitesse de jeu variable, un re-record, une vue quand on marche, en mode poursuite, une apparence pour la souris complète, FOV et autres fonctionnalités sans perte de compatibilité avec le jeu Doom original.

PrBoom+ a besoin de données de jeu pour fonctionner. Des données de jeu libres sont disponibles dans le paquet freedoom. Des données de jeux commerciaux peuvent être empaquetées avec game-data-packager. PrBoom+ prend en charge toutes variétés de Doom, incluant The Ultimate Doom, Doom 2 et Final Doom ainsi que Chex(R) Quest, HACX, FreeDoom Phase 1, FreeDoom Phase 2 et FreeDM.


🌍️ Wikipedia:

DOSDoom et dérivés

DOSDoom est le tout premier portage pour DOS, construit à partir de la source Linux comme expliqué plus haut. Il est la base du développement de Boom, mais également d'autres portages encore actualisés à ce jour comme EDGE, 3DGE (son héritier appelé également Hyper3DGE) et Doom Legacy (sous Windows et Linux).

(...)

Boom et dérivés

Boom est créé par la TeamTNT, par ailleurs développeurs de l'extension officielle Final Doom. Boom élimine des limitations du Doom Engine, et rajoute de nombreuses possibilités comme les tapis roulants, les téléporteurs silencieux, etc. Ce moteur est devenu une référence, au point que la plupart des extensions pour le jeu, ou les autres ports, se définissent comme étant « Boom-compatible » ou non. Par exemple, la version libre alternative de Doom, Freedoom, ne peut normalement fonctionner qu'avec un portage Boom-compatible.

MBF (Marine's Best Friend) est un successeur direct de Boom, qui introduit notamment la possibilité de monstres amicaux (des chiens). Ses successeurs sont SMMU (Smack My Marine Up) et Eternity Engine, ce dernier étant encore actualisé régulièrement.

PrBoom est un autre dérivé de Boom, cherchant un maximum de compatibilité avec le Doom Engine tout en apportant quelques améliorations à Boom, comme l'OpenGL. Il intègre également plusieurs modifications issues de MBF, comme les chiens amis. Son successeur PrBoom+ apporte quelques améliorations supplémentaires : possibilité de regarder vers le haut et le bas, etc.

La version officielle de Doom pour iPhone, Doom Classic, est partiellement basée sur PrBoom.

🚧️ Installation ➜ 🚀️ Launching [fr]

⚙️ Installation à partir du binaire

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

📦️ Installation à partir du paquet Debian/Ubuntu :
• Il(s) est/sont dans les dépôts Debian/Ubuntu, il suffit d'installer le(s) paquet(s).

📦️ Installation (méthode alternative) à partir du binaire au format AppImage :
• Un binaire au format AppImage est disponible. Après l'avoir rendu exécutable (clic droit sous votre gestionnaire de fichier), il pourra être exécuté d'un seul clic sur son livrable.

💡Nota :
• Si vous avez installé au préalable l'utilitaire [AppImageLauncher] (en dépôt Arch/Manjaro, très simple et convivial), celui-ci permettra lors du clic sur un AppImage de l'exécuter ou l'installer dans un répertoire depuis lequel il deviendra visible par vos lanceurs habituels.
[The Linux Experiment] compare les différents formats (Snaps vs Flatpaks vs Appimages) en novembre 2023.



📄️ Installation à partir du source

• 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é.

▸ 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/kraflab/dsda-doom
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/kraflab/dsda-doom

▸ Installation des dépendances (en dépôt) :
• Installez au préalable le(s) paquet(s) suivant(s) : sdl2

▸ Compilation :
• Dans son répertoire racine lancez successivement :
$ cd prboom2
$ 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/ : dsda-doom, dsda-doom.wad, data/rdatawad (optionnel)


🏜️ 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 / dans l'un des répertoires système : [Alt+F2] dsda-doom ou $ dsda-doom
• Sinon, rendez son binaire exécutable (clic droit sous votre gestionnaire de fichier) et cliquez dessus, ou dans son répertoire racine lancez : $ ./dsda-doom

▸ AppImage :
• Si vous l'avez installé à partir d'un paquet AppImage et de l'utilitaire [AppImageLauncher] (en dépôt Arch/Manjaro, très simple et convivial) : [Alt+F2] puis saisissez le nom de l'application.
• Si vous installé le jeu à partir d'un paquet AppImage et ne souhaitez pas utiliser l'application AppImageLauncher : après avoir téléchargé votre fichier AppImage et l'avoir rendu exécutable (clic droit sous votre gestionnaire de fichier), cliquez sur ce livrable.

▸ 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.

🕵️ 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 11 Novembre 2024 sous Manjaro. Par : goupildb. ⏱️ Durée du test : 120 minutes. 🎯️ Objectif : Mise à jour de son fonctionnement/évolution, et prise d'une copie d'écran


🫕️ Installation :

➊ ▸ 🐎️ Moteur
▸ (✔ dsda-doom 0.28.2) Paquet Arch/AUR : FONCTIONNEL.
▸ (✔ PrBoom+ v. 2.5.1.4 & 2.5.1.5.test) Paquet Debian : FONCTIONNEL.
▸ (✔ dsda-doom 0.28.2, PrBoom+ v. 2.5.1.5.test) Source : FONCTIONNEL.
🟢️ Son source se compile facilement et fonctionne bien,
🟢️ Il produit non seulement le binaire dsda-doom, mais aussi dsda-doom.wad - l'équivalent de la version shareware (1er niveau de Doom gratuit), permettant de tester le moteur immédiatement sans télécharger du contenu externe.

➋ ▸ 🫀️ Données externes à assembler
⚪️ L'idéal / le plus pratique pour tester / installer des sets de données (IWAD)/mods est d'utiliser le lanceur "Enyo Launcher" (voir la section "Installation" ci-avant).


🏗️ Réalisation :

‣ 📟️ Interface
🟢️ Une interface de très grande qualité, complète, très soignée, mature, efficace, ergonomique, d'emblée bien paramétrée (évitant de devoir la personnaliser immédiatement), bien organisée,
🟢️ Elle offre notamment un menu spécifique, un écran d'accueil ("OPTIONS") rassemblant ses principaux menus, une pléthore de paramétrages, le plein écran et le fenêtré, un redimensionnement de sa fenêtre par glisser-déposer, le choix du moteur graphique (Software, OpenGL), plusieurs résolutions d'affichage fixes, des performances graphiques modulables pour les configurations matérielles modestes, la pause automatique sur perte de focus, la sauvegarde des réglages, la sauvegarde de la progression (F2/F3), la sauvegarde automatique de la progression (si option "Autosave on level start" sur "Yes"),
🟢️ Pour préserver les compatibilités souhaitées, il dispose d'une option "Default compatibility level" : Doom v1.2, Doom v1.666, Doom/2 v1.9, Ultimate Doom, Final Doom, DosDoom, TasDoom, Boom's Vanilla, Boom v2.01, Boom, LxDoom, MBF, PrBoom 2.033, PrBoom 2.1.x, PrBoom 2.2.x, PrBoom 2.3.x, PrBoom 2.4.0, Latest PrBoom+, MBF21.
💖️ Probablement le moteur le plus complet en terme de personnalisation d'apparence et de gameplay. Ses menus offrent une pléthore de paramétrages possibles.

🟠️ Point(s) faible(s) relevé(s) : il lui manque un meilleur graphisme (peu d'effets graphiques, pas de filtres de type scale2x par exemple, entraînant un rendu minimaliste/pixelisé en particulier pour l'arme du joueur au 1er plan),
⚪️ Globalement le rendu est plutôt bon (en OpenGL), mais d'un niveau très en-deçà des moteurs GZDoom et Zandronum - ce qui était voulu au départ pour préserver la compatibilité, néanmoins rien n'interdirait d'offrir un graphisme équivalent tout en permettant sa désactivation via son option "Default compatibility level" (voir ci-avant).


‣ 🎮️ Contrôles
⚪️ Il/Elle se contrôle au clavier + souris ou au gamepad.
🟢️ Il/Elle bénéficie de contrôles simples, redéfinissables, du support des touches fléchées (important pour les claviers non anglophones),
🟢️ Ce jeu est clairement adapté pour être joué au clavier (pour les déplacements du protagoniste, avec les touches fléchées) + souris (pour les déplacements d'angle de vue et les tirs).

‣ 🎧️ Son
🟢️ Le jeu est accompagné d'effets sonores de qualité, d'une bande son adaptée, dynamique, tout à fait dans le ton,
🟢️ L'interface elle-même est sonorisée (lors des sélections),
🟢️ Il/Elle offre notamment l'interruption sonore automatique sur perte de focus, le réglage spécifique des voies (musique, effets),

‣ 🏞️ Graphismes
🟢️ Un graphisme superbe, pixel art très réussi,
⚪️ Le jeu est en vue à la 1ere personne.

‣ 👤️ Solo
🟢️ Son interface permet notamment le choix de la carte (via le menu OPTIONS➜LEVEL TABLE), le choix de la difficulté, le jeu solo, le choix de l'aspect / du genre du protagoniste,
🟢️ Les IAs sont redoutables. Néanmoins il est possible de les pénaliser pour les adapter au niveau du joueur.

‣ 👥️ Multi-joueur / Développement collaboratif
🟠️ Point(s) faible(s) relevé(s) : il lui manque le support du multi-joueur natif (il faudra passer par un lobby externe),


👾️ Gameplay / Usage / Contenu :

‣ ⛳️ Objectif / Thème
⚪️ C'est un moteur compatible avec Doom 1 et 2, Heretic et Hexen

‣ 🐮️ Spécificités
⚪️ C'est le successeur du moteur PrBoom+ (développement arrêté), mettant l'accent sur les fonctionnalités en préservant la compatibilité.

‣ 🎥️ Scénario / Démarrage du jeu
🟢️ Il/Elle offre une animation automatique avec des exemples de niveaux à l'écran d'accueil,

‣ 🗻️ Difficulté / prise en main de l'utilisateur
🟢️ Il/Elle propose un jeu accessible dès son lancement (via un niveau de jeu suffisamment bas pour permettre l'apprentissage), un jeu non frustrant, tout en permettant aux meilleurs joueurs d'augmenter la difficulté (options) et d'exprimer leurs talents, un niveau de difficulté réglable par paliers (type beginner, easy, medium, hard, extreme), une vitesse de jeu paramétrable, de nombreuses options de gameplay activables et réglables,
⚪️ Les IAs sont très fortes, néanmoins il est possible de les pénaliser pour les adapter au niveau du joueur.


🧪️ Tests effectués :

‣ 🧫️ Conditions du test, objectif(s)
‣ 🏕️ Avec un contenu Shareware : ✔ tested
‣ 🏕️ Avec un contenu Commercial : ✔ tested
‣ 🏕️ Avec un contenu Libre ou Gratuit : ✔ tested
‣ 🏕️ Avec d'autres sets de données : ✔ tested
‣ 👤️ Solo : ✔ tested
‣ 👥️ Multi-joueur : (🧪️not_tested)

‣ 🎲️ Résultat des tests
‣ 🏕️ Avec un contenu Shareware : (⭐⭐⭐)
🟢️ La version shareware est livrée de base - y compris avec le source (excellent !), permettant d'obtenir un jeu immédiat.

‣ 🏕️ Avec un contenu Commercial :

🔍️ Doom 2 : (⭐⭐⭐)
🟢️ Fonctionne bien. RAS.

🔍️ TNT Evolution : (⭐⭐⭐)
🟢️ Fonctionne bien. RAS.

🔍️ Heretic : (⭐⭐⭐)
🟢️ Fonctionne bien. RAS.

🔍️ Hexen : (⭐⭐⭐)
🟢️ Fonctionne bien. RAS.

🔍️ Strife : (🐞️)
🟠️ Ne fonctionne pas.


‣ 🏕️ Avec un contenu Libre ou Gratuit :

🔍️ Freedoom 1 (Doom1-like) : (⭐⭐⭐)
🟢️ Fonctionne bien. RAS.

🔍️ Freedoom 2 (Doom2-like) : (⭐⭐⭐)
🟢️ Fonctionne bien. RAS.

🔍️ Blasphemer (Heretic-like) : (🐞️)
🟠️ Ne fonctionne pas.

🔍️ Chex Quest : (⭐⭐⭐)
🟢️ Fonctionne bien. RAS.


‣ 🏕️ Avec d'autres sets de données :

🔍️ WolfenDOOM: Spear of Destiny + Doom 2 + PrBoom-plus 2.5.14 : (⭐⭐⭐)
une série de scénarios à télécharger sur le site de l'auteur, à jouer en utilisant le wad de 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 + FreeDoom2 + PrBoom-plus 2.5.14 : (⭐⭐)
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.

🔍️ Preacher + Freedoom 2 + DSDA-Doom : (⭐⭐⭐)
🟢️ Excellent ! On est un prêcheur catholique. Une grande salle avec une mitrailleuse et des tas de monstres, du bonheur :)).

🔍️ Eternity 2 + Doom 2 + DSDA-Doom : (⭐⭐⭐)
🟢️ Semble excellent (j'ai juste testé le début). Un graphisme magnifique et une mise en scène hors norme.


🏆️ Impressions :

‣ 🌤️ Axes d'amélioration
• Son rendu graphique est en-deçà de GZDoom et Zandronum.
• Pas de gameplay multi-joueur directement depuis son interface.

‣ 🌞️ J'ai aimé
• Une excellente réalisation : l'interface est claire et bien organisée
• Il supporte bien le gamepad (mais le jeu au gamepad ne présente que peu d'intérêt car trop difficile du fait d'une précision bien moindre qu'au clavier)
• Supporte l'OpenGL (testé), les synthés MIDI (testé fluidsynth notamment : ok), ...
• Supporte la barre de statut des ennemis (testé : j'ai bien aimé) ains ique la minimap transparente (excellent).
• L'un des moteurs les plus complets en terme de paramétrages.


🧭️ Conclusion :

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

🟠️ Il est dommage qu'il ne supporte pas de filtres graphiques plus évolués (il me semble que PrBoom supportait Scale2X) car les graphismes restent pixelisés.
🟠️ Pas de gameplay multi-joueur directement depuis son interface (il faudra faire appel à un client lobby externe).
💖️ Probablement le moteur le plus complet en terme de personnalisation d'apparence et de gameplay
🟢️ DSDA-Doom est un bon moteur qui fait le job pour lequel il a été fait : celui de préserver la compatibilité tout en apportant quelques apports sympas (rendu OpenGL, le support des synthés MIDI, ....).
👏️ ❤️ Un grand bravo et merci (notamment pour la version Linux !) à son/ses auteur(s) !