20 ans après, un bug corrigé dans Super Mario 64
Il n'y a pas de fumée sans feu : c'est encore plus vrai depuis qu'un développeur a corrigé, en une ligne de code, un bug vieux de plus de 20 ans dans Super Mario 64. Curieux, on vous dit tout !
NewsOn adore les découvertes de ce type : résoudre un bug plus de 20 ans après la sortie d'un jeu, c'est comme mettre au jour un prototype d'une console qui n'est jamais sortie ! C'est incroyable ! Un développeur (on a failli parler d'archéologue, pour le coup !) a résolu un bug d'origine du jeu Super Mario 64 : en une ligne de code, il a réussi à corriger l'effet de fumée qui suit Mario lorsqu'il se fait toucher par une flamme dans Super Mario 64.
Quand on connait la propension de Super Mario à se cramer le derrière dans ses jeux, on se dit qu'il est incroyable qu'un tel bug n'ait pas été corrigé avant, et pourtant... Il aura en effet fallu 20 ans pour qu'on prenne le temps de s'intéresser au problème. Et tout le mérite de cette découverte revient à un certain zoinknoise, un pirate qui a analysé le code-source du jeu et déterminé qu'il y avait une petite erreur dans le code à corriger.
Et en effet, en transformant l'instruction G_IM_FMT_RGBA en G_IM_FMT_IA, ligne 47 du fichier /actors/burn_smoke/model.inc.c pour ceux qui seraient curieux et voudraient aller le voir par eux-mêmes, la gestion de la fumée est soudain devenue beaucoup plus réaliste.
Zoinknoise a expliqué :
On sait maintenant que cette texture est affichée sous le mauvais type dans le jeu, ce qui résulte en une bouillie de pixels. Comme la fumée dans les jeux vidéo de l'époque étaient souvent traduite avec une bouillie de pixels, l'erreur est passée inaperçue pendant plus de deux décennies.Il est incroyable que personne, même chez les développeurs de l'époque qui avaient travaillé sur la texture de fumée, ne se soit rendu compte du mauvais rendu affiché dans le jeu : la texture était là, attendant patiemment qu'on veuille bien l'appeler, pendant près de 20 ans !
Un tweet nous montre bien la différence incroyable entre les deux :
La grande question que se pose Polygon dans son article, c'est de savoir si Nintendo, pour le jeu en rumeur concernant les 35 ans de la série Super Mario, va prendre le temps de corriger ce bug ou non. Ou au moins offrir une peluche Mario à Zoinknoise pour sa sublime découverte !Haha, what the heck. Thanks to the Super Mario 64 code disassembly it's been discovered that the smoke Mario emits when he's touched fire has been bugged for 20 years. On the left: how it looks in the final game. On the right: after a one-line code fix. https://t.co/JenizzKeFh pic.twitter.com/Jb2Ryg2lwx
— Ryan Bloom (@BlazeHedgehog) April 6, 2020
Source : Polygon
Cet article vous a intéressé ? Vous souhaitez réagir, engager une discussion ? Ecrivez simplement un commentaire.