BillyBox MO5

Cette catégorie traite de développements récents pour nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Baptiste
Messages : 121
Inscription : 11 mars 2013 15:17
Localisation : Vernouillet (78)

BillyBox MO5

Message par Baptiste »

Bonjour,

Pour mon premier post sur le forum System.cfg, je souhaite vous faire partager une de mes réalisations sur MO5 : Billy Box. Il s'agit d'un SOKOBAN, programmé en BASIC.

Voici l'archive :
http://www.freetalent.fr/download/BILLYBOX_mo5.zip

Celle-ci contient :
- le fichier .k7 (pour les émulateurs)
- les sources .BAS
- le listing au format PDF
- les sons .wav de chaque fichier

Bon jeu

Mise à jour de l'archive
http://www.freetalent.fr/downloads/billybox_patched.zip
Dernière modification par Baptiste le 19 juil. 2016 12:53, modifié 1 fois.
Rien ne sert de courir, en plus tu risques de tomber.
Markerror
Messages : 2121
Inscription : 31 oct. 2011 19:21
Localisation : Orléans
Contact :

Re: BillyBox MO5

Message par Markerror »

Salut Baptiste !

La version VG5000 du jeu ne devrait pas trop tarder à sortir :-).

Tu as d'autres projets sur des sasfépus ?

Amicalement.

Markerror
Daniel
Messages : 17288
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: BillyBox MO5

Message par Daniel »

Très belle réalisation, beaux graphismes, documentation digne d'un professionnel, félicitations :D
Un sokoban existait déjà sur Thomson, celui-ci le surpasse dans tous les domaines.

Pour pinailler, on pourrait diminuer le temps du chargement, de l'affichage et des déplacements avec de petites routines assembleur (comme dans l'Aigle d'Or). Un seul reproche : l'absence de son. Ce n'est pas facile sur Thomson, mais deux trois notes de musique et un bruitage lors des déplacements donneraient une bonne ambiance.
sokoban.png
sokoban.png (1.9 Kio) Consulté 11065 fois
Daniel
L'obstacle augmente mon ardeur.
Baptiste
Messages : 121
Inscription : 11 mars 2013 15:17
Localisation : Vernouillet (78)

Re: BillyBox MO5

Message par Baptiste »

Merci à tous,

Il est vrai que la version actuelle mériterai d'être améliorée.

Daniel -> Je vais ajouter un peu de son, avec la possibilité de le couper si il y a besoin. Pour l'affichage c'est un peu ce qui me manque. Une routine assembleur pour afficher de vraix Sprites, et non des DEFGR$.

Markerror -> Pas d'autres projets pour le moment, le temps me fait un peu défaut (comme nous tous). Mais je ne manquerai pas de vous informer.

Merci à tous.
Rien ne sert de courir, en plus tu risques de tomber.
Avatar de l’utilisateur
6502man
Messages : 12242
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: BillyBox MO5

Message par 6502man »

Sympathique ce sokoban :D

Pour le son il y a des instructions basic dédiées sur les THOMSON ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.
Baptiste
Messages : 121
Inscription : 11 mars 2013 15:17
Localisation : Vernouillet (78)

Re: BillyBox MO5

Message par Baptiste »

Oui, il y a le mot clé PLAY "".

exemple :
PLAY "DOREMIFASOLASI".
Rien ne sert de courir, en plus tu risques de tomber.
Avatar de l’utilisateur
Carl
Modérateur
Messages : 13232
Inscription : 08 avr. 2007 13:21
Localisation : http://www.doledujura.fr
Contact :

Re: BillyBox MO5

Message par Carl »

Bravo Baptiste pour ce Sokoban, pour ceux qui ne l'on pas encore testé :


carl
__sam__
Messages : 7909
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: BillyBox MO5

Message par __sam__ »

Super programme. Juste au passage une petite astuce pour l'accélérer. Je n'ai vu aucun DEFINT, du coup toutes les variables sont des nombres flottants, lesquels sont lents à manipuler. Si on ajoute entre les lignes 120 et 130

Code : Tout sélectionner

125 DEFINT A-Z
alors toutes les variables du programme seront des entiers 16bits qui sont plus rapides que des nombres flottants. Le gain doit être marginal car il n'y a pas de grosses boucles "for" dans le programme, mais c'est une optim facile et rapide, donc je passe le tuyau.

Autre micro optim: à la fin d'un PRINT si on ajoute un ";", le curseur ne retourne pas en début de ligne, donc on économise l'envoi automatique de CHR$(13)+CHR$(10) par le basic. Un objet graphique coutant 7 caractères, le PRINT sans ';' sera 9/7 fois plus lent (28%) que sans le ';'.

Dernière optim: Si on ne met pas de variable dans un NEXT, non seulement ca marche toujours, mais c'est beaucoup beaucoup plus rapide:

