Kyuuuuu ><. Le développement du premier Warcat Parade a été un enfer sans nom. Il a été développé sous Unity3d avant que l’équipe en charge du moteur ne se tire une balle dans le pied avec leur histoire de 20 centimes. Emotif comme je suis, cela a failli avorter le développement du jeu… avant que je ne finisse par prendre la résolution de le terminer avant de passer sur Godot Engine. Ironie du sort, cette histoire de « 20 centimes » que les développeurs devaient payer pour chaque téléchargement, c’est tombé un 12 Septembre, le jour de mon anniversaire, et c’est très bien on est content. En réalité, cette mesure a été « adoucie » et il y a beaucoup à en dire dessus, la seule chose qui me concerne c’est que j’ai abandonné Unity après coup.
Passons sur Godot Engine donc
Je ne suis pas sponsorisé. Je suis juste un mec anti-Gafam qui ne tourne que sous Linux. Et il est beaucoup plus facile de paramétrer Godot sous Linux que Unity. Et je n’ai pas envie de me casser le derrière avec des Winetricks, des Lutris et autres trucs qui, en plus de me faire grave chier, sont de très mauvaises habitudes lorsqu’on tourne sous Linux.

Je tourne donc sous Godot. Je compose ma musique chiptune avec Deflemask et je pratique mon pixel art sous Aseprite. Comme je n’apprends rien dans les écoles, j’ai investi dans une série de tutoriels sur Zenva, un site qui ressemble à Udemy, et je me débrouille tout seul avec. Il n’y a que comme ça que j’apprends, parce que je fais partie de ces anomalies que tout le monde déteste au sein du patronat : super-productif en solo, inutile en groupe, et avec un caractère de cochon qui, combiné à mon autisme et à mon intelligence émotionnelle, fait que lorsque je commence un quart d’heure de crise féline, je m’en prends à tout le monde – y compris à mon propre camp.
Pour ce qui est des musiques « pas chiptune », hé bien il est là le problème. Pour le moment, j’utilisais Ableton Suite 10. Mais sous Linux, pour les raisons évoquées plus haut, ce n’est pas recommandable. Et puis un nom est ressorti souvent au gré de mes pérégrinations en game jams : Bitwig. Reste à faire l’investissement lorsque le moment sera venu, ce qui n’est pas encore le cas.
Nouveau language
Lors du développement de Warcat Parade sous Unity3d, j’utilisais Microsoft (beurk) Visual Studio pour coder les scrips en C#. Sous Godot Engine, bien qu’il soit possible de le réutiliser, j’ai préféré utiliser le language dédié, à savoir GDScript. Dans le pire des cas, ça me fera un truc de plus à mettre sur le CV – comme s’il n’était pas assez large.

Je code depuis que j’ai 17 ans, cela signifie que… Beh, que ça fait déjà 20 ans que je code. La plupart des concepts des tutoriels de base me sont familiers, mais bien que j’avais légèrement touché à GDScript par le passé, j’ai préféré commencer par le début. Heureusement, parce que j’avais raté des trucs.
En GDScript, on déclare les variables avec le mot-clé « var », mais préciser le type de la variable est facultatif. Ce que je ne savais pas, c’est qu’avec la syntaxe suivante, on pouvait préciser le type. Ca fait déjà beaucoup plus propre.
var _nombre_de_vies = 3
var _nombre_de_vies : int = 3
Ensuite, j’ai encore la mauvaise habitude de placer un point-virgule à la fin de mes instructions, ce qui ne se fait pas en GDScript. Comme en Python. Pour ce qui est des accolades, je n’ai pas le souvenir d’en avoir rencontré. Lorsqu’il y a un ensemble d’instructions (une boucle, une condition ou même une fonction), hé bien ça marche comme en Python. En gros, il faut indenter le bloc en question. Généralement, on place « deux points » sur la ligne au-dessus, comme ceci.

Je pourrais également parler du système d’Input qui, lui aussi, diffère de Unity3d. Ou encore des fonctions qui se déclarent avec « func » et, là aussi, le type de la valeur renvoyée (même si c’est « void »), est facultatif. Autant de raisons qui m’ont incité à ne pas griller les étapes.

Tenez, ça, par exemple, c’est un truc que j’ai réalisé pour le tutoriel sur la boucle for et sur l’instanciation. J’ai simplement rajouté un gros layer de cringe.
Je n’ai pas de projets concret ces temps-ci, il faut se former. Le prochain tutoriel parlera d’un jeu de plate-forme en 2d.
Hefka Le Nekopunk
Brisez la glace !