The OldMan Glitch

The OldMan Glitch est un glitch1 dans la première génération de Pokémon2 sur Gameboy. Dans cette présentation, effectuée entièrement sur un émulateur, je propose de montrer la manipulation tout en expliquant dans le détails ses mécanismes : de parler d'off by one error, d'underflow, de buffer overflow, de payload, d'injection de code et d'assembleur, tout ça en s'amusant à faire déconner Pokémon autant que possible.

Captation au DevFest Toulouse 2018 (youtube)

J'ai donné cette présentation en espérant faire prendre conscience à des développeurs ou développeuses que ne pas complètement abandonner la sécurité est à la fois possible, intéressant et utile. Et qu'un bug, ça peut être beau.

Conférences

Fichiers de la présentation

La liste des outils, les sauvegardes, le script détaillé des manipulations et des explications, ainsi que la description du setup - c'est à dire tout ce qu'il faut3 pour rejouer la présentation chez soi ou la redonner - sont disponibles sur github.


1

Un état non voulu par les développeurs dans lequel on peut mettre de façon temporaire un jeu et qui permet d'obtenir des effets non prévus.

2

Pokémon Rouge et Pokémon Bleu, sortis en 1996 au japon et en 1999 en France.

3

A l'exception de la ROM