[VG5000] Lode Runner
Modérateurs : Papy.G, fneck, Carl
Re: [VG5000] Lode Runner
Je pense qu'effectivement, il est impossible de passer la ligne jaune, car elle est pas cassable.
C'est Guillaume qui l'a dit !
Mais, la ligne de brique rouge, elle est cassable à fond.
La bordure du tableau en jaune n'est pas paramétrable dans la feuille Excel, car elle est affichée dans le programme Basic.
Purée… y en a qui sont fatigué… travaillez moins vite ! On a le temps...
C'est Guillaume qui l'a dit !
Mais, la ligne de brique rouge, elle est cassable à fond.
La bordure du tableau en jaune n'est pas paramétrable dans la feuille Excel, car elle est affichée dans le programme Basic.
Purée… y en a qui sont fatigué… travaillez moins vite ! On a le temps...
Re: [VG5000] Lode Runner
Il y a un bug dans la version BASIC de Lode Runner ligne 573
Si on touche un ennemi alors que celui ci est en sa position initiale alors il n'est pas réaffiché puisque ses coordonnes sont ses originales et celle du joueur. La ligne 573 devrait être en 568. Je m'en suis rendu compte, puisque pour l'instant je teste la versoin assembleur sans gestion des mouvements des ennemis.
Si on touche un ennemi alors que celui ci est en sa position initiale alors il n'est pas réaffiché puisque ses coordonnes sont ses originales et celle du joueur. La ligne 573 devrait être en 568. Je m'en suis rendu compte, puisque pour l'instant je teste la versoin assembleur sans gestion des mouvements des ennemis.
Re: [VG5000] Lode Runner
Salut,
Voilà, pour ma version expurgée. Le code assembleur de MarkError n'a pas été inclus car les trente niveaux poussent la mémoire des variables au niveau de la limite de la routine.
Voilà, pour ma version expurgée. Le code assembleur de MarkError n'a pas été inclus car les trente niveaux poussent la mémoire des variables au niveau de la limite de la routine.
Re: [VG5000] Lode Runner
Hello hello,
Vous avez vu juste Joaopa et Xavier, c'est dans le code que la ligne en dessous du tableau de jeu (donc confondu avec la bordure jaune du bas) est rempli de brique incassable:
134 FOR I=1 TO 28:T(I,17)=2:NEXT I
Ce qui évite au héro de tomber dans les abimes.
Vous avez vu juste Joaopa et Xavier, c'est dans le code que la ligne en dessous du tableau de jeu (donc confondu avec la bordure jaune du bas) est rempli de brique incassable:
134 FOR I=1 TO 28:T(I,17)=2:NEXT I
Ce qui évite au héro de tomber dans les abimes.
Re: [VG5000] Lode Runner
Ben voilà, c'était bien dans le tableau... du BASIC
Re: [VG5000] Lode Runner
Quelqu'un peut-il confirmer que le dernier caractère définissant le tableau est Z (ascii=90), le premier du deuxième tableau est % (ascii=37)?
Re: [VG5000] Lode Runner
Si ta question est : "Y a-t-il des balises pour la fin de tableau ?"
Non, il n'y a pas de balises, hormis le tag de fin "!" v=33.
Le programme rempli l'écran en calculant les ordonnées et les abscisses.
Il compte X, si X>28 , on incrémente Y.
Si Y= 17, on fini la boucle de lecture.
Donc, la lecture reste à l'offset OS, prêt pour le prochain tableau.
Dernier caractère :
Tableau 1: v=90
Tableau 2: v=37
Tableau 3: v=125
Tableau 4: v=57
Tableau 5: v=111
"134 FOR I=1 TO 28:T(I,17)=2:NEXT I"
Ha, oui. Une erreur de lecture sur la K7 originale !
Un truc comme ça : 134 FOR I=1 TO 28:T(I,17)=2 REM NEXT I
J'ai donc modifié l'erreur de tocken...
Non, il n'y a pas de balises, hormis le tag de fin "!" v=33.
Le programme rempli l'écran en calculant les ordonnées et les abscisses.
Il compte X, si X>28 , on incrémente Y.
Si Y= 17, on fini la boucle de lecture.
Donc, la lecture reste à l'offset OS, prêt pour le prochain tableau.
Dernier caractère :
Tableau 1: v=90
Tableau 2: v=37
Tableau 3: v=125
Tableau 4: v=57
Tableau 5: v=111
"134 FOR I=1 TO 28:T(I,17)=2:NEXT I"
Ha, oui. Une erreur de lecture sur la K7 originale !
Un truc comme ça : 134 FOR I=1 TO 28:T(I,17)=2 REM NEXT I
J'ai donc modifié l'erreur de tocken...
Re: [VG5000] Lode Runner
@Xavier: As-tu modifié les tableaux de Guillaume. Dans le tableau 2, je peux monter entre les échelles (celles tout à droite) avec ton fichier. Avec le fichier de Guillaume, on ne peut pas.
EDIT:
Après avoir compris le tableau, je pense qu'il y a un bug dans ton code Xavier (et dans le mien aussi )
A la position dite, il s'agit de l'échelle de sortie. Avec ton code et le mien, on peut l'utliser même si elle n'est pas affichée
EDIT:
Après avoir compris le tableau, je pense qu'il y a un bug dans ton code Xavier (et dans le mien aussi )
A la position dite, il s'agit de l'échelle de sortie. Avec ton code et le mien, on peut l'utliser même si elle n'est pas affichée
Re: [VG5000] Lode Runner
Oui, j'ai modifié imperceptiblement le code pour pouvoir monter entre deux murs, deux echelles…
Le déplacement est moins rigide et à l'usage, ça permet de sauter et de s'accrocher en plein vol.
Le but était de ne pas rester bloqué dans un trou, et de pouvoir remonter, sans avoir à se suicider.
Et effectivement, il y a un problème avec les echelles de sorties, mais seulement sur certains tableaux.
Sûrement un décalage dans les données du à une mauvaise transition entre deux tableaux… probablement les tableaux 10 et 11.
Au tableau 15 tout redevient normal.
Le déplacement est moins rigide et à l'usage, ça permet de sauter et de s'accrocher en plein vol.
Le but était de ne pas rester bloqué dans un trou, et de pouvoir remonter, sans avoir à se suicider.
Et effectivement, il y a un problème avec les echelles de sorties, mais seulement sur certains tableaux.
Sûrement un décalage dans les données du à une mauvaise transition entre deux tableaux… probablement les tableaux 10 et 11.
Au tableau 15 tout redevient normal.
Re: [VG5000] Lode Runner
La ligne 585 se termine par un return. A quel gosub correspond-il? Ne s'agit-il pas d'un GOTO? Et si oui GOTO quelle ligne?
Re: [VG5000] Lode Runner
Code : Tout sélectionner
656 GOSUB690
…
690 E=T(AX,AY):CURSORX AX+SX:CURSORY AY+SY:ET CO(E):PRINT CHR$(100+E)
692 CURSORX EX(N)+SX:CURSORY EY(N)+SY:ET CO(8):PRINT CHR$(108):IFEX(N)=XANDEY(N)=Y GOTO 560
…
585 IF(X+D-1)<1OR(X+D-1)>28ORY=16THENRETURN
Re: [VG5000] Lode Runner
En ligne 571, il y a un goto. Comment fait-on pour atteindre la ligne suivante (ligne 585)?
Re: [VG5000] Lode Runner
Code : Tout sélectionner
505 IFACTION(2)=1 GOTO 585
Code : Tout sélectionner
571 X=O:Y=P:NX=X:NY=Y:GOSUB920:GOTO 900
Re: [VG5000] Lode Runner
Ah les joies du BASIC spaghetti... ^^
Re: [VG5000] Lode Runner
@Guillaume: As-tu eu le temps de programmer le mode CHASE?
une autre question: pourquoi quand stickx est actionné vers la droite (ligne 500), il y a un test pour D (D=0 ou D=2) et il y en n'a pas pour stickx actionné vers la gauche?
Encore un bug: en position initiale, creusez un trou en dessous. Tombez dedans et suicidez. Au réaffichage, le joueur lévite. Pour éviter ce type de problème, le plus simple serait de refaire le niveau en entier. En plus ça corserait le jeu.
une autre question: pourquoi quand stickx est actionné vers la droite (ligne 500), il y a un test pour D (D=0 ou D=2) et il y en n'a pas pour stickx actionné vers la gauche?
Encore un bug: en position initiale, creusez un trou en dessous. Tombez dedans et suicidez. Au réaffichage, le joueur lévite. Pour éviter ce type de problème, le plus simple serait de refaire le niveau en entier. En plus ça corserait le jeu.