J’ai déjà parlé dans un précédent article du jeu vidéo Battle for Wesnoth, un jeu de tactique en 2D aux allures de jeu d’échec dans un univers heroic-fantasy.
Sorti en 2003, développé au départ par une seule personne qui voulait développer un jeu open-source avec des mécaniques simples, il a été en constante évolution depuis, enrichi et maintenue par des dizaines de personnes au fil du temps. Et malgé tout ce temps, la commuauté reste très active : il y a même une équipe qui travaille actuellement sur une version 2 basée sur le moteur de jeu open-source Godot.
Pour en savoir ceux qui ne connaissent pas, faites donc un tour sur le site officiel et ses formums, ou la page Steam du jeu.
Le jeu est totalement gratuit et open-source, et le restera. Ces circonstance, ainsi que le succès inattendu du jeu (qui se retrouve dans la plupart des «top jeux gratuit sur PC»), était bien sur propice au modding.
Les développeurs ont donc créé un language, le WML (pour Wesnoth Markup Language), pour faciliter la création de nouvelles compagnes, scénarios, modifications du gameplay etc. Puis ont ensuite rendu possible le développement de mods aussi en LUA.
Un gestionnaire d’extension, intégré dans les menus du jeu, en favorisait leur accessiblité.
Des centaines, voir milliers d’extensions, sont donc disponibles désormais sur ce gestionnaire.
Par curiosité, je me suis mis a développer une extension qui modifie plusieurs aspects du gameplay, en me basant sur d’autres extensions pour apprendre. J’ai ainsi progressivement appris à coder avec ce fameux WML, mais aussi en LUA.
Et c’était fun.
Petit a petit, je me suis retrouvé avec un module qui changeait des dizaines de points différents sur le gameplay.
J’ai rendu chacune de ces fonctionnalités optionnelles et configurables, et ai fait le choix de les conserver en tant qu’une seule extension, car certaines de ces fonctionnalités avait des synergies entre elles.
Un week-end après une longue phase de test, j’ai jugé mon extension suffisamment stable et intéressante pour la publier cette extension, ouvrir un thread sur le forum officiel pour suivre les demandes d’évolutions et rapports de bugs de la communauté, et ouvert un repo sur GitHub.
Et je baptisé mon extension «Advanced Wesnoth Wars», en références à la licence «Advance Wars» dont j’ai transposé certains concepts pour «transformer» le gameplay Wesnoth en quelque chose de différent.
Après cela, j’ai fixé quelques bugs pendant quelques mois, et améliorés quelques trucs par ci-par-là, fait la localisation en français, et je suis passé un peu à autre chose.
Un an après la mise en ligne de mon extension, elle comptabilise + de 6500 téléchargements ; c’est d’ailleurs devenu une des extensions les plus téléchargées dans sa catégorie (alors que la plupart sont là depuis beaucoup plus longtemps).
Bref, tout ça pour dire, j’adore la philosophie Open Source, ce jeu et sa communauté, qui m’a donné une expérience sur le développement de mods brève mais très positive et enrichissante !