RigelEngine
RigelEngine est une réimplémentation moderne de Duke Nukem II, le célèbre jeu de plateforme MS-DOS de 1993. Développé en C++ depuis zéro via l’ingénierie inverse du binaire original, cet outil fonctionne comme un remplaçant direct de l’exécutable DOS, en exploitant les fichiers de données du jeu pour une expérience fidèle. Il s’adresse aux utilisateurs macOS (notamment sur architectures récentes) et propose des améliorations natives comme un affichage en écran large, un défilement fluide et un contrôleur optimisé.
Pour fonctionner, RigelEngine nécessite les fichiers principaux de Duke Nukem II (dont NUKEM2.CMP et les fichiers F1 à F5 pour les séquences d’intro). Compatible avec les versions shareware ou enregistrées (y compris Steam/Gog), il importe automatiquement les sauvegardes et paramètres existants. Les exigences matérielles sont légères : une carte graphique OpenGL (Nvidia/AMD post-2007 ou Intel post-2011) et moins de 64 Mo de RAM suffisent. Le projet reste en développement actif, avec un suivi communautaire sur Discord.
Dernière mise à jour :
Plateformes
Architecture
Mac OS X - macOS
64 bits
Téléchargement et liens
Historique des versions
v0.9.1
-
Correction critique : Résolution d’un crash systématique survenant pendant le jeu, notamment observé dans le niveau 1 de l’épisode 2 (risque potentiellement étendu à d’autres niveaux).
-
Correction mineure : Correction d’un bug permettant de tirer à travers des murs destructibles de 4 tuiles de large avec le tir standard.
(Aucune mention spécifique à macOS dans ce changelog, sauf recommandation externe pour une build universelle Apple Silicon via un tiers.)
Changelog complet
v0.9.0
-
Nouveauté majeure : Ajout d’un mode "Classic" reproduisant fidèlement les bugs, glitches et quirks du jeu original (hors bugs bloquants), avec suppression des fonctionnalités modernes comme le widescreen ou le smooth motion.
-
Améliorations de compatibilité :
- Intégration complète de la démo de gameplay (affichée en mode attract ou après 30 secondes d’attente dans le menu).
- Correction de dérives mineures (palette de couleurs, animations, comportements d’ennemis comme le watchbot, le wall walker, ou les créatures vertes/lizards).
-
Corrections critiques :
- Crash connu dans le niveau 1 de l’épisode 2 (à éviter en attendant la version 0.9.1).
- Problèmes de gestion des chemins Unicode sous Windows (sauvegardes, mods, captures d’écran) désormais résolus.
-
MacOS (mention indirecte) :
- Aucun build officiel pour macOS dans cette version (le projet recommande un build tiers universel pour Intel/ARM, signé et notarisé, disponible sur macsourceports.com).
- Pas de support natif pour Apple Silicon (M1/M2/M3) ou macOS minimum spécifié dans cette release.
Changelog complet
v0.8.5
-
Nouveauté majeure : Intégration d’un gestionnaire de mods permettant d’organiser les mods par dossiers et de les activer/désactiver directement depuis le menu des options.
-
Améliorations graphiques :
- Ajout de styles de HUD "remixés" pour le mode écran large (créés par des contributeurs externes).
- Extension du HUD classique en widescreen pour couvrir toute la largeur de l’écran.
- Ajout de filtres d’upscaling supplémentaires (Sharp bilinear, scaling pixel-perfect entier).
-
Corrections critiques :
- Résolution d’un bug de collision (possibilité de marcher à travers des murs dans des niveaux personnalisés).
- Correction d’un problème de visibilité du HUD en mode widescreen (le gameplay ne dépasse plus le cadre droit du HUD en fallback classique).
-
Améliorations utilisateur :
- Ajout d’un fichier de log dans le répertoire utilisateur pour le débogage.
- Explications des contrôles manette directement dans le menu des options.
- Affichage du niveau/épisode/difficulté actuel dans le menu principal (accessible via manette).
-
Note importante :
- Modification des contrôles manette : Les configurations ont été légèrement ajustées (voir les détails dans le changelog).
- Recommandation pour macOS : Un build universel (Intel/ARM64), signé et notarisé est disponible via macsourceports.com (à privilégier pour les Mac Apple Silicon).
Changelog complet
v0.8.4
-
Améliorations majeures du mode de mouvement fluide :
- Mouvements dynamiques des éléments de niveau (rochers, portes, etc.) désormais fluides et sans saccades.
- Correction des artefacts visuels (jittering) liés à l’arme marteau et à la griffe préhenseuse.
-
Améliorations pour les moddeurs :
- Possibilité de remplacer le fichier
STATUS.MNIpar une image PNG (résolution originale ou supérieure) pour modifier les polices et éléments UI (y compris la HUD). - Prise en charge des remplacements haute résolution pour les acteurs utilisés dans la HUD.
- Possibilité de remplacer le fichier
-
Corrections critiques en mode widescreen :
- Zone à gauche de la HUD désormais bloquée pour éviter l’affichage de parties hors limites du niveau (remplace une tentative précédente de correction par un décalage de caméra).
- Correction du décalage excessif de la caméra vers le bas dans les puits sans fond.
- Affichage correct des plateformes critiques en bas des niveaux (ex. : plateformes entre des bassins de lave dans E3L1).
-
Améliorations techniques et correctifs visuels :
- Remplacement du décodeur ADPCM par une implémentation fidèle à l’algorithme du firmware SoundBlaster (meilleure qualité des effets sonores).
- Correction des artefacts graphiques sur les appareils GL ES (Raspberry Pi, Odroid Go) : pixelisation excessive des arrière-plans et lignes blanches lors des effets de dégâts.
- Effet de fondu réactivé pour le téléporteur.
- Positionnement corrigé des boîtes de dialogue (confirmation de sortie, pause) en mode widescreen.
- Correction du rendu des arrière-plans haute résolution lors du défilement vertical automatique.
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.8.3
-
Nouveauté majeure en son/musique : Ajout de l’émulateur Nuked OPL3 (alternative à DBOPL) pour une meilleure précision sonore (mais plus gourmand en CPU), sélectionnable dans les options sonores.
-
Améliorations audio :
- Meilleure décodage ADPCM pour les effets sonores numériques (fichiers
.SB_nn.MNIen format VOC), aligné sur l’émulation SoundBlaster de DOSBox. - Exécution native de l’émulateur AdLib à 49716 Hz pour une qualité sonore légèrement améliorée.
- Meilleure décodage ADPCM pour les effets sonores numériques (fichiers
-
Corrections critiques :
- Suppression d’un soft-lock lors de la destruction simultanée d’un aspirateur de plafond et de Duke Nukem.
- Animation de mort corrigée (plus de blocage en rotation après un airlock et respawn en checkpoint).
- Réactivité restaurée pour les menus (intro, crédits en mode attract, etc.) : les touches (hors ESC) fonctionnent désormais correctement.
-
Optimisation visuelle :
- Correction des artefacts graphiques (lignes clignotantes entre tuiles) avec les graphismes haute résolution.
- Affichage cohérent des arrière-plans haute résolution (plus de dégradation en basse résolution sous certaines conditions).
- Réduction des zones de la HUD coupées sur les bords droits à certaines résolutions.
(Aucune mention spécifique à macOS dans ce changelog.)
Changelog complet
v0.8.2
-
Nouveauté majeure :
- Ajout d’un mode de défilement et mouvement fluide (60 FPS), permettant une interpolation des mouvements de la caméra et des objets pendant le rendu, bien que le cœur du jeu reste limité à 15 FPS (fonctionnalité en développement, avec des known issues documentées).
-
Corrections critiques :
- Correction du bug "wall dance" (permet à Duke de traverser les murs via une séquence de mouvements).
- Correction des araignées qui ne s’accrochaient pas toujours à Duke au contact.
- Correction des objets coincés dans les plafonds après un tir dans une boîte cachée derrière un rocher (ex. : Duke Nukem II).
- Correction de l’animation manquante pour la prise d’objets "Computer merchandise".
-
Fonctionnalités utilisateur :
- Intégration d’une prise de screenshot (touche F12), sauvegardée en PNG dans le dossier du jeu ou le profil utilisateur si le premier est non-écritable.
- Possibilité de sauter l’écran de bonus après un niveau (via Entrée/Esc ou boutons A/B de la manette).
- Option pour désactiver l’intro au démarrage (via l’onglet Enhancements ou l’argument
-sen ligne de commande).
-
Améliorations techniques :
- Affichage des zones hors limites en noir en mode widescreen (au lieu du fond de jeu).
- Support des arrière-plans modifiés plus larges que l’art original, sans distorsion.
- Sauvegarde/réinitialisation de la position de défilement automatique des backgrounds en cas de quick save/load.
- Tolérance aux fichiers manquants des intros vidéo (
NUKEM2.F1,.F2, etc.) : le jeu les skippe au lieu de planter. - Physique des objets plus fidèle à l’original (ex. : chute des items).
Note : Aucune mention spécifique à macOS, Apple Silicon ou builds .dmg dans ce changelog.
Changelog complet
v0.8.1
- Correction majeure d’un bug introduit dans la version précédente : les tourelles laser ne sont plus détruites par les armes standard de Duke Nukem 3D après une charge de sauvegarde rapide (quick save), rétablissant le comportement attendu.
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.8.0
-
Prise en charge native de macOS et Linux : premières versions binaires précompilées officielles pour ces plateformes, incluant un icône pour le lanceur.
-
Améliorations majeures pour les joueurs sur macOS :
- Support natif des écrans haute résolution (Retina) avec une meilleure netteté.
- Meilleure gestion des manettes (plusieurs types et multiples périphériques pris en charge, avec une option "Quick Save" accessible via le menu de la manette).
-
Nouveautés techniques et fonctionnelles :
- Modding étendu : remplacement des sprites, tilesets, arrière-plans, effets sonores et musiques par des assets en formats modernes (ex. PNG, MP3).
- Options sonores élargies : choix entre AdLib, SoundBlaster, ou combinaison des deux (comme dans le jeu original).
- Filtrage bilinéaire optionnel pour l’upscaling (si aucun graphisme haute résolution n’est utilisé).
- Options supplémentaires : désactivation des effets de flash à l’écran, onglet "À propos" dans les paramètres (version + crédits).
-
Corrections critiques :
- Suppression des artefacts visuels en mode large-screen (ex. sprites non affichés en bas à gauche de l’écran).
- Correction des animations des araignées et des bombes (ex. petites bombes ne devraient plus infliger de dégâts au contact).
- Fix des problèmes de chargement rapide (ex. fond incorrect après un quickload dans L1, santé du boss de l’épisode 3 désormais affichée en pourcentage).
-
Stabilité et UX :
- Messages d’erreur clairs lors de l’initialisation (ex. manque de support OpenGL).
- Mode fenêtre/plein écran accessible pour la version OpenGL ES (sur environnements desktop comme X11/Wayland).
- Layout des menus optimisé (alignement cohérent des options).
Changelog complet
v0.7.1-beta
-
Nouveautés majeures :
- Ajout des codes cheat originaux du jeu (disponibles dans la version enregistrée).
-
Améliorations ciblées :
- Performance optimisée pour Raspberry Pi (jusqu’à 60 FPS en 1080p sur Pi Zero/3, résolution corrigée pour Pi 1/2) et suppression d’artefacts visuels (effet "sous l’eau").
- Correction des interactions clavier/souris dans le menu (souris non réactive auparavant).
-
Corrections critiques :
- Gel du jeu évité en cas de pression accidentelle sur la barre d’espace au lieu d’Entrée dans le menu des sauvegardes.
- Gestion corrigée des objets "rapid fire" et "cloak" (plus de doublons en inventaire).
- Positionnement et effets (secousses d’écran) appliqués correctement à la barre de santé/boss.
-
Expérience utilisateur :
- Écran de chargement ajouté au démarrage (utile pour les appareils lents comme le Raspberry Pi).
Changelog complet
v0.7.0-beta
-
Nouveautés majeures :
- Ajout d’un onglet "Keyboard controls" dans les options pour personnaliser les rebindings clavier (import des configurations originales au premier lancement).
- Intégration du teaser de Duke Nukem 3D (écran post-épisode 4) et du message de "hype" au premier lancement.
- Activation automatique de la séquence d’intro/démo après inactivité prolongée dans le menu principal.
-
Améliorations fonctionnelles :
- Sauvegarde/Charge rapide (F5/F7 ou bouton Back sur gamepad) avec stockage temporaire en mémoire (perdu à la fin de niveau ou à la fermeture, sauf option future permanente).
- Correction de la navigation menu : appuyer sur ESC (ou bouton B sur gamepad) dans l’écran de sélection de sauvegarde revient au menu des slots, comme dans le jeu original.
-
Corrections critiques :
- Fix de la position incorrecte du vaisseau de Duke (affiché derrière les objets comme les caisses).
- Correction des sauts de temps sporadiques (problème signalé sur certaines plateformes comme l’Odroid Go Advance).
- Précision des trajectoires de roquettes (position de fumée et angle de tir depuis les tuyaux).
Changelog complet
v0.6.2-beta
-
Amélioration majeure de la compatibilité gamepad : Navigation complète des menus (options, score, pause) et gestion automatique des sauvegardes (nom généré via épisode/niveau/difficulté) sans clavier/mouse, rendant l’usage sur périphériques sans écran tactile (ex. Odroid Go Advance) fonctionnel.
-
Prise en charge expérimentale du WebAssembly : Possibilité de lancer l’émulateur dans un navigateur (via WebAssembly), avec des corrections pour les formats audio non supportés (ex. PCM 16-bit sur certains navigateurs).
-
Corrections audio et UX :
- Gestion plus robuste des formats audio (compatibilité avec les périphériques limités).
- Navigation du menu d’options accessible au clavier (précédemment réservée aux gamepads).
-
Bugs corrigés :
- Réinitialisation du thème musical après la mort dans un niveau de boss.
- Désactivation du hint machine uniquement si l’icône de l’indice est obtenue (correction d’un faux positif).
Changelog complet
v0.6.1-beta
-
Nouveauté majeure :
- Ajout de la possibilité de définir la difficulté d’un niveau spécifique via la ligne de commande (exemple :
-l L2 --difficulty easy).
- Ajout de la possibilité de définir la difficulté d’un niveau spécifique via la ligne de commande (exemple :
-
Améliorations OpenGL :
- Réduction de la version minimale requise pour GLSL (passage de 150 à 130), élargissant la compatibilité aux GPU supportant OpenGL 3.0 mais pas GLSL 150.
-
Corrections critiques :
- Correction d’un crash sous Linux avec le rendu logiciel Mesa.
- Restauration du support OpenGL ES (corrigé, mais non optimisé pour Raspberry Pi).
- Correction de la position de la caméra après un respawn.
- Réparation d’une animation manquante pour la marche d’un personnage (dinde).
(Aucune modification spécifique à macOS ou Apple Silicon mentionnée dans ce changelog.)
Changelog complet
v0.6.0-beta
-
Fonctionnalité complète : Le jeu est désormais jouable en intégralité (versions shareware et enregistrées) sans problème connu, marquant une finalisation des fonctionnalités liées au gameplay.
-
Améliorations majeures pour les manettes :
- Détection des cartes à champ de force, serrures de porte et téléporteurs via le stick analogique (auparavant réservé au D-Pad).
- Sensibilité ajustée du stick analogique pour le pilotage du vaisseau de Duke.
- Navigation dans les menus possible avec le stick analogique (en plus du D-Pad).
-
Corrections critiques :
- Empêchement d’un crash lié à un aspirateur de plafond tentant d’absorber Duke alors qu’il est déjà mort.
- Régularisation du comportement des ventilateurs soufflants (accès corrigé à certaines zones, ex. : O7).
- Attachement fiabilisé de Duke aux tuyaux d’escalade dans certaines situations (O1).
-
Compatibilité OpenGL ES : Correction de l’absence de compilation du shader des effets d’eau, rendant le mode OpenGL ES (ex. : Raspberry Pi) jouable.
-
Bugs mineurs :
- Suppression du cloak (camouflage) de Duke lors d’une mort en étant cloqué.
- Red birds (oiseaux rouges) ne restent plus bloqués après atterrissage.
Changelog complet
v0.5.3-beta
-
Améliorations majeures pour la prise en charge des manettes de jeu :
- Détection automatique des manettes branchées ou activées pendant le jeu.
- Mouvement des sticks analogiques plus stable (notamment pour les manettes PS4), avec réduction des mouvements involontaires en haut/bas.
- Utilisation des déclencheurs (LT/RT) pour sauter/tirer en plus des boutons LB/RB.
-
Corrections critiques de gameplay :
- Fonctionnement corrigé des bandes transporteuses en pente ascendante (niveau N7).
- Effet de camouflage (cloak) désormais actif même après ingestion par un serpent ou un aspirateur de plafond.
- Tir ennemi disparaît correctement quand le joueur est camouflé (au lieu de traverser).
- Ajout de l’accélération et des effets d’explosion aux tirs de roquettes ennemies.
- Gravité et interactions avec les bandes transporteuses restaurées pour les fûts de déchets nucléaires.
-
Stabilité et cohérence physique :
- Correction des incohérences de mouvement sur les tuyaux (niveau O1).
- Limitation du spawn des hover bots à 30 unités (au lieu d’un spawn infini).
- Bonifications 2 et 7 correctement attribuées même après un décès avant un checkpoint.
- Conteneurs Watchbot ne disparaissent plus si leur porteur est détruit après les avoir libérés.
-
Améliorations techniques mineures :
- Désactivation par défaut des fonctionnalités de débogage (réactivables via
-den ligne de commande).
- Désactivation par défaut des fonctionnalités de débogage (réactivables via
Changelog complet
v0.5.2-beta
-
Nouveauté majeure :
- Ajout d’une interface graphique intuitive pour sélectionner et configurer une installation de Duke Nukem II (bibliothèques de données) lors de la première exécution ou via le menu des options, avec enregistrement automatique du chemin dans le profil utilisateur.
-
Corrections critiques :
- Correction des défaillances de détection de collision pour les tirs du joueur (ex. : tir de lance-roquettes contre les murs inflammables dans M5).
- Correction des collisions avec la géométrie dynamique (résout des problèmes dans N5).
- Ajout des effets sonores manquants pour les roquettes du boss de l’épisode 3.
- Suppression des explosions visuelles parasites dans N4 et N8.
-
Bug connu non corrigé :
- Les bandes transporteuses restent défectueuses dans le niveau N7 (7e niveau de l’épisode 3), mais cette régression est déjà résolue dans la branche
master.
- Les bandes transporteuses restent défectueuses dans le niveau N7 (7e niveau de l’épisode 3), mais cette régression est déjà résolue dans la branche
Changelog complet
v0.5.1-beta
-
Prise en charge complète des versions enregistrées (mais avec des bugs résiduels avant une parité totale avec l’original) et ajout de mécaniques majeures :
- Boss ennemis pour les épisodes 2, 3 et 4.
- Fonctionnalité du flying ship de Duke et mécanisme de "Airlock death" (mort par aspiration dans l’espace).
-
Corrections critiques :
- Barre de santé des boss qui réapparaît après un redémarrage de niveau (lié à une mort du joueur).
- Décalage vertical corrigé dans les arrière-plans en parallax.
- Redémarrage du niveau activé après une chute dans un puits sans fond pendant l’animation de mort.
- Résolution d’un bug bloquant dans un tuyau d’escalade de l’épisode 4.
- Effet d’impact manquant pour les débris du réacteur (ajouté).
-
Nouveauté majeure pour l’expérience utilisateur :
- Support natif des manettes de jeu (Xbox, PS4, etc.), grâce à une contribution externe.
-
Note technique obligatoire :
- Erreur de DLL manquante : installation requise du Visual Studio 2019 Redistributable (x64) pour éviter les problèmes de lancement.
- UI d’installation absente : pour localiser les données de Duke Nukem II, copier le binaire (
RigelEngine.exe+ DLLs) dans le dossier du jeu et l’exécuter à la place deNUKEM2.EXE.
Changelog complet
v0.5.0-beta
-
Nouveauté majeure : Ajout d’un menu d’options (accessible via le menu principal ou la touche F1) permettant de configurer :
- Mode plein écran / fenêtre,
- Activation/désactivation du v-sync et du limiteur de FPS,
- Volume sonore/musique et coupure du son.
-
Modification structurelle : Changement incompatibles en arrière pour le stockage des profils utilisateurs (les profils créés depuis la v0.5.0 ne sont plus compatibles avec les versions antérieures, mais les anciens profils sont importables).
-
Progression technique : Implémentation de tous les ennemis non-boss enregistrés, rendant la majorité des niveaux jouables.
-
Nouveautés de gameplay :
- Ajout du radar de Duke (affichage des ennemis/objets proches),
- Mode écran large optionnel (élimine les bandes noires latérales, mais altère légèrement l’expérience originale).
-
Ajouts de contenu :
- 10 nouveaux ennemis/dangers (lance-flammes mural, griffes de plafond, fontaines de lave, robots, etc.).
-
Corrections critiques :
- Résolution d’un bug bloquant l’accès à certains tuyaux grimpables,
- Possibilité désormais de détruire les murs inflammables avec le lance-roquettes.
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.4.2-beta
-
Nouveauté majeure :
- Réimplémentation du support de modding du jeu original : les fichiers de la archive de données (
NUKEM2.CMP) peuvent désormais être remplacés en plaçant un fichier de même nom dans le répertoire du jeu.
- Réimplémentation du support de modding du jeu original : les fichiers de la archive de données (
-
Correction importante :
- Correction d’un problème de dépendance dans une version antérieure (fichier
SDL2_mixer.dllincomplet nécessitant d’autres DLL pour fonctionner).
- Correction d’un problème de dépendance dans une version antérieure (fichier
(Aucune mention spécifique à macOS dans ce changelog.)
Changelog complet
v0.4.1-beta
-
Amélioration majeure :
- Ajout de effets sonores lors de la destruction d’un ennemi du type Rigelatin soldier.
-
Correction importante :
- Résolution d’un bug critique où la confirmation de sortie (
y) avec un nouveau score pouvait saisir la lettre "y" dans le champ de saisie du nom du score (au lieu de quitter proprement le jeu).
- Résolution d’un bug critique où la confirmation de sortie (
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
v0.4.0-beta
-
Passage en phase bêta : la version shareware (premier épisode) est désormais complètement jouable, incluant tous les mécanismes de jeu, les ennemis et les fonctionnalités de sauvegarde/chargement. Les scores sont enregistrés dans une liste de haut score.
-
Gestion des profils utilisateurs : import automatique des sauvegardes et scores depuis le répertoire original du jeu à la première exécution, puis stockage dans un profil utilisateur dédié (compatibilité multi-utilisateurs sur une même machine).
-
Nouveautés fonctionnelles majeures :
- Système de menu intégré (hors menu des options et radar ennemi).
- Affichage des écrans de fin d’épisode avec récits.
- Mécanique de jeu : jetpack à lance-flammes (propulsion vers le haut lors d’un tir vers le bas).
-
Correction critique :
- Bug sonore corrigé au début du niveau L4 (glitch audio).
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Changelog complet
Captures d'écran