Banque terminée

Banque terminée, non sans une sérieuse prise de tête : la base de données des inventaires était pourvues de deux index, un sur l’ID du personnage, l’ID de l’inventaire et le numéro de slot. Le deuxième sur l’ID du personnage et le numéro de slot, soit la première version avant que je n’introduise les numéros d’inventaire pour permettre la banque et les coffres de maison. Or, ces deux index entraient en conflit et dans certaines circonstances non seulement un inventaire ne s’enregistrait pas mais surtout tous ses objets étaient effacés de la base de données.
J’avais cru remarquer un comportement étrange ces derniers jours mais, occupé par mon développement, n’y avais pas prêté attention.
Quand je me suis rendu compte que le problème était réel et toute la mécanique des inventaires corrompues, gros stress pour trouver le coupable, qui se cachait bien profond là où il était sûr que je n’irais pas le chercher. Qui aurait pu croire qu’un vieil index traînait au fond du back-end ?

Enfin, c’est réglé, tout est testé et fonctionne parfaitement, j’ai déjà attaqué les sacs de loot, laissés au sol par les mobs ou par un joueur qui veut faire un échange rapide avec un copain ou se délester d’objets inutiles.

Pour finir, un addon d’unwrap pour Blender, un jour peut-être, quand je serai sorti de la technique !

#Blender #unwrap #UVs

Banque

Je devrais avoir fini demain la banque, tous les autres bugs connus étant résolus.

C’est un peu pénible de travailler en même temps avec le C++ et les blueprints éclatés de partout, mais après la banque il me restera à gérer le dépôt d’un objet par terre et les marchands.

Ca avance !

La reprise du boulot fut violente !

Une semaine de vacances et je recommence le travail par ce qui aurait dû être la correction d’un bug anodin : ouvrir plus qu’un inventaire à la fois empêche de fermer le premier inventaire ouvert.

Tu vois, dis comme ça, c’est tellement simple !

En fait, le bug provenait de la variable que je crée à l’ouverture d’un inventaire… qui est la même variable utilisé à l’ouverture des inventaires suivants, écrasant la référence aux inventaires précédents. Pour remonter jusqu’au bug, il m’a fallu relire tout le C++ des inventaires, fouiller dans les blueprints, retracer le chemin logique, bien souvent en passant du C++ aux blueprints en plusieurs allers-retours. Un cauchemar. Le stress vient qu’à chaque étape du développement technique, je ne peux pas me permettre de caler : si je cale, c’est fin de développement et projet à la poubelle. Pas évident de vivre avec ce stress après avoir travaillé plus de six mois sur le projet. Je peux vivre avec un truc pas très joli ou pas très bien fini, mais un bug comme aujourd’hui, ça passe, ou ça casse !

Il m’aura fallu cinq heures pour régler le problème. Dans l’absolu, c’est peu, mais la charge mentale consommée ne se mesure pas en heures mais dans une unité de mesure qui reste à inventer. C’est à un point où le matin quand je dois ouvrir le projet j’ai carrément les jetons et procrastine autant que je peux. Les inventaires, c’est le boss de fin du développement, je sais que je rencontrerai encore des difficultés après le développement technique mais j’ai vraiment envie d’avoir les fondations derrière moi, j’ai passé l’âge de ces conneries !

Une semaine de vacances

Pas pris un jour de repos en six mois, là je me suis pris une semaine.
J’espère que ça me rendra du peps pour terminer les tooltips, les vendeurs et la banque.

Tooltips

Sont moches, je dois les revoir, l’avantage c’est que je les gère en C++, j’ai juste à changer le code pour changer l’ancrage.

Après ça, tester si plusieurs coffres au même endroits fonctionnent bien, implémenter les marchands et la banque.

Et ce sera fini pour les inventaires !

En attendant, je monte un perso sur WoW pour accompagner mon fils, ça me fait perdre une semaine de travail mais je ne saurais pas faire autrement. C’est vraiment tout ce que je n’aime pas WoW, le leveling est une véritable corvée, le système d’artisanat est sans conteste ce que j’ai vu de pire, ce qui est bien dommage car j’aimais faire de l’artisanat et je n’ai encore vu aucun intérêt au système de maisons. Enfin, quand y faut, y faut !