[Player #0] can be back ...

posté le 30 May 2006 à 22:44
Ça fait environ deux semaines ou deux semaines et demie que je suis là-dessus, et je commençais à en avoir un peu assez. Parce que du coup, je prends du retard sur d'autres choses importantes, notamment ne pas décourager les modeleurs en ne tenant pas compte de ce qu'ils ont fait.
En quoi ça consiste, exactement ? Il s'agit d'implémenter un système de sérialization/désérialization pour Samoth. Rien que ça, et déjà j'ai perdu la moitié de mes lecteurs.
En fait, le but est simplement de pouvoir sauvegarder une partie (i.e, un ensemble de maps visitées, la progression actuelle et le joueur lui-même) en quittant le jeu, et d'être capable de le restorer tel quel après. Pour cela, j'ai dû :
- implémenter quelques classes, parce que c'est bien facile de sérializer des trucs, mais encore faut-il qu'ils existent
- intégrer une bibliothèque capable d'écrire de manière élégante dans un .zip. J'ai finalement trouvé mon bonheur avec une bibliothèque ... dont le développement avait cessé il y a cinq ans. Donc il a fallu que je m'amuse à la modifier un peu, pour la rendre compatible avec les nouveaux standards.
- Pour chaque classe existante, créer une fonction *::serialize() qui enregistre les données dans un flux, au format xml.
- Au passage, me coltiner pas mal de machins que j'avais négligés (entre autres, Pathfinding, Effets magiques, ItemManager, SpellManager, etc.), histoire de faire un ensemble à peu près correct
- Corriger des erreurs de programmation, que j'ai repérées en parcourant le code.
- Créer la classe Deserializer, et toutes ses fonctions membres. Là, on nage dans le bonheur pur.
- Une fois tout ça fini (il y a deux jours, et encore, il en reste un peu), tester. Voir pourquoi ça ne marche pas. C'est long, rébarbatif, et tellement valorisant ...
- Mettre à jour une bibiliothèque utilisée, en pensant que ça corrigera un bug - qui se révélera être dû en fait à une simple erreur de ma part, mais passons. Oui, mais du coup, j'ai été bon pour environ six heures à essayer de comprendre pourquoi la nouvelle version d'Opal provoquait une erreur de segmentation. Joie. Heureusement que le principal développeur d'Opal m'a aidé.

Enfin, l'important, c'est que maintenant ça marche. On peut sauvegarder les données du joueur, et le recréer à partir d'elles. Carrément. D'ailleurs, voilà ce que ça donne, un joueur au format xml.

Un peu d'enthousiasme, bordel.

Commentaires

hohun a dit :
posté le 30 May 2006 à 23:15
Ça fait environ deux semaines ou deux semaines et demie que je suis là-dessus


Fake ! Tout le monde sait que tu étais sur Vampire : Bloodlines.

Agent_Double a dit :
posté le 31 May 2006 à 09:28
le XML c'est pour les GAYZ §

UltraVox a dit :
posté le 31 May 2006 à 09:41

Blade_Runner a dit :
posté le 02 June 2006 à 00:31
Tiens au fait , j'ai testé les derniers binaires l'autre jour (beau boulot), et j'ai remarqué qu'on va deux fois plus vite en appuyant sur avancer et fleche droite (ou gauche) en meme temps.

Et tant que j'y suis, si on arrive à monter là, c'est normal ?

(Et encore beau boulot.)

Ceacy a dit :
posté le 02 June 2006 à 19:09
J'ai effectivement remarqué le problème de la vitesse (il me semble d'ailleurs que ce n'est pas vraiment deux fois plus vite, mais un truc genre 1.414 fois plus vite), mais je n'y pensais plus : je viens d'essayer d'intégrer un correctif, je pense que c'est réglé.

Pour l'alpinisme, dis-moi : tu as fait comment ? :)

Blade_Runner a dit :
posté le 03 June 2006 à 16:40
Ca y est, il y a déjà des mecs qui détournent ton jeu pour faire des tricks.

En fait, maintenir le bouton "sauter" en regardant vers le bas permet de s'envoler tout doucement.
On retombe tout doucement aussi, j'ai l'impression.

Poster un commentaire

Invité

Vous souhaitez commenter immédiatement ce billet. Vous ne pourrez pas l'éditer une fois envoyé.

Membre

Vous êtes membre ou souhaitez vous créer un compte sur l'asile.fr


L'accueil de l'asile.fr Les blogs sur l'asile.fr S'abonner au flux RSS des articles

Rechercher

Quelques mots ...

Lecteur, avant toute chose, je me dois de t'avertir du contenu de cet encart. Je ne vais pas m'y étendre sur ce que je suis ou ne suis pas. Non pas pour ne pas t'ennuyer, c'est le cadet de mes soucis pour le moment, et puis ça arrivera tôt ou tard ; mais pour ne pas trop en dévoiler. Ce blog est le mien, et en tant que tel m'est dédié de long en large : me dépeindre — ou tenter de le faire — en quelques mots serait, plus qu'une erreur, un mauvais calcul. Et je déteste faire de mauvais calculs, ça me frustre.

Articles importants