Feuille de route d’août

Il me reste encore beaucoup de temps à passer sur les quatre derniers jeux réalisés sur l’Hubibox. J’ai quatre morceaux de musique à produire et je dois sonoriser les jeux correctement. Ensuite j’ai tout un tas de finitions à réaliser sur les graphismes. Pour finir affiner le code, corriger les bugs et tester la jouabilité.

Le Raspberry pi 4 commandé avec 4Go de Ram est en rupture et devrait arriver au mieux en septembre !

En cours, réalisation de ce modèle 3D sous LigthWave.

Productions en cours :

Pour le jeu grenouille.
Pour le jeu rubis.
Pour le jeu volconian.
Pour le jeu bubbles.
Rig de la grenouille en vue de son animation.
imagestrip de l’animation de la grenouille.

La grenouille

Le concept paraît pourtant simple, pas d’algorithme complexe, et pourtant les heures de réalisation défilent. Beaucoup de collisions à détecter, tout est finalement en mouvement. La chaleur n’aide pas et à deux heures du matin, des gouttes perlent sur mon front. « Que fait la grenouille en plein milieu de la rivière en dehors d’un tronc ou d’une tortue… Pourtant mon test semble bon… Ce doit être une coquille dans le code… Uhm… Il devient long le code ». La programmation devient alors une exploration stressante à la recherche de ce qui cloche. Patience, tout rentrera dans l’ordre comme d’habitude avec du temps et des tests. Tu cherches l’erreur de logique là, elle est ailleurs. C’est certainement çà la programmation d’auteur, tu y as mis un peu de toi même, du temps de ta vie. Ce n’est pas un triple A, mais tu as tout réalisé toi même.

Rubis

Je suis également en train de réaliser un ‘match-3 game’ pour remplacer le jeu de déplacement du robot. Je travaille en sessions selon mon temps disponible et mon envie. Je réalise une partie de l’algorithme à chaque fois et je teste. Ensuite je passe à autre chose, j’ai tellement à faire dans la vraie vie ! Je suis finalement parvenu à un fonctionnement convenable. J’y ai travaillé au déplacement des rubis, à la détection des triplés de couleur identique et à leur suppression de la grille fun.

Le retour des bubbles

Je voudrais intégrer un jeu du genre ‘bubble shooter’ dans l’hubibox. Mais cette fois-ci la réalisation est plus complexe. J’avais déjà travaillé sur ce type de jeu bien avant le projet, avec moins de connaissances du langage d’ AgkGameKit, puis j’ai abandonné. C’est une reprise de la méthode initiale, à savoir traduire un code existant en JavaScript, une bonne galère aussi. J’ai donc repris l’exemple de code d’un site et tutoriel internet et je l’adapte tant bien que mal. L’algorithme n’est pas des plus faciles à s’approprier en ce qui me concerne. Je teste énormément de parties pour espérer qu’elles veuillent bien fonctionner correctement. J’y suis depuis quinze jours.

Le 22.07.2019, première intégration dans le programme de l’hubibox. Après avoir buté de nombreuses heures sur la mise en place et le débogage des algorithmes du tutoriel, j’ai fini par créer le mien. Pas parfait, mais il se rapproche de ce que j’espérai réaliser. Je vais fignoler l’intégration petit à petit.

Comment une nouvelle partie est ajoutée au programme de l’Hubibox

Dans un premier temps, je réfléchis à l’algorithme du programme et effectue des recherches. Ensuite je commence à produire les premiers graphismes. Ils sont dérivés des précédents, pour coller à l’aspect général.

Ces éléments en main j’écris la structure de base du code de cette partie qui est directement incluse dans le code existant de l’Hubibox. Je tends alors de plus en plus vers mon idée en écrivant de plus en plus des lignes de code. Je teste petit à petit le fonctionnement, débusque les bugs les plus déroutants. Trouve des solutions pour un bon fonctionnement de l’ensemble. Généralement je peaufine ou j’ajoute des graphismes.

