Cent soixante-quatorze commits, la semaine la plus dense du projet. Un seul sujet : retirer au joueur le pouvoir de décider, et le donner au serveur.
Pourquoi tout reprendre
Dans un jeu solo, le programme qui tourne chez le joueur calcule tout : les dégâts, les gains d’expérience, le contenu de l’inventaire. En ligne, cela veut dire qu’un joueur peut s’attribuer ce qu’il veut. Chaque règle du jeu a donc dû être déplacée, une par une, du client vers le serveur.
Les points de vie d’abord, puis les monstres, le butin, l’inventaire, l’équipement, les potions, les sorts, les personnages non joueurs, la progression, les quêtes, l’expérience, le mana, les statistiques de base, et pour finir la position du personnage.
Ce que la migration a révélé
Déplacer une règle vers le serveur casse souvent son affichage sans prévenir : la valeur est bien calculée, elle ne redescend simplement plus jusqu’au joueur, et aucune erreur ne le signale. Quatre pannes de ce type se sont succédé avant que le motif ne soit identifié.
D’autres défauts dormaient depuis longtemps et ne sont apparus qu’en mesurant : un bonus de force qui n’augmentait aucun dégât, des poings qui battaient toutes les armes du jeu, un anneau modélisé à dix-sept mètres au lieu de dix-sept centimètres.
La table d’expérience a fait un aller-retour complet : elle a été « corrigée », puis restaurée quand la vérification a montré que le code avait raison depuis le début, sur cent quatre-vingt-dix-neuf paliers.
Un incident
Le 3 août, une fiche de personnage a été écrasée. La cause : un exécutable de test lancé sans ses identifiants, qui démarre, ne charge rien, et sauvegarde du vide par-dessus le vrai personnage. Le serveur a depuis interdiction d’écrire une fiche qu’il n’a pas su lire au préalable.
Plusieurs personnages, et des comptes
La semaine se termine par l’arrivée des comptes joueurs : écran de connexion, création de compte, liste de personnages, écran de création avec aperçu orientable à la souris et zoom à la molette. Le personnage masculin est ajouté, avec son corps, son visage et sa synchronisation réseau.
En parallèle, la documentation du projet est passée de huit mille lignes à moins de sept cents, le reste étant archivé dans un journal de session. Une note qu’on ne relit plus ne sert à personne.

