Quake 1 (with vkQuake engine) - Le Bottin des Jeux Linux

Quake 1 (with vkQuake engine)

🗃️ Specifications

📰 Title: Quake 1 (with vkQuake engine) 🕹️ / 🛠️ Type: Game
🗃️ Genre: Adventure & Action 👁️ Visual: 3D
🏷️ Category: Adventure & Action ➤ FPS ➤ Fantasy & Sci-fi ➤ Quake 1 🏝️ Perspective: First person
🔖 Tags: FPS; Quake 1; Arena Shooter; 3D engine; Multi-platform ⏱️ Pacing: Real Time
🐣️ Approx. start: 2016-06-10 👫️ Played: Single & Multi
🐓️ Latest: 2024-11-09 🚦 Status: 05. Tested & Working (status)
📍️ Version: Latest: 💥️ 1.31.3 / Dev: af020cc ❤️ Like it: 4. 🤗️⭐⭐ (good)
🏛️ License type: 🕊️💰 Libre with Commercial assets 🎀️ Quality: 2. 🏅️⭐⭐⭐⭐ (good)
🏛️ License: Code: GPL-2 / Artwork: Commercial ✨️ (temporary):
🐛️ Created: 2016-12-13 🐜️ Updated: 2024-11-09

📦️ Deliverables

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

🚦 Entry status

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

📖️ Summary

📜️[en]: Quake 1 is a FPS (1996) in which the player is the ultimate survivor of a commando sent to a military base where researchers have developed a teleportation prototype that has been corrupted by Quake, a demon who tries to use it to invade the Earth with his hordes of monsters. VkQuake is a libre, multi-platform QuakeSpasm engine running on the Vulkan API, offering much better performance, higher frequencies than 72 Hz without breaking physics, multi-threaded loading, support for 2021 re-release data, underwater effect for dives, dynamic shadows, improved colour accuracy, 8-bit colour emulation, scaling, anti-aliasing, anisotropic filtering, scriptable particles, custom HUDs, and a menu to make loading mods easier. It is also designed as a port, as faithful to the original as possible, compatible with all mods that run on QuakeSpasm like In The Shadows or Arcane Dimensions. 📜️[fr]: Quake 1 est un FPS (1996) dans lequel le joueur est l'ultime survivant d'un commando envoyé dans une base militaire où des chercheurs ont développés un prototype de téléportation qui a été corrompu par Quake, un démon qui tente de l'utiliser pour envahir la Terre de ses hordes de monstres. VkQuake est un moteur QuakeSpasm libre et multi-plateforme fonctionnant avec l'API Vulkan, et offrant notamment de bien meilleures performances, des fréquences supérieures à 72 Hz sans casser la physique, un chargement multithreads, le support des données de la réédition 2021, l'effet sous-marin pour les plongées, les ombres dynamiques, une meilleure précision des couleurs, l'émulation des couleurs 8 bits, la mise à l'échelle, l'anticrénelage, le filtrage anisotropique, les particules scriptables, les HUD personnalisés, un menu pour faciliter le chargement des mods. Il est également conçu comme un port, aussi fidèle à l'original que possible, compatible avec tous les mods qui fonctionnent sur QuakeSpasm comme In The Shadows ou Arcane Dimensions.

🎥️ Videos


🕯️ How To: (1.20.3/202212), (202107),


🎲️ Gameplay:
• (202303), (202004),

• (202108), (201608),


🎮️ Showcase: Quake: Ray Traced (202211), Alkaline (202106), 💥️ Dwell (202302),


🐧 Linux plays: Sterophonick (202104), Benjamin L (202009),

🕸️ Links

🏡️ Website & videos
[Homepage] [Dev site] [Features/About] [Screenshots] [Videos t(202xxx) gd(202xxx) gu(202xxx) r(202xxx) lp(202104) lp(202009) ht(1.20.3/202212) ht(202107) d(20210d) g(202004) g(202108) g(201608) g(201608) g(201608) g(202109) 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) g(202xxx)] [WIKI] [FAQ] [RSS] [Changelog 1 2 3]

💰 Commercial
• (See below)

🍩️ Resources

🔘️ Forks/Other similar projects
• vkQuake-rt (Quake: Ray Traced, a path tracing renderer): [Homepage] [Dev site] 🎬️ g(202211)

