Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

New 3D Golf - Il greffe du Virtual Boy dans une Mega Drive

Matt Sephton, alias gingerbeardman, a passé une nuit d'avril à arracher un parcours de golf des entrailles d'un vieux jeu, et il en est ressorti avec une idée bien plus tordue. Vous connaissez New 3D Golf Simulation, la série de T&E Soft qui tournait sur PC-9801 dès 1989 ?

La Mega Drive en avait déjà eu quatre épisodes japonais à l'époque. Sauf que Matt a trouvé le moyen d'y faire entrer des parcours qui n'y avaient jamais mis les pieds puisqu'il a reverse-engineeré le format des données de terrain du jeu. Une fois ce format compris, vous ne lisez donc plus une cartouche, vous lisez une carte. Il a ensuite balancé tout ça dans un visualiseur Three.js dans son navigateur, et en une semaine son petit bricolage ressemblait déjà à un vrai jeu de golf 3D jouable.

À partir de là, il a pu extraire trois parcours nés ailleurs et les patcher direct dans la ROM Mega Drive. T&E Selection et Eight Lakes étaient planqués sur des disquettes additionnelles du PC-9801, et Papillon C.C. dormait carrément dans T&E Virtual Golf sorti sur le Virtual Boy de Nintendo. Des parcours Virtual Boy qui tournent sur Mega Drive, c'est pas quelque chose que j'aurais pensé voir un jour, j'avoue.

Et surtout, côté technique, c'est une jolie leçon de débrouille ambiance années 80 car la Mega Drive n'a pas de depth buffer pour gérer quel polygone passe devant quel autre. Du coup l'ordre de dessin est gravé à l'avance dans les données du parcours, du fond vers l'avant (le bon vieil algorithme des peintres ^^).

Et c'est précisément ce qui a mis Matt sur la piste. Comme l'ordre de tri ne collait pas avec celui du PC-9801 d'origine, cela voulait dire que quelqu'un avait retravaillé les données spécialement pour la console de Sega. Pour démêler tout ça, il a donc sorti l'artillerie du désassemblage moderne, rizin pour fouiller le binaire 68000, vasmm68k pour réassembler, et l'émulateur BlastEm pour vérifier que ses bidouilles ne plantaient pas la machine.

Et en bonus, Matt a même déterré une jolie histoire sur le jeu original. En 1989, T&E Soft n'avait pas pompé le parcours de golf Augusta de loin avec des photos, ils avaient signé un vrai contrat avec le club et bossé sur les plans officiels du parcours.

Et le club ne rigolait pas avec sa réputation car selon Matt, "Augusta a renvoyé environ 60 corrections", du genre arbres trop courts et trop espacés, fleurs trop roses, sable des bunkers de la mauvaise couleur. Le tout codé en grande partie par un seul gars, Eiji Kato, ce qui vous fait mieux comprendre pourquoi ces données valent la peine qu'on aille les déterrer 37 ans plus tard.

Mon détail préféré de ce jeu reste quand même la physique puisque le trou est trois fois trop gros, aspirant n'importe quelle balle qui passe à moins de 17 centimètres, soit le triple du rayon réel. Les balles tombent donc de bien plus loin qu'on ne le croit, ce qui est une petite triche d'ergonomie planquée là depuis trente ans que personne n'avait vraiment remarquée avant qu'on rouvre le code.

Après, je vais être clair sur l'état du chantier : ce n'est pas une ROM finie à télécharger pour ce week-end. Faut voir plutôt ça comme une démo expérimentale. Mais l'intérêt n'est pas là. Non, ce qui est beau, je trouve, c'est cette archéologie qui traite un jeu comme un site de fouilles et qui permet de mettre au jour de très belles choses enfouies dans le code.

Source

Half-Life 2 dans le navigateur - Le hack d'un lycéen

Vous vous souvenez de la première fois que vous avez lancé Half-Life 2 et que vous avez attrapé une caisse avec le gravity gun ? Eh bien un lycéen qui se fait appeler slqnt vient de remettre tout ça dans votre navigateur, gratuitement, sans avoir à installer Steam ni à télécharger le moindre gros paquet. Ça se passe sur hl2.slqnt.dev , c'est en ligne depuis hier, et le jeu tourne tout en fluidité, largement au-dessus des 60 images par seconde directement sous Chrome.

Sur mobile par contre, il vous faudra un clavier branché parce que les contrôles tactiles sont quasi inexistants pour l'instant, mais sur un PC, vous lancez la page et vous voilà à Black Mesa East.