J’essaye toujours d’aller à l’essentiel. Je suis seul pour réaliser mon idée, et souvent de nombreuses heures sont nécessaires. J’entrecoupe souvent ces séances de réalisations. C’est mon véritable boulot qui fait la coupure. Et au final certaines journées sont très longues. Le tout est de pouvoir terminer l’idée, la partie concernée. De nombreux développeurs amateurs se lancent des défis trop importants et ne terminent jamais leur projet.

La musique est produite en cours de réalisation. Elle aide et encourage la création. Une fois écrit le code est à tester de nombreuses fois. L’ordinateur insulte de ses messages signalant les erreurs. Le débogage n’est pas facile, comprendre ce qui cloche et converser avec un ordinateur demande beaucoup de pratique et de sang-froid. Cette étape fastidieuse est plus agréable lorsque la musique est en place. Dans d’autres parties comme les diaporamas je produis la musique à la fin.

Tout ce temps passé, est du temps de ma vie. Et j’ai beaucoup de choses à faire. Ce ne semble pas être un gros projet et pourtant il consomme des heures. Comme c’est le travail d’une seule personne. Il me ressemble. Un programme d’auteur.

Volconian

Ce petit jeu de tir utilise les courbes de Beziers pour décrire la trajectoire des ennemis. Cette fois j’ai du inclure un mode ‘édition’ pour les définir. La courbe se déforme en déplaçant les points rouge et bleu qui correspondent aux points de contrôle. Chaque ennemi possède une courbe pour son entrée dans la zone et jeu, puis celle qui correspond à ‘son attaque’ vers le joueur.

L’archive est téléchargeable ici

Le Raspberry 4 est sorti

La célèbre ‘carte ordinateur’ est mise à jour et je la testerai en embarquant le programme de l’Hubibox. Le processeur central est plus rapide, le processeur vidéo également, mais ce qui m’intéresse plus particulièrement c’est la Ram. Ainsi j’ai opté pour une carte de 4 Go contenue dans un petit boitier. Elle est déjà en rupture de stock. Je l’ai commandé en vue de tests en septembre. Le programme ne lisait pas les vidéos sur les précédentes versions. Espérons que je trouverai une solution pour combler cette lacune.

Galanian

Cette partie a débuté au 7 juin.

Le petit jeu de tir embarqué dans l’Hubibox contient de nombreuses lignes de code. Après cette phrase importante d’écriture et design, je corrige peu à peu les bogues, c’est assez fastidieux, voire peu intéressant et chronophage. Je le teste aussi sur la borne avec le joystick sous Linux. Finalement le plus simple c’était les graphismes et la musique !

Le 17 juin, le design s’est amélioré et ne devrait plus changer. Les bases sont pourvues de canons et les ennemis possèdent des déplacements plus fluides.

Malgré mes idées, je me limite à un projet le plus basique possible. Je souhaite en priorité corriger les bugs. Ainsi le niveau du jeu est généré aléatoirement et contient 8 bases ennemies à détruire. Il serait possible de réaliser des niveaux progressifs mais je m’économise du temps.

J’ai extrait uniquement cette partie du programme et elle est téléchargeable ici

Vous devez extraire et placer le dossier ‘galanian’ dans ‘Mes Documents’ pour que le programme trouve les données graphismes et sons et fonctionne correctement. Lancez le programme galanian.exe. Le code source est inclus.

Retour sous Android

J’ai repris une grande partie du code de la borne, zut, l’Hubibox pour changer l’accès au dossier des données. De ce fait elle fonctionne également sous Android. Cette version est similaire à la version Windows en ce qui concerne la lecture des vidéos (oui çà fonctionne !). Je l’ai testé sur ma box Android Ugoos 2Go de Ram qui est connectée à ma TV. Le dispositif de pointage est la souris-télecommande sans fil. Pour cette configuration j’ai désactivé les passerelles bluetooth écrite en c++ (pas de Robot ou Boite à cadeaux). C’est assez véloce.

J’ai également testé sur une Box Android sur laquelle était installée une des premières versions. Et tout fonctionne à merveille.