🔘️ Required for playing Quake 1 (PAK0.PAK)
Commercial - Windows version (Quake 1 [fr] [en] [de], to get the PAK0.PAK file (& possibly PAK1.PAK)): 💰 [IsThereAnyDeal] [Steam] [GOG] [Gamesplanet] 🎬️ t(202108) fmt(202404) gu(202311) hg(201111) r(201310) g(201606) g(201601) g(202208) g(201208)
Free alternative - Quake 1 (Shareware Episode): 🎁 [Homepage] [Dev site] 🎬️ g(202xxx)
Libre alternative - LibreQuake (A libre artistic dataset allowing to play the equivalent of Quake 1, to get the PAK0.PAK & PAK1.PAK files, GPL & Modified BSD): 🕊️ [Homepage] [Dev site] 🎬️ g(202303) g(202309)
• 🗿️See also our entry: Resources - Quake 1

🔘️ Games
• Alkaline 1.2 (Very large sci-fi base themed mod + map pack inspired by Rubicon 2, free): [Homepage] [Dev site] 🎬️ g(202303) g(202303)
• The Immortal Lock (You are Ranger, an operator of the UTJR stationed at a secret, multinational research facility in Finland. You are being deployed to investigate the disappearance of a survey team that went missing beyond the slipgate...): [Homepage] [Dev site] 🎬️ g(1.31.1/202408)
• Dwell (a 4-episode mod project that aims to deliver high-quality original levels along with brand new weapons, monsters and more in a cohesive, overarching campaign): [Homepage] [Dev site] 🎬️ t(ep1/202009) t(ep2/202302) g(202107) g(202302)

🛠️ Technical informations
[PCGamingWiki] [MobyGames] [QuakeWIKI.org]

🦣️ Social
Devs (vkQuake Team [fr] [en]): [Site 1 2] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
The Project: [Blog] [Chat] [Forums] [mastodon] [PeerTube] [YouTube] [PressKit] [reddit] [Discord]

🐝️ Related
[Wikipedia (Quake I) [fr] [en] [de]]
[Wikipedia (Vulkan) [fr] [en] [de]]
[HOLaRSE [de]]

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

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

🕊️ Source of this Entry: [phoronix (20161206)]

🦣️ Social Networking Update (on mastodon)

🕹️ Title: Quake 1 (with vkQuake engine)
🦊️ What's: A libre QuakeSpasm engine running on Vulkan
🏡️ -
🐣️ https://github.com/Novum/vkQuake
🔖 #LinuxGaming #ShareYourGames #FPS #ArenaShooter #Quake
📦️ #LibreGameEngine #CommercialAssets #Arch #RPM #AppIm #Snap
📖 Our entry: (homeless)

🥁️ Update: 1.31.3
⚗️ Hotfix 🐞️
📌️ Changes: https://github.com/Novum/vkQuake/releases
🦣️ From: https://mastodon.social/@holarse/113453893401162140
🛜️ https://github.com/Novum/vkQuake/releases.atom

🕯️https://www.youtube.com/embed/8WX_v6vPXKc
🕯️https://www.youtube.com/embed/qfSrvDL2GDY
🎲️ https://www.youtube.com/embed/SJ17z4pxlKE
🐧https://www.youtube.com/embed/RJ1LsyxkLXU

🕶️ The FPS Quake 1 running with the vkQuake engine, the screenshot showing the player armed with a gun in a dark room

📚️ Quake 1 is a FPS (1996) in which the player is the ultimate survivor of a commando sent to a military base where researchers have developed a teleportation prototype that has been corrupted by Quake, a demon who tries to use it to invade the Earth with his hordes of monsters. VkQuake is a libre, multi-platform QuakeSpasm engine running on the Vulkan API, offering much better performance, higher frequencies than 72 Hz without breaking physics, multi-threaded loading, support for 2021 re-release data, underwater effect for dives, dynamic shadows, improved colour accuracy, 8-bit colour emulation, scaling, anti-aliasing, anisotropic filtering, scriptable particles, custom HUDs, and a menu to make loading mods easier. It is also designed as a port, as faithful to the original as possible, compatible with all mods that run on QuakeSpasm like In The Shadows or Arcane Dimensions.

📕 Description [en]

📜️ "A libre QuakeSpasm engine running on Vulkan" 📜️ .

vkQuake is a port of id Software's Quake using Vulkan instead of OpenGL for rendering. It is based on the popular QuakeSpasm and QuakeSpasm-Spiked ports and runs all mods compatible with QuakeSpasm like Arcane Dimensions.

Improvements over QuakeSpasm include:

✅️ Much better performance with multithreaded rendering and loading
✅️ The game can run at higher frame rates than 72Hz without breaking physics
✅️ A software Quake like underwater effect
✅️ Support for remastered models if using data from the 2021 rerelease
✅️ Dynamic shadows (requires a GPU with ray tracing support)
✅️ Better color precision reducing banding in dark areas
✅️ Native support for anti aliasing and anisotropic filtering
✅️ 8-bit color emulation
✅️ Scaling for pixelated look
✅️ Mods menu for easy mod loading
✅️ More modern protocol to avoid certain movement issues (from QSS)
✅️ Support for custom mod HUDs (from QSS)
✅️ Support for scriptable particles (from QSS)

