Vue normale

Reçu aujourd’hui — 2 janvier 2026

Un bug de 20 ans dans GTA San Andreas refait surface avec Windows 11

Par :Korben
1 janvier 2026 à 08:53

Le Skimmer dans GTA San Andreas c'est ce petit hydravion qu'on pouvait chopper près de la mer pour faire du rase-mottes au-dessus de l'eau. Eh bien figurez-vous que ce truc cachait un défaut dans son code depuis... 20 ans. Un bug dormant qui est resté totalement invisible jusqu'à l'arrivée de Windows 11 24H2 en avril 2025.

Silent, le moddeur derrière SilentPatch , a publié une analyse technique sur ce bug zombie. En gros, quand vous essayez de spawn le Skimmer sur Windows 11 24H2, l'hydravion devient tellement gigantesque qu'il n'est même plus rendu à l'écran. Et si vous forcez CJ à monter dedans via la console, son altitude affichée explose à environ 1,087 quadrillion d'années-lumière. Beaucoup plus loin que n'importe quoi dans l'univers observable...

Le coupable c'est une ligne manquante dans le fichier vehicles.ide qui définit les paramètres des véhicules. Le Skimmer a été copié-collé depuis Vice City où il était classé comme bateau, donc pas besoin de définir les paramètres de roues. Sauf que dans San Andreas, quelqu'un l'a requalifié en avion... sans ajouter les 4 paramètres manquants pour les roues.

Du coup, le code qui charge les véhicules se retrouve avec des variables non initialisées. Pendant 20 ans, ça passait crème parce que ces variables récupéraient par hasard les bonnes valeurs laissées dans la pile mémoire par le véhicule précédent (un certain TopFun avec un wheel scale de 0.7). Le jeu était littéralement à 4 octets près de planter depuis 2004.

Et puis Microsoft a décidé de modifier la gestion interne des Critical Section Objects dans Windows 11 24H2. La fonction LeaveCriticalSection utilise maintenant plus d'espace dans la pile, ce qui écrase ces fameuses valeurs "héritées" par accident. Résultat, le wheel scale se retrouve corrompu avec une valeur de 3,73×10²⁹, les calculs de suspension partent en vrille, et hop, votre hydravion file vers Alpha du Centaure.

Comme quoi c'est pas pour rien que les devs bassinent tout le monde avec l'initialisation des variables. Le code de San Andreas ignorait probablement les warnings du compilateur depuis le début, et tout le monde s'en fichait parce que "ça marche". Jusqu'au jour où ça marche plus, bah ouais Morray !

La bonne nouvelle c'est que le fix est facile à faire. Soit vous éditez manuellement le fichier data\vehicles.ide pour ajouter les paramètres manquants au Skimmer, soit vous attendez la prochaine mise à jour de SilentPatch qui corrigera ça automatiquement. D'ailleurs, les versions Xbox et la Definitive Edition avaient déjà corrigé ce bug... sans le savoir.

Bref, 20 ans de code qui tourne sur une douzaine de versions de Windows différentes, et il aura fallu un changement apparemment anodin dans la gestion mémoire de Microsoft pour réveiller ce vilain bug dormant...

Source

Reçu avant avant-hier

Mario Kart Super Circuit - Un patch corrige un bug vieux de 24 ans

Par :Korben
2 décembre 2025 à 12:40

Si vous aviez une Game Boy Advance en 2001, vous avez forcément joué à Mario Kart Super Circuit. C’était LE jeu pour les trajets en bus trop longs, les vacances à la mer chiantes avec les parents, les heures à tuer le weekend… Eh bien figurez-vous que pendant tout ce temps, on jouait à un jeu “cassé” sans même le savoir.

Le truc, c’est que Mario Kart Super Circuit affiche bien 60 fps… mais uniquement pour les personnages et les décors. Le circuit lui-même, qui tourne avec l’effet Mode 7 comme sur Super Nintendo, ne se rafraîchissait qu’à 30 fps. Et c’est un détail que personne n’a vraiment remarqué pendant presque un quart de siècle.

Et là, y’a un moddeur du nom d’Antimattur qui a décidé de fouiller dans le code et a découvert un truc assez dingue… Le jeu calculait déjà les paramètres du circuit à 60 fps en interne, mais quelqu’un chez Nintendo a décidé de ne les lire qu’à 30 fps. Alors pourquoi ? Hé bien mystère et boule de gomme… Les théories vont de l’économie de batterie (les piles AA du GBA original, c’était pas la fête) à une optimisation pour l’écran LCD qui bavait tellement que le 60 fps aurait peut-être été bizarre… On ne sait pas vraiment.

Ce nouveau patch fait seulement 15 octets et selon son créateur, un tiers de ces octets sont pour le mot “patch”. Un simple changement d’adresse et hop, le jeu fait enfin ce qu’il aurait dû faire depuis 2001.

La correction fonctionne sur toutes les versions du jeu (USA, Europe, Japon), et niveau performances, ça ne change strictement rien puisque le boulot était déjà fait en coulisses. Nintendo avait juste… oublié d’utiliser ses propres calculs.

Maintenant, la différence se voit surtout dans les virages serrés où le scrolling est parfaitement fluide. C’est subtil mais une fois qu’on l’a vu, difficile de revenir en arrière… Bref, si vous voulez ressortir votre GBA (ou votre émulateur, aucun jugement ^^) pour l’occaz, le patch traîne sur romhacking.net . Dégoupillez le fichier IPS qui correspond à votre région et c’est bon pour du Mario Kart qui tourne enfin comme prévu !

Source

❌