Code : Tout sélectionner

FOR I=0 TO 5000:NEXT I
prends 7.6secs,

Code : Tout sélectionner

FOR I=0 TO 5000:NEXT
prends 4secs.

Nota: ces optims sont marginales, la méga-optim viendrait d'un portage en ASM (ce que je crois être assez facile).

sam (level1=28 depl., peut-on faire moins?)
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Baptiste
Messages : 121
Inscription : 11 mars 2013 15:17
Localisation : Vernouillet (78)

Re: BillyBox MO5

Message par Baptiste »

Merci à carl pour cette vidéo. Je vais intégrer les optimisations de Sam et je mettrai à jour le lien.

Baptiste.
Rien ne sert de courir, en plus tu risques de tomber.
Baptiste
Messages : 121
Inscription : 11 mars 2013 15:17
Localisation : Vernouillet (78)

Re: BillyBox MO5

Message par Baptiste »

Voici une mise à jour de l'archive. Elle contient désormais une version .fd pour TO8, modifée par Mister Alexander.
http://www.freetalent.fr/downloads/billybox_moto.zip

Merci à lui.

Baptiste.
Rien ne sert de courir, en plus tu risques de tomber.
critor
Messages : 22
Inscription : 20 juil. 2014 20:50

Re: BillyBox MO5

Message par critor »

Quelqu'un a-t-il conservé le jeu ?

Tous les liens semblent hélas brisés, et je ne le trouve pas sur dcmoto. :(


Merci bien.
Daniel
Messages : 17288
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: BillyBox MO5

Message par Daniel »

Je ne sais pas pourquoi j'ai oublié de mettre BillyBox sur le site dcmoto, car il est vaut largement certains jeux commerciaux.
Par contre je l'ai conservé dans mes archives :
billy-box_v2.zip
(241.6 Kio) Téléchargé 287 fois
Daniel
L'obstacle augmente mon ardeur.
critor
Messages : 22
Inscription : 20 juil. 2014 20:50

Re: BillyBox MO5

Message par critor »

Ah merci beaucoup Daniel. :)

C'est ce que je pense aussi, et cela aurait été dommage qu'il disparaisse.
critor
Messages : 22
Inscription : 20 juil. 2014 20:50

Re: BillyBox MO5

Message par critor »

Bonsoir,


Je pense avoir trouvé une petite erreur au niveau 9:
Image

Si on regarde bien les données dans BB1.BAS, ce niveau n'a pas de position de départ pour le joueur (valeur 5), ce qui le met par défaut en dehors de la carte en haut à gauche.

Code : Tout sélectionner

500 DATA 1,1,1,1,1,7,0,0,0,1,1,1,1,1,1,1
510 DATA 1,6,0,0,0,1,0,0,0,0,0,0,1,6,0,0
520 DATA 0,1,0,0,0,2,0,0,1,6,1,1,1,1,0,1
530 DATA 3,1,2,0,1,6,1,4,4,4,0,3,0,4,2,0
540 DATA 1,6,1,4,3,1,0,1,3,1,0,0,1,6,1,4
550 DATA 0,1,0,2,0,0,0,0,1,6,1,0,2,2,0,0
560 DATA 0,0,2,0,1,6,1,0,0,1,1,1,1,1,1,1
570 DATA 1,6,1,1,1,1,7,0,1,1,1,1,1,1,1,1
(les données du niveau 9 se lisent ligne à ligne entre les deux valeurs 7 - chaque valeur 6 est une fin de ligne)

Mais même si on corrige en positionnant le joueur ailleurs, le niveau reste insoluble puisqu'il y a :
  • 6 emplacements vides (valeur 4)
  • 4 caisses sur des emplacements (valeur 3)
  • 7 autres caisses (valeur 2)
Cela nous fait donc :
  • 6+4=10 emplacements
  • 7+4=11 caisses
Je suppose que c'est une petite erreur de typographie dans les données et que c'est donc une caisse qui est à remplacer par la position de départ du joueur.
Mais faut-il encore le faire de sorte à ce que le problème reste soluble, et vu comme je viens de peiner au niveau 8 je préférais avoir un peu d'aide sur la correction la plus pertinente à apporter.


D'ailleurs, je me demande bien comment Daniel a fait pour arriver plus loin dans le jeu d'après la capture d'écran plus haut.
J'utilise la version disquette.


Merci.
Daniel
Messages : 17288
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: BillyBox MO5

Message par Daniel »

Tu ne crois quand même pas que j'ai joué au Sokoban pour faire les copies d'écran :wink:
Je ne joue jamais aux jeux vidéo, je suis trop mauvais. J'ai certainement triché pour afficher les écrans sans jouer.
Daniel
L'obstacle augmente mon ardeur.
Répondre