📕 Description [fr]

Un moteur QuakeSpasm fonctionnant avec l'API Vulkan, par la vkQuake Team.

Quake 1 est un FPS (1996) dans lequel le joueur est l'ultime survivant d'un commando envoyé dans une base militaire où des chercheurs ont développés un prototype de téléportation qui a été corrompu par Quake, un démon qui tente de l'utiliser pour envahir la Terre de ses hordes de monstres. VkQuake est un moteur QuakeSpasm libre et multi-plateforme fonctionnant avec l'API Vulkan, et offrant notamment de bien meilleures performances, des fréquences supérieures à 72 Hz sans casser la physique, un chargement multithreads, le support des données de la réédition 2021, l'effet sous-marin pour les plongées, les ombres dynamiques, une meilleure précision des couleurs, l'émulation des couleurs 8 bits, la mise à l'échelle, l'anticrénelage, le filtrage anisotropique, les particules scriptables, les HUD personnalisés, un menu pour faciliter le chargement des mods. Il est également conçu comme un port, aussi fidèle à l'original que possible, compatible avec tous les mods qui fonctionnent sur QuakeSpasm comme In The Shadows ou Arcane Dimensions.

Crédit image (lien ci-dessus): Mod DB (In The Shadows)


vkQuake est un portage de Quake d'id Software utilisant Vulkan au lieu d'OpenGL pour le rendu. Il est basé sur les portages populaires QuakeSpasm et QuakeSpasm-Spiked et fait tourner tous les mods compatibles avec QuakeSpasm comme Arcane Dimensions.

Les améliorations par rapport à QuakeSpasm incluent :

✅️ De bien meilleures performances avec un rendu et un chargement multithreads
✅️ Le jeu peut tourner à des fréquences d'images supérieures à 72 Hz sans casser la physique.
✅️ Un effet sous-marin semblable à celui de Quake
✅️ Prise en charge des modèles remastérisés si l'on utilise les données de la réédition de 2021
✅️ Ombres dynamiques (nécessite un GPU supportant le ray tracing)
✅️ Meilleure précision des couleurs réduisant les bandes dans les zones sombres
✅️ Prise en charge native de l'anticrénelage et du filtrage anisotropique
✅️ Émulation des couleurs 8 bits
✅️ Mise à l'échelle pour l'aspect pixellisé
✅️ Menu Mods pour faciliter le chargement des mods
✅️ Protocole plus moderne pour éviter certains problèmes de mouvement (de QSS)
✅️ Prise en charge des HUD personnalisés (de QSS)
✅️ Support pour les particules scriptables (de QSS)

🚧️ Installation ➜ 🚀️ Launching [fr]

☝️ Contraintes: Pour jouer à ce jeu vous devez disposer des données originales du jeu.
💡 Nota : Ce moteur est compatible avec la version Shareware du jeu.


⚙️ 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 (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 architecture (32/64-bits), la compilation du source est tout indiquée, voir un passage obligé.

▸ Installation des dépendances (en dépôt) :
• Installez au préalable les paquets suivants :
⚬ Debian/Ubuntu : git make gcc libsdl2-dev libvulkan-dev libvorbis-dev libmad0-dev

▸ 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/Novum/vkQuake
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/Novum/vkQuake

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


🏕️ Installation du contenu / des données :

• Données : Ce jeu requiert l'installation de données non livrées avec le moteur du fait d'une licence incompatible ou tout simplement pour lui permettre d'utiliser différents sets de données.

▸ Récupération d'un pack de données de démo :
• Téléchargez la version shareware des données (voir la section "Resources" ci-dessus).
• Décompressez le fichier quake106.zip , qui lui-même contient un 2nd fichier compressé resource.1 sur lequel il suffit de cliquer pour obtenir le répertoire ID1/ et surtout son contenu - le fichier "PAK0.PAK".

▸ Préparation des données (renommage en minuscules) :
• Si le nom du/des fichier(s) de données est en caractères majuscules, renommez-le(s) en minuscules (exemple "FICHIER.XXX" en "fichier.xxx").

▸ Assemblage du moteur et des données :
• Si le livrable au format AppImage : dans le répertoire où se trouve le binaire AppImage (pensez à déplacer les données si vous déplacez ce livrable), créez un répertoire id1/ et copiez-y votre/vos fichier(s) "pak0.pak" et "pak1.pak".



🚀️ LANCEMENT DU JEU

▸ Classique :
• Si vous l'avez installé à partir d'un paquet / dans l'un des répertoires système : [Alt+F2] vkquake ou $ vkquake
• Sinon, rendez son binaire exécutable (clic droit sous votre gestionnaire de fichier) et cliquez dessus, ou dans son répertoire racine lancez : $ ./vkquake

🕵️ Test [fr]

📜️ Préambule :
⚬ 1ere édition : le 6 Juin 2021 sous Debian. Par : goupildb. ⏱️ Durée du test : 10 minutes. 🎯️ Objectif : Initialisation de l'entrée, tests et premières impressions.
⚬ Mise à jour : le 29 août 2024 sous Manjaro. Par : goupildb. ⏱️ Durée du test : 20 minutes. 🎯️ Objectif : Mise à jour de son fonctionnement/évolution, et prise d'une copie d'écran


⚪️ J'ai remis aux goûts du jour ma notice d'installation et ai testé le jeu (voir la copie d'écran).

💻️ PC specs :
Debian Testing 64-bit
CPU : AMD Ryzen 7 2700X (8 coeurs)
Carte mère : MSI B450 GAMING PRO CARBON AC (RVB)
Carte graphique : GeForce RTX 2070
Écrans : 2 écrans de 3440x1440 pixels
Clavier : Roccat Vulcan (RVB)
Souris : G-Lab Kult-Iridium (RVB)
RAM : 32Go
Joystick : Logitech Rumblepad (2 pads analogiques, un pad numérique, et retour de force).
Noyau : Linux 5.6.0-1-amd64 x86_64
Driver graphique : nvidia v.440.82 (version propriétaire)



🫕️ Installation :
▸ (✔ v. 1.05.3) Source : FONCTIONNEL.
▸ (✔ v. 1.31.1) Paquet AppImage : FONCTIONNEL.
▸ (🧪️not_tested) Paquet Arch/AUR : NON TESTE.

➊ ▸ 🐎️ Moteur
🟢️ Son source se compile bien, et les dépendances à installer sont peu importantes.
➋ ▸ 🫀️ Données externes à assembler
🟢️ L'absence de livraison des données avec le source requiert quelques opérations complémentaires (téléchargement du jeu original, récupération du fichier des données, et copie dans le répertoire du binaire), néanmoins l'opération reste simple.


👾️ Gameplay / Usage / Contenu :

‣ ⛳️ Objectif / Thème
⚪️ C'est un moteur compatible avec Quake 1, aussi fidèle à l'original que possible. Quake 1 est un FPS (1996) dans lequel le joueur est l'ultime survivant d'un commando envoyé dans une base militaire où des chercheurs ont développés un prototype de téléportation qui a été corrompu par Quake, un démon qui tente de l'utiliser pour envahir la Terre de ses hordes de monstres.

‣ 🐮️ Spécificités
⚪️ Il est dérivé de QuakeSpasm (et compatible avec ses mods), un moteur Quake 1 amélioré (prise en charge des processeurs 64 bits, de la lecture de musique personnalisée, de quelques raffinements graphiques, et de nombreuses corrections de bogues).
⚪️ vkQuake apporte le support de Vulkan et encore de nouvelles améliorations : meilleures performances, améliorations graphiques (fréquences d'images supérieures, anti-crénelage, filtrage anisotropique), corrections de bugs, ...


🧪️ Tests effectués :

‣ 🧫️ Conditions du test :
⚪️ Mon test s'est borné à la version Shareware. Elle permet juste de démarrer le moteur (il n'y a que 4 ou 5 salles à explorer et aucun adversaire) et de tester les commandes de base (c'est le but, sinon personne n'achète le jeu ;).

‣ 🎲️ Résultat des tests :
🟠️ Au démarrage mon gamepad fait dériver la vue vers le sol, me contraignant à le désactiver dans les paramètres : probablement un souci avec la bibliothèque SDL (mais il fonctionne bien avec d'autres jeux en SDL).
🟠️ Bien que Vulkan soit activé et que j'ai sélectionné tous les paramètres graphiques, je ne trouve pas le graphisme extraordinaire.
⚪️ D'un autre côté je suis certainement un peu trop habitué aux mods de Doom sous GZDoom :)).
⚪️ Peut-être qu'avec le dernier driver NVIDIA (je ne sais pas si cette version - qui date un peu, supporte correctement Vulcan), une version complète de Quake et 1 ou 2 bons mods l'expérience serait toute autre.


🧭️ Conclusion :

🕵️ Impression globale : 👍️
❤️ Like it: 🤗️⭐⭐ (good)
🎀️ Quality: 🏅️⭐⭐⭐⭐ (good)

🟢️ Quoi qu'il en soit, le moteur fonctionne bien à présent.
👏️ ❤️ Un grand bravo et merci (notamment pour la version Linux !) à son/ses auteur(s) !