The Wonderful World of Open Source Games

Cette vidéo clarifie la définition stricte d’un logiciel open source (code accessible, modifiable et redistribuable) et présente une liste organisée de jeux répondant à ces critères, tout en dénonçant les idées reçues sur des titres populaires comme Minecraft.

Voir la source

SYNTHÈSE STRUCTURÉE

Définition rigoureuse de l’open source

L’intervenant pose trois conditions cumulatives pour qu’un jeu soit considéré comme open source : le code source doit être ouvert (accessible publiquement avec instructions de compilation), modifiable (changements autorisés et recompilation possible), et redistribuable (libre circulation sans restriction). Il insiste : « This is always what I mean when I refer to software that is open-source ». Cette précision vise à éviter les confusions fréquentes dans les commentaires.

Pourquoi Minecraft n’est pas open source

Malgré la possibilité de décompiler le jeu ou d’utiliser des mods, Minecraft ne satisfait pas aux critères. L’intervenant rappelle que l’écran titre affiche « Copyright Mojang AB, do not distribute ». Le code source n’est pas officiellement publié ; l’accès passe par du reverse engineering. Les mods dépendent du jeu original pour fonctionner, ce qui ne correspond pas à une redistribution libre.

Catégorie des jeux de stratégie en temps réel (RTS)

Plusieurs titres open source sont listés, avec leurs langages et hébergements :

  • Beyond All Reason : Lua, sur GitHub.
  • Open RA : C#, sur GitHub.
  • 0 A.D. : C++, sur leur propre instance Gitea.
  • Unciv : Kotlin, conçu pour Android mais jouable sur bureau.
  • FreeCiv : C, sur GitHub, décrit comme « based like that » pour son langage bas niveau.

Jeux de rythme : Osu! et Quaver

Deux jeux en C# hébergés sur GitHub. L’intervenant note la variante de prononciation d’Osu! (« Osu or Os depending on how you prefer to say it »), mais ne développe pas davantage leurs spécificités techniques.

Shooters : forks de Doom et autres

  • Cube 2 Sauerbraten : C++, sur GitHub, décrit comme un arena shooter très ancien.
  • GZDoom : C++, sur GitHub, le fork de Doom le plus populaire.
  • Zandronum : Java, sur GitLab (avec une remarque sarcastique sur l’obligation d’activer JavaScript : « Wonderful UX design »).
  • Teeworlds : C++, sur GitHub, comparé à Stick Fight the Game plutôt qu’à un shooter classique.

Plateformeurs : Super Tux et autres

  • Super Tux : C++, sur GitHub, inspiré des Mario 2D. L’intervenant exprime son enthousiasme : « I might play this on stream at some point ».
  • Frogatto & Friends : Ruby et Python, sur GitHub. Le gameplay présenté est un speedrun, ce qui suscite l’intérêt de l’intervenant.
  • Un autre titre non nommé est mentionné en ActionScript et C++.

Catégorie miscellaneous : jeux uniques par genre

  • Mindustry : Java, sur GitHub, mélange de Factorio et Bloons Tower Defense.
  • OpenTTD : C++, sur GitHub, jeu de gestion type City Skylines.
  • Super Tux Kart : C++, sur GitHub, clone de Mario Kart avec des modes supplémentaires (football).
  • Tux Racer : hébergé sur SourceForge, langage non documenté (code accessible uniquement par téléchargement).
  • Neverball : C, sur GitHub, jeu de balle à guider vers un objectif.
  • Taisei Project : C, sur GitHub, bullet hell.
  • Bugdom : C, sur GitHub, aventure familiale.
  • FlightGear : C++, sur GitLab (JavaScript requis).
  • Powder Toy : C++, sur GitHub, simulateur de particules avec pression, chaleur, gravité. L’intervenant le qualifie de « definition of a sandbox game », mentionnant la création de réacteurs nucléaires et d’étoiles.

Recommandation finale : sandboxer les jeux propriétaires

Pour les jeux Steam non open source, l’intervenant conseille d’utiliser le flatpak Steam : « That way all of your games are sandboxed into one place and they don’t have access to any other part of your computer that they don’t need ». Il conclut par un ton humoristique : « Screw you Microsoft », tout en encourageant à privilégier l’open source quand c’est possible.

CONCEPTS CLÉS

  • Open source : Logiciel dont le code source est accessible, modifiable et redistribuable sans restriction.
  • Reverse engineering : Technique de rétro-ingénierie pour obtenir le code source d’un logiciel non ouvert (ex. Minecraft).
  • Flatpak : Système de gestion de paquets et de sandboxing pour Linux, permettant d’isoler les applications.
  • Arena shooter : Sous-genre de jeu de tir où les joueurs s’affrontent dans des arènes avec des armes et power-ups (ex. Cube 2 Sauerbraten, Zandronum).

CONCLUSION

Le message principal est qu’un jeu open source ne se définit pas par la possibilité de le modifier, mais par la liberté complète d’accès, de modification et de redistribution de son code. L’intervenant démontre qu’il existe une variété impressionnante de jeux open source de qualité, couvrant tous les genres, et rappelle que même pour les jeux propriétaires, des solutions comme le sandboxing (flatpak) permettent de limiter les risques. Cette analyse est cruciale pour tout administrateur système souhaitant promouvoir des logiciels libres tout en comprenant les limites techniques et juridiques des jeux populaires.

Du même canal

Tout voir