Homère d'alors !
Hello chers abonnés, je n'ai pas donné de nouvelles depuis fin mai, il faut dire que le climat n'aide pas. Je profite de la fraicheur d'aujourd'hui pour avancer un peu sur le moteur du jeu, sur le sujet épineux de la sauvegarde !
Vous allez me dire, quel rapport avec le film de Christopher Nolan ? Rassurez-vous, je ne vais pas polémiquer sur le casting, cette polémique étant risible, si on n'aime pas un film, on ne va pas le voir, c'est tout ! Ce n'est pas non plus, une métaphore pour évoquer le temps de développement du jeu, qui le fait ressembler à un périple aux 1000 détours, non ce n'est pas ça le rapport !
Je ne vais pas non plus m'étendre sur la canicule, je ne l'ai déjà que trop fait, et actuellement, tout ceux qui souffrent des incendies dans le sud de la France, pâtissent bien plus que moi surtout qu'à présent je profite de la fraicheur d'un bel orage ! Je pense tout particulièrement, aux fans de rétro de Gironde, qui ont vu le ciel s'obscurcir, leurs forêts brûler, et du abandonner leur foyer ! Et je pense bien entendu, aux pompiers, aux pilotes des bombardiers d'eau !
Donc, je reviens au sujet. Cet après-midi, je commençais à programmer un mécanisme de sauvegarde de partie pour le jeu Felgon. C'était un de mes objectifs, pour faire mieux que le jeu l'ile au trésor dont la mauvaise gestion des variables rendait la sauvegarde impossible. De plus, vue la longueur du scénario, pouvoir sauvegarder et reprendre la partie plus tard reste une option très utile. Je reprends donc mon clavier et je me lance. Je décide de reprendre un mécanisme que j'avais récupéré dans un jeu d'aventures en Basic, programmé par Titan, qui utilise les 128 octets suivant l'adresse &BE7F. J'avais créé cette routine pour pouvoir passer toutes les variables virtuelles utilisées durant le scénario, pour les passer au programme de conclusion.
J'avais avancé durant l'après midi, je comprenais alors que je devais revoir mon format, car le nom du tableau courant n'étant pas un nombre, il ne pouvait pas être stocké comme les autres variables virtuelles qui sont forcément numériques dans mon moteur. J'avais trouvé une idée pour réquisitionner 3 octets dans la zone, qui me suffisaient pour reconstituer le nom du fichier de dialogue à charger. Je retouche donc la procédure qui sauvegarde les données pour la conclusion afin de sauvegarder ce nom de fichier et je m'aperçois en réfléchissant à la procédure pour la relire que mon format n'est pas très bon.
En fait, en mettant le nom du fichier, juste après les valeurs, et en ayant dans une variable basic du moteur, le nombre de variables, ça devenait possible de relire le fichier de sauvegarde et de redémarrer la partie où on l'avait laissée.
Mais alors quel rapport avec Homère ?
J'y arrive ! L'odyssée, doit son nom au nom grec d'Ulysse, Odysseus. Or Ulys, qui avait quitté son royaume d'Itaque pour faire la guerre à Troie, en rentrant se perd, fait le tour de la méditerrannée avec ses compagnons, et pendant ce temps là, sa femme Pénélope l'attendait ! Des hordes de prétendants se pressaient pour lui demander de se remarier, elle refusait et prétextait que pour faire son deuil, elle devait terminer de broder une tapisserie qu'elle défaisait tous les soirs.
Et bien nous y voila, après avoir bien réfléchi, j'abandonne ce format de données binaires que je trouve peu lisible, et qui allait me demander une nouvelle routine de lecture, pour repasser sur un format texte ! En effet, les variables au départ sont initialisées par un fichier "variables.txt" qui se trouve sur la première disquette. Je peux plus facilement créer un nouveau format reprenant le code gérant ce fichier, en ajoutant une ligne de plus à la fin. Ca demandera moins de modification au moteur, et ça sera donc plus cohérent avec le mode de fonctionnement prévu au départ.
Donc voila, n'en déplaise à Christopher Nolan, François Fillon et à Homère, j'ai fait ma Pénélope !
Commentaires
Enregistrer un commentaire