Maintenant, le plus intéressant c'est comment il s'y est pris, parce que porter un jeu bâti sur le moteur Source de Valve (le même que celui de 2004, successeur de GoldSrc) dans un onglet, ça ne se fait pas en claquant des doigts.

Et slqnt n'est pas parti de zéro puisque c'est un copain qui lui a montré un portage de Portal fait par un autre dev nommé weliveinhell. Ce projet open source était d'ailleurs lui-même un fork de nillerusr/source-engine , c'est-à-dire une version modifiée de la fuite du code du moteur Source de Team Fortress 2 qui a circulé en 2020. Voilà pour la base du truc qui n'est ni plus ni moins que le moteur leaké patiemment retapé par la communauté.

L'astuce de ce portage tient dans un mode de rendu appelé ToGLES. En gros le moteur sait parler OpenGLES, le truc qu'on utilise d'habitude pour les applis Android, sauf qu'Emscripten sait traduire ces appels en WebGL2 dans le navigateur. Résultat, slqnt n'a eu quasiment aucun travail à faire côté affichage, le plus dur étant déjà fait.

Le casse-tête par contre, ça a été d'abord les assets, parce que cette version du moteur date d'avant la réédition anniversaire de HL2 et ne supportait pas ses fichiers. Il a donc fallu basculer sur la branche steam_legacy de Steam, puis dépaqueter tous les VPK du jeu et les redécouper en fichiers .data, un par carte, pour que le navigateur les charge au fur et à mesure.

Et puis il y a eu les animations faciales. C'était l'une des grandes fiertés techniques de HL2 à sa sortie, la façon dont les visages bougeaient en parlant. Sauf que ça faisait tellement planter le portage que slqnt a fini par désactiver complètement le système pour avoir quelque chose de stable.

Du coup le G-Man vous fait son monologue d'intro avec un visage figé, mais au moins ça tourne. Le reste de son journal de bord est également une jolie liste de galères de bidouilleur, vu de l'intérieur avec au hasard, les sauvegardes à recâbler sur le système de fichiers d'Emscripten, les batteries et medkits qui ne fonctionnaient pas, le gravity gun qu'Alyx vous tend mais qui n'arrivait jamais dans l'inventaire, les PNJ qui s'effondraient et mouraient au hasard, les headcrabs qui ne faisaient aucun dégât, l'eau toute noire et j'en passe...

Petit détail qui parle à quiconque a déjà bidouillé un jeu, il a dû remapper l'accroupissement sur la touche C, parce que CTRL déclenchait des raccourcis du navigateur qui pourrissent la partie.

Reste maintenant la question que tout le monde se pose : Est-ce que Valve est au courant ? Parce qu'un portage qui repose sur du code moteur leaké et sur les assets du jeu, légalement, c'est une zone grise bien grise qui tire vers le noir.

Valve a toujours été plutôt cool avec sa communauté de moddeurs, mais ça pourrait disparaître du jour au lendemain. Après si l'idée d'un jeu Source qui tourne dans un onglet vous fait marrer, c'est exactement le même esprit que ce Portal 2 transformé en serveur web , ou que ce Doom qui tourne avec juste du CSS . Mettre les vieux FPS dans le navigateur, c'est presque devenu un sport, je vous en parlais déjà avec Wolfenstein 3D .

Bref, foncez essayer tant que c'est en ligne. Et si vous y arrivez sur mobile sans clavier, écrivez vite un bouquin pour raconter comment vous avez fait !

Source

Super Mario 64 enfin sur Nintendo DS avec un mode coop

À tous les nostalgiques de la Nintendo 64 et notamment de Super Mario 64, j'ai un petit truc cool à vous montrer. Tobi Friedly vient de sortir un portage du jeu sur Nintendo DS, et pas n'importe lequel, puisque celui-ci tourne sur la vraie console de 2004, et pas seulement sur la DSi qui embarquait quatre fois plus de mémoire vive. Et comme si ça suffisait pas, il y a même mis un mode deux joueurs.

C'est vrai que le truc qui coince d'habitude, c'est que la DS originale n'a pas assez de RAM pour charger toute la ROM du jeu d'un coup. Tobi a donc contourné le problème en faisant streamer les assets à la demande via NitroFS , le système de fichiers des cartouches DS.

Du coup, au lieu de tout balancer en mémoire d'un bloc, le jeu va piocher les niveaux et les textures au fur et à mesure qu'il en a besoin. C'est grâce à cette méthode ingénieuse qu'il a pu débloquer son portage sur la vraie DS, là où le portage précédent de Hydr8gon restait coincé sur DSi faute de place.

C'est d'ailleurs grâce au boulot de Hydr8gon que Tobi a construit le sien, en le modifiant et en l'adaptant suffisamment pour qu'il tourne sur tous les modèles de DS.

Au passage il a rebouché aussi deux bugs qui traînaient, et maintenant le jeu est finissable à 120 étoiles, et le son fonctionne enfin (avant c'était silence radio). La stabilité générale a aussi pris un bon coup de polish.

Le mode multijoueur, lui, réclame deux DS, chacune avec sa propre copie du jeu. C'est du coop local, parfait pour explorer le château à deux ou juste pour déconner ensemble, entre moustachus, dans un niveau de Mario.

Attention quand même, ce n'est pas un fichier .nds prêt à double-cliquer. Faut dumper vous-même la ROM de votre propre cartouche Super Mario 64, puis compiler le truc via Docker. Si vous bidouillez un peu l'émulation ou si vous utilisez des cartouches de type flashcart, vous savez que c'est le prix d'entrée habituel pour ce genre de projet de décompilation, notamment pour rester du bon côté niveau droits.

Super Mario 64, faut dire, c'est un peu le terrain de jeu favori de la scène decomp... on l'a déjà vu débarquer sur PlayStation 1 dans un sacré bordel technique, tourner en coop et en 4K sur PC avec SM64CoopDX, et on sait même que le jeu gaspillait joyeusement la mémoire de la N64 à l'origine grâce à ce genre de portage.

Si le projet vous intéresse, tout est sur le GitHub de Tobi Friedly .

Et si votre vieille DS a rendu l'âme, un émulateur comme melonDS fera tout aussi bien l'affaire.

Source

La vraie vie - Le documentaire qui filme l'absurde dans un jeu vidéo

Voici un documentaire qui va vous faire tourner la tête. Ça s’appelle La vraie vie , et c’est une série ARTE réalisée par Ekiem Barbier et Guilhem Causse qui a embarqué le comédien Victor Assié dans une aventure complètement barrée. Le concept c’est de tourner un documentaire entièrement dans un jeu vidéo de simulation de vie.

Dans ce film, Victor découvre un serveur de jeu où les gens s’amusent volontairement à jouer les fonctionnaires, les policiers ou les garagistes dans une petite bourgade virtuelle qu’ils ont eux-mêmes construite. Victor doit alors se faire une place parmi ces joueurs, trouver du boulot, gagner de l’argent, respecter le code de la route.

Bref, refaire exactement ce qu’il fait déjà dans la vraie vie, mais avec son avatar 3D.

Les réalisateurs n’en sont pas à leur coup d’essai car en 2023, ils ont sorti Knit’s Island, un documentaire tourné dans DayZ qui a remporté le Prix du Jury et le Prix FIPRESCI au festival Visions du Réel en Suisse. Pour ce film, leurs avatars ont passé 963 heures dans ce monde post-apocalyptique à rencontrer des communautés de joueurs et à filmer leurs interactions. Le machinima , cette technique qui consiste à créer des films avec des moteurs 3D de jeux vidéo, existe depuis une trentaine d’années, mais Knit’s Island était le premier à tenter un format long pour le cinéma.

Barbier et Causse se connaissent depuis l’École des Beaux-Arts de Montpellier et en 2016, ils ont même formé un groupe de recherche qui questionne le rapport à la réalité dans les jeux vidéo en ligne. Leur premier film, Marlowe Drive en 2017, était déjà un documentaire exploratoire tourné dans GTA V Online.

Pour La vraie vie, ils ont donc choisi un serveur de jeu de rôle basé sur le moteur d’Arma 3. Contrairement aux serveurs GTA RP français sur FiveM qui simulent la vie urbaine avec des poursuites de police et du crime organisé, ce serveur mise tout sur l’absurde bureaucratique. Victor doit donc passer son permis de conduire, acheter un téléphone portable, trouver du travail. À un moment, il se fait même arrêter pour excès de vitesse et le policier lui fait tout un speech sur les dangers de sa conduite imprudente. Un autre fois, il essaie désespérément de faire un spectacle de théâtre mais personne ne veut l’écouter, alors il récite du texte au milieu de la route.

Ce qui ressort du documentaire, je trouve, c’est cette observation assez vertigineuse que certains préfèrent la vie dans une communauté virtuelle à la solitude du monde réel. Les joueurs parlent du serveur comme de leur île et appellent la réalité “le continent”. Sur l’île, il y a de l’inflation, des jobs de service, des contraintes administratives, exactement comme dans la vraie vie, mais avec le choix assumé d’y être.

La série fait 5 épisodes de 24 minutes et utilise le format machinima de bout en bout. Pas de coupures vers le monde réel, pas d’interviews face caméra. Juste Victor qui essaie de survivre dans ce monde étrange peuplé de vrais joueurs qui prennent leur rôle très au sérieux. La vraie vie a même été sélectionnée à Canneseries 2025 dans la compétition séries documentaires et aux Visions du Réel 2025 est est disponible sur arte.tv et YouTube.

Voilà, pour tous ceux qui s’intéressent aux mondes virtuels et à ce besoin irrésistible de trouver en ligne un exutoire à la vraie vie, ce documentaire pose pas mal de bonnes questions : Pourquoi rejouons-nous notre quotidien dans des jeux vidéo ? Qu’est-ce que ça dit de notre rapport au monde réel ? Et surtout, pourquoi certains trouvent plus de sens à conduire un camion virtuel qu’à faire la même chose dans la vraie vie ?

Après avoir vu le documentaire, on fini quand même par se demander si notre propre vie n’est pas déjà un jeu de rôle dont on a oublié les règles…

L'histoire de celui qui a prédit la mort de DOOM

Et si je vous disais qu’un mec a réussi à prédire l’avenir avec la précision d’un oracle ? Et pas une vague prédiction à la Nostradamus où on peut interpréter n’importe quoi… Non, non, une vraie prédiction scientifique du style : “Ce truc devrait crasher vers septembre 2025”. Et devinez quoi ? Ça a effectivement crashé.

L’histoire commence en 2023, quand un certain Minki décide de tester une théorie complètement barrée. Le mec lit un article technique sur le moteur de DOOM et remarque un truc bizarre : une variable qui compte les démos du jeu qui s’incrémente en permanence, y compris quand une nouvelle démo commence. Cette variable se compare constamment avec sa valeur précédente, mais elle continue de grimper, encore et encore, jusqu’à… jusqu’à quoi exactement ?

Bah justement, c’est là que ça devient intéressant car Minki sort sa calculatrice et commence à faire ses petits calculs. Il sait que selon la documentation technique de DOOM , le moteur utilise des integers 16 bits pour optimiser les performances. Traduction pour les non-geeks : les nombres ont une limite, et quand on la dépasse, c’est le drame ! Un peu comme quand vous essayez de rentrer votre gros cul dans un ascenseur bondé. Sauf qu’ici, au lieu d’un ascenseur bloqué, on a un jeu qui explose.

Donc notre ami fait ses calculs et arrive à cette conclusion : DOOM devrait crasher après environ 2 ans et demi de fonctionnement continu. Et franchement, qui penserait à vérifier un truc pareil ? La plupart d’entre nous, on lance DOOM pour se défouler 30 minutes et on passe à autre chose. Mais minki, lui, il voit plus loin.

Alors il fait quoi ? Il prend un vieux PDA (si si, ces trucs qu’on utilisait avant les smartphones), il bricole une alimentation avec des batteries 18650 et un chargeur USB branché sur son routeur, et il lance DOOM. Puis il attend. Deux ans et demi. Pour de vrai.

Pendant ce temps, vous et moi, on a changé trois fois de téléphone, bingé 47 séries Netflix, survécu à François Bayrou, vu l’IA devenir mainstream… Et Minki ? Bah lui, il avait DOOM qui tournait dans un coin de son appart…

Et le plus dingue, c’est que ça a marché exactement comme prévu. Selon le post original sur LenOwO , le jeu a crashé “seulement quelques heures après avoir passé les deux ans et demi”. Boom. Prédiction confirmée. Le mec a calculé la mort de DOOM avec une précision chirurgicale.

Ici, pas besoin d’exploits sophistiqués ou d’outils de pentest dernier cri. Juste de la curiosité, des maths, et une patience de moine tibétain. Et c’est comme ça que Minki a transformé un bug théorique en prédiction concrète, puis en réalité observable.

En fait, les bugs d’overflow de DOOM sont légion . Si vous avez plus de 64 lignes défilantes, ça crash. Si une balle traverse plus de 128 objets, ça bug. Si vous construisez une zone de plus de 2500 unités de hauteur, le moteur panique. C’est un peu comme si le jeu était construit sur un château de cartes, où chaque limite non vérifiée est une catastrophe qui attend son heure.

Bref, vous l’aurez compris, cette expérience c’est bien plus qu’un simple “j’ai fait tourner DOOM pendant longtemps lol”. C’est une démonstration de la prédictibilité des systèmes informatiques. Ça montre que quand on comprend vraiment comment un programme fonctionne, on peut littéralement voir dans l’avenir…

Bien joué Minki !

❌