★ AMSTRAD CPC ★ GAMESLIST ★ FRACTALS ET SURVIE (c) JEUX ET STRATEGIE ★ |
Jeux & Stratégie |
Le programme que nous vous présentons permet de créer des cartes à l'image de celles que l'on trouve dans les atlas, et de les observer en perspective cavalière, avec les courbes de niveaux ou un ombrage dû à une source de lumière ponctuelle ou encore en suivant le graphisme dit en « fil de fer ».Le programme vous propose par ailleurs un jeu de survie basé sur le principe de la déduction.
En regardant tourner le programme fractal conçu par Didier Bouchon, auteur de l'Arche du capitaine Blood pour Ere Informatique (voir J&S n° 41, « Où vont les jeux micro ? »), on s'aperçoit que le motif de base est la pyramide. En effet, après avoir affiché quatre points, formant les sommets d'un carré, le programme affiche un cinquième point, à la verticale du jours...une immense pyramide. Le hasard contrôlé appliqué à un fractal crée le relief. De plus, le programme est paramétrable. Il vous demande la « taille de la maille », la « hauteur de base », la valeur de la « déviation » et une graine aléatoire. Avec les mêmes données, le programme crée les mêmes surfaces. CONSEILS DE PROGRAMMATION Le listing proposé tourne directement sur Amstrad CPC 6128. Les possesseurs de cette machine n'auront aucune modification à lui apporter. Les possesseurs d'Amstrad CPC 464 et 664 devront réduire un peu la taille de l'image affichée (pour réduire la place prise en mémoire vive). Au-lieu de taper DIM H(128,128), ils remplaceront la valeur 128 par 64 ou 32. Les possesseurs d'autres machines procéderont de même pour réduire la prise de cases mémoire. Ils rencontreront d'autres problèmes d'adaptation : le Basic et l'affichage. Pour ce qui est de l'adaptation de langage, une table a été conçue pour traduire les mots de Basic. De plus, dans certains cas, certaines lignes de programme comportent un REM Note... . En rencontrant REM Note 5, le lecteur se reportera à la note 5 pour comprendre comment il doit programmer. Par exemple, s'il peut ou non se dispenser de taper la ligne en question ou par quoi il y a lieu de la remplacer.
Note 1. La ligne 10 signifie, dans le langage de l'Amstrad, que toutes les variables seront entières : A, B, C, de E à Y et donc à l'exclusion de D et de Z. Il s'agit donc de l'équivalent de % placé derrière un nom de variable, par exemple A% signifie dans de nombreux Basic que la variable A est entière. Les utilisateurs qui ne possèdent ni le DEFINT ni le % utiliseront pour toutes les variables le mot de Basic INT. La valeur finale d'une variable A devra être A = INT(A). C'est-à-dire « partie entière de A », à l'exclusion des décimales. Note 2. Très important ! Il s'agit du « dimen-sionnement des variables indicées ». Il se peut que votre micro ne supporte pas les valeurs mises entre parenthèses. Essayez de trouver les valeurs les plus élevées possibles. Par exemple H(100,100). Ces valeurs conditionnent la taille de la carte que vous pourrez afficher à l'écran. Note 3. Ligne à supprimer (sauf pour Amstrad). Elle indique qu'on choisit une définition moyenne, que l'on place la couleur 18 dans le « godet » numéro 1. Le pinceau 1 (PEN.1) peindra en couleur 18. Note 4. Le WHILE-WEND est un test du type « tant que ... alors recommence ». La ligne 150 signifie simplement « tant qu'une touche n'a pas été frappée, retourne à la ligne 150. Bref « attends » ! On peut taper GET A$ ou 150 A$=INKEY$ : IF A$=“” THEN 150. Note 5. La ligne 160 propose deux GOTO adressés différemment, en 40 ou en 1380. En mode GOTO 40 (tel que le listing est présenté), vous pourrez créer des cartes,'mais pas jouer. En mode 1380, vous pourrez jouer sur une carte coloriée vue en plan, mais sans pouvoir accéder aux autres types de vue. Nous vous conseillons de sauvegarder deux fois votre programme lorsque vous l'aurez tapé. L'une avec GOTO 40 ; l'autre, avec GOTO 1380. Cette procédure, pour archaïque qu'elle puisse paraître, permet de gagner de la place. Note 6. La ligne peut être supprimée sur les machines ne disposant pas de cette instruction. Note 7. Cette ligne comporte un PLOT, c'est-à-dire un ordre d'affichage graphique. Il est toujours suivi des coordonnées en X et en Y désignant le point qui doit s'allumer. Il est de plus suivi de C qui désigne la couleur d'affichage. Attention ! Si C était supérieur au nombre de couleurs dont vous disposez, le programme s'arrêterait tout net. La valeur de C peut être modifiée à la ligne précédente, en 330. Pour réduire C, il suffit de multiplier la variable N par une valeur de votre choix et de fixer une limite à C. Par exemple, IF C supérieur à 5 alors C=5. Au PLOT X,Y,C on peut toujours substituer un ordre désignant d'abord la couleur, type COLOR=C, puis la position du point PLOT X,Y. Note 8. Cette note est indiquée en ligne 370 et 680. C'est le WHILE-WEND. Il peut aisément être transformé en 370 REM et 680 IF P < = 1 THEN GOTO 380. Note 9. Le AND &FFFE n'est pas indispensable, même pour les possesseurs d'Amstrad. Pour les autres machines, il n'est pas question de l'utiliser. Il a pour objet de rendre pair un bit particulier. LES VARIABLES REMARQUABLES Tout le programme est construit pour donner une valeur cohérente à la troisième dimension, celle qui donne le volume ! Les deux variables de base sont donc X, Y .La valeur Z qui désigne la troisième dimension est ici appelée H(X,Y). C'est la « Hauteur » au point de coordonnées X,Y. Mise en route du programme Cinq valeurs doivent être indiquées après avoir choisi l'option « nouvelle surface » :
Jeux et Strategie n°42 |
|
|
Page créée en 479 millisecondes et consultée 421 fois L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko. |