Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » Mario Party
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Mario Party

Posté le 09/04/2014 18:36

Ça fait un moment que je cherchais un nouveau projet de jeu : je voulais quelque chose d'innovant avec une bonne durée de vie.
Ce sera donc un Mario Party jouable sur 2 calculettes !



Principe :
C'est le même que le vrai jeu.
En gros ça se joue sur un plateau et tour à tour les joueurs lancent un dé (enfin le tapent avec le poing pour être exact).
Ils choisissent où aller, les cases peuvent avoir des pièces, bonus/malus ou des actions spéciales.
Régulièrement les joueurs défient leur adversaire dans des mini jeux assez divers et funs.
Le but est de cumuler un maximum de points ou d'étoiles.

Détails techniques :
Le jeu sera en basic, j'ai déjà pas mal réfléchit au fonctionnement
Pour faire simple : au lancement du jeu "l'hébergeur" enverra un code de quelque chiffres à l'autre joueur (sorte de seed qui permettra d'avoir le même aléatoire sur les 2 calto sans avoir à s'envoyer des codes à chaque déplacement).
Chacun verra son joueur sur son écran, au moment des mini jeux ce sera chacun sur son écran (jeu de rapidité, précision...).
A la fin de chaque mini jeu il y aura un court code à recopier (6 chiffres ? 4 ou 5) qui servira à mettre à jour quelques éléments (qui a gagné, points, position...).

Progression du projet :
J'ai fait pas mal de tests et cherche des idées pour les divers mini-jeux.
La génération aléatoire à partir du seed fonctionne.
Dernière mise à jour : 14/07/2014


Alphacreator Hors ligne Membre Points: 1464 Défis: 43 Message

Citer : Posté le 13/04/2014 15:51 | #


Tu veux dire que ta picture 5 vaut 1024+256=1280 octets? Tu te sers donc d'un éditeur hexadécimal pour rajouter les 256 octets si j'ai bien compris?
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 13/04/2014 16:07 | #


Tout à fait.
En fait il faut alterner 1024 octets fait de petites images, 1024 octets vides...
Mais pour gagner une picture je fusionne l'image vide de 1024 octets avec la petite image suivante.

Ajouté le 13/04/2014 à 16:15 :
J'ai modifié mes explications à la page précédente, j'espère que ce sera plus clair
Voilà ce que ça donne si on veut utiliser l'image de droite :

Chaque rectangle de gauche représente une picture, les pointillés deux pictures qui ont été fusionnées.

J'espère que cette technique servira à d'autres jeux en tout cas

J'ai calculé que l'image du plateau pèsera 4608 octets.
Tweaks : ||||| ||||
Alphacreator Hors ligne Membre Points: 1464 Défis: 43 Message

Citer : Posté le 13/04/2014 16:18 | #


Ok, merci
Riptor Hors ligne Membre Points: 722 Défis: 0 Message

Citer : Posté le 13/04/2014 18:29 | #


Niquel ton tuto avec les gifs, ça serait bien de le poster ailleurs pour en faire profiter un max de personnes :-)
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 14/04/2014 12:53 | #


Je voulais d'abord faire une démo sur la calculette mais j'ai un problème : j'ai modifié des g1m contenant une image (en rajoutant / supprimant des parties, avec un éditeur hexadécimal) mais impossible de l'ouvrir avec fa-124 après...
Il doit y avoir autre chose à modifier dans le fichier, quelqu'un peut m'aider ?
Tweaks : ||||| ||||
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 14/04/2014 16:02 | #


Je suppose que ça doit se trouver au niveau du header, qui doit contenir une nomenclature des fichiers, non ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 14/04/2014 16:07 | #


Le mieux que je puisse te conseiller c'est de regarder le code de Picture 1024 pour savoir quelles modifications faire.
Mon jeu Yétisport ic utilise exactement ta technique pour faire un scrolling sur plusieurs écrans, tu pourrais peut être réutiliser la "structure" des images. Pour ce jeu j'avais aussi du modifier manuellement certaines images, notamment pour avoir accès aux pixels inaccessibles en basic.
Peut-être que j'améliorerais Picture 1024 cet été, pour permettre une modification plus poussée des pictures et des captures, mais pas dans l'immédiat.
J'espère cependant que tu parviendra à modifier tes images car le projet semble très prometteur
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 14/04/2014 18:14 | #


Merci, j'ai trouvé ça dans les sources mais je ne comprend pas :
//taille fichier
header[14]=(0xFF-(unsigned short)((size+141)%256))&0xFF;
header[18]=(0xFF-(unsigned short)((size+76)/256))&0xFF;
header[19]=(0xFF-(unsigned short)((size+76)%256))&0xFF;
header[20]=(0xFF-(unsigned short)((size+4)%256))&0xFF;
//taille picture
header[71]=((unsigned short)(size/256))&0xFF;
header[72]=((unsigned short)(size%256))&0xFF;

Le seul truc que j'ai comprit c'est que l'entête fait 76.
Edit : j'ai pigé pour la taille des images.

Pour l'amélioration de Picture 1024 ça serait cool
Tweaks : ||||| ||||
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 14/04/2014 18:18 | #


Ce qui est sûr, c'est que ce code place à header[71], la valeur de size (d'ailleurs le calcul est optimisable: "size/256" en "size>>8" et "size%256" en "size&255").

À header[14], on met 255-l'octet bas de (size+141).
Enfin, à header[18], on colle sur deux octets, non pas size[76] (qui est un short), mais chacun de ses octets soustraits à 255.
Par contre pour l'interprétation, je n'ai aucune idée.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 14/04/2014 18:32 | #


J'avais fini par trouver pour 71 et 72.
Mais le reste je n'ai toujours pas comprit

Enfin il me semblait avoir comprit mais les valeurs ne correspondent pas avec ce que je trouve dans les fichiers non modifiés.
Tweaks : ||||| ||||
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 14/04/2014 18:40 | #


Un short est composé de 2 octets, celui qui comprend les bits de plus haute valeur est appelé octet "haut", et l'autre est l'octet "bas" (mais je ne t'apprends rien ).
short%256 représente l'octet bas.
short/256 représente l'octet haut.

Et je me suis trompé, size est un unsigned short et pas un unsigned short * comme je le supposais.
Ensuite, on a les 0xFF (255), valeur maximale d'un octet, qui "inverse" les octets haut ou bas, mais je vois pas pourquoi il est utilisé.

On a donc, à header[14], l'inverse de l'octet bas de size+141, et à header[20], l'inverse de l'octet bas de size+4.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 14/04/2014 18:47 | #


En règle générale, c'est plutôt short>>8 qui sert pour désigner l'octet haut
ej chipote
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 14/04/2014 18:57 | #


Oui, moi-même je ne supporte pas de voir /256 ou %256

Lephenixnoir a écrit :
[...] d'ailleurs le calcul est optimisable: "size/256" en "size>>8" et "size%256" en "size&255" [...]

Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 14/04/2014 20:24 | # | Fichier joint


Si tu veux j'ai retrouvé une vieille doc faites par le bon vieux Dafp.
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 14/04/2014 20:40 | #


Après un petite pause j'ai tout de suite compris, en faite c'est pas compliqué
Merci !
Tweaks : ||||| ||||
Alex_1186 Hors ligne Membre Points: 1215 Défis: 46 Message

Citer : Posté le 20/05/2014 20:44 | #


Super ton tuto! Je viens de le voir...
Merci de nous avoir fait partager cette technique, c'est effectivement très astucieux!
Projets que je soutiens
Projets que je soutiens
Robscape 2 de Ray
Les tests vidéo de Marmotti
Mes projets
Mes projets
Une dizaine de projets top secrets...

Timeless Remix Airwolf
"And the dream will never die..."
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 21/06/2014 20:46 | #


Up !
Pour que tu puisses finir ce projet ambitieux et très innovant je travaille activement sur une nouvelle version de Picture 1024.
J'espère le finir d'ici une semaine.
I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 07/07/2014 18:57 | #


Je compte m'y remettre sérieusement pendant ces vacances
C'est vraiment cool pour Picture 1024.

Ajouté le 10/07/2014 à 16:11 :
J'ai fait mon système de de seed et de code.
Ils feront tout deux 4-5 chiffres en principe, ça sera pas trop pénible à taper...

Maintenant je vais jouer à mario party pour trouver des idées de mini-jeux
Il y en aura des classique et d'autres qui utiliseront la calculette de manière plus originale.
Je pense utiliser quelques pictures pour faire des bouts de décor que je superposerai de différentes manières dans certains mini-jeux (histoire d'avoir quelque chose de joli et un minimum varié).
Par contre je sais pas du tout combien je vais faire de mini-jeux.
Tweaks : ||||| ||||
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 10/07/2014 17:08 | #


Tu devrais en faire 15-20 par catégorie (mélée générale, 1vs3, bowser et un ou deux autre je crois)

Et pour les jeux calculettes, tu peux en faire de ceux qui sont ici comme curve ou autre
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 10/07/2014 17:25 | #


C'est impossible techniquement les jeux 1 vs 3 etc... il faudrait que les informations circulent en direct par câble...
Ce sera plutôt des jeux des rapidité, de précision, où il faut faire un maximum de points, etc... Des jeux avec un score pour soit à la fin quoi.
Tweaks : ||||| ||||
Eiyeron Hors ligne Ancien modérateur Points: 5525 Défis: 57 Message

Citer : Posté le 11/07/2014 11:49 | #


Chouettos, c'est un turc de ce genre que je voulais voir avec CASParty! Bonne chance, je veux voir un projet terminé!

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 93 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd