Tout ce qu'on fait compte !
Dans un projet sur CPC, il y a toujours un moment où l'on tombe sur un éceuil : La mémoire !
Dans l'informatique depuis ces 20 dernières années, on a pris la mauvaise habitude de ne plus regarder à la dépense en termes de mémoire, amoins de travailler sur des volumes colossaux, en général notre PC est capable d'encaisser des codes long de plusieurs méga octets sans sourciller.
Mais sur notre CPC sorti en 1984, il en va bien évidemment autrement ! Lorsque l'on stocke en mémoire, du texte, chaque lettre représente un octet. Et nos 41 kilo octets disponibles en Basic, sont vite consommmés si l'on prend de mauvaises décisions ! Ainsi, pour stocker les objets entreposés dans les différents lieux du monde, j'avais prévu de créer un tableau de chaîne de caractères et de concaténer dans chaque case correspondant chacune à un tableau, les identifiants des objets présents. La forme aurait été pour me simplifier la vie 00035;00046;00008;
Cela consomme évidemment plus de stocker les nombres sous forme de caractères, mais d'un autre coté, je peux facilement étendre la longueur de ma chaine pour stocker plus d'objets sans avoir trop de contraintes. Je pars donc sur cette solution sans trop me poser de questions.
Puis, je me dis, que gérer les chaines en Basic sur CPC c'est pas la panacée, donc pour indiquer que j'ai supprimé un objet dans un lieu après l'avoir pris, je vais remplacer l'identifiant de l'objet par des espaces. Ces mêmes espaces pourront ensuite être repris pour stocker un nouvel identifiant d'objet ensuite.
Sur le papier, l'utilisation de mémoire reste assez contenu tant que l'on n'utilise pas trop d'objets différents dans le jeu !
Or si l'on veut rendre le jeu, un peu plus difficile, il faut forcément mettre des objets inutiles pour que le joueur se triture les méninges sur des pistes qui ne mènent à rien sans quoi, le jeu sera aussi simpliste qu'un scénario de scoobidou et à chaque objet trouvé, vous vous exclameriez "Oh, regardez un indice !".
Cela m'embêterait de devoir gérer ça, en le stockant sur la disquette tableau par tableau, car ensuite, à chaque nouvelle partie, on récupèrerait les objets dans les lieux où on les a laissé dans la partie précédente.
Commentaires
Enregistrer un commentaire