Un jeu de plateau

Programmation avancée de jeux en PureBasic
logis27
Messages : 34
Inscription : lun. 17/mars/2014 8:00

Un jeu de plateau

Message par logis27 »

Bonjour à tous.
Voici un jeu de plateau, genre très rare, et pourtant pouvant ouvrir la voie à d'autres façon de jouer.
Ne pas confondre jeu de plateau, genre jeu de l'oie ou monopoly, avec jeu de plateforme, genre donkey kong.
Le jeu que je vous présente permet de jouer de 1 à 4 joueur humain. Comme il faut 4 joueurs, les autres sont gérés par l'IA.
Il y a 6 thèmes possibles:
- Pirate
- Western
- Espace
- Jardin
- Bonbon
- Electron
La règle de jeu complète est inclue dans le programme.
Le jeu s'adapte automatiquement à la taille de l'écran.
Nous jouons en famille sur le TV familiale:
- pas de comptage d'argent -> c'est automatique
- pas de triche -> le PC gère tout le bazar
Pour l'utiliser, il faut la version 5.30 de PureBasic.
Il n'y a aucun appel aux particularités des OS donc il devrait tourner sur tous les OS: à vérifier. Merci ! :D
Il n'y a pas de fichiers compilés: obligation d'avoir une version officielle de PureBasic, pas une version d'essai.
Lien pour télécharger l'ensemble programme, images et données:
http://www.fichier-rar.fr/2015/04/11/bf-aventure/
A+
Dernière modification par logis27 le sam. 11/avr./2015 6:37, modifié 2 fois.
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Un jeu de plateau

Message par falsam »

Bonjour logis27 et merci pour ce partage :)

Une petite image de présentation (Ajouté le 15.04.15)

Image

Pour les frileux, il n'y a pas d’exécutable. Uniquement un source en purebasic à compiler avec PB 5.30 :)

Ne se lançant pas correctement depuis l'éditeur, j'ai crée l’exécutable que j'ai enregistré dans la racine du dossier du jeu.

:arrow: Décocher l'icone par défaut et le compilateur par défaut.

N'oubliez pas de mettre le son :)

Lancer l’exécutable et choisissez votre plateau (1 à 6) avec le clavier numérique. Attendez quelques instants.

Une fois le plateau affiché:

A la question Charger la sauvegarde ? répondre non (N sur votre clavier) si c'est la première fois.

Choisissez ensuite la couleur de votre pion (Un ding retenti) que vous validerez avec le bouton Oui.

Quatre tableaux représentant chacun des joueurs se trouve au centre du plateau.
Se sera à vous de lancer les dés avec la touche entrée pour chacun des joueurs avec la touche Entrée.
Le tableau de chacun des joueurs (y compris vous), s'anime quand vient leur tour.

Quand se sera votre tour, vous devez sélectionner avec le pavé numérique l'un des deux dés pour avancer !

:!: Mon souci est là : Ou lire l'affichage des des ?
Dernière modification par falsam le mer. 15/avr./2015 10:40, modifié 4 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
SPH
Messages : 4944
Inscription : mer. 09/nov./2005 9:53

Re: Un jeu de plateau

Message par SPH »

Ca a l'air super mais je ne pige rien a la regle du jeu !! :|

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
logis27
Messages : 34
Inscription : lun. 17/mars/2014 8:00

Re: Un jeu de plateau

Message par logis27 »

:mrgreen:
Bah il faut lancer les dés pour chaque joueur: bouton clignotant entre les 2 dés
Pour les joueurs humains, ceux pour lesquels vous avez choisi la couleur, il faut ensuite cliquer sur un des dés et votre pion avancera du nombre de cases indiquées par le DE choisi.
Pour les joueurs automatiques, ceux dont vous n'avez pas choisi de couleur, il faut aussi lancer les dés et l'IA choisira le dé voulu.
Le but est de ramasser les 12 objets pour terminer le jeu. Le classement se fera en fonction de votre fortune à la fin.

Chez moi la sélection du thème se fait par les chiffres du pavé numérique verrouillé ou pas. Windows 8.1

@falsam
Ok pour l’icône non inclue dans l'archive

En tous cas merci pour le retour. :D
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Un jeu de plateau

Message par falsam »

J'ai modifié mon approche du jeu dans mon commentaire précédent, mais la question persiste : Ou s'affiche les deux des ?

Après discutions sur le chat, GallyHC a apparemment plus de chance que moi, car les dés apparaissent bien sur son moniteur alors que chez moi ça donne ça

Image

alors que je devrais voir ceci

Image
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
SPH
Messages : 4944
Inscription : mer. 09/nov./2005 9:53

Re: Un jeu de plateau

Message par SPH »

Moi, pareil que le bug de falsam :?

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
logis27
Messages : 34
Inscription : lun. 17/mars/2014 8:00

Re: Un jeu de plateau

Message par logis27 »

Le jeu est peut être en pause, touche pause.
Si c'est le cas c'est indiqué sur la ligne en haut.
Cette ligne de commentaires donnent la marche à suivre.
Si les dés n'apparaissent pas c'est soit:
- il attend que vous répondiez O ou N à la question: chargez la sauvegarde ? O/N
- il attend que vous choisissiez une couleur et appui sur le bouton O
- il est en pause: **** PAUSE ****
Je viens de découvrir un bug avec la pause qui fonctionne mal.
Ligne 245 et suivante:

Code : Tout sélectionner

AffTexte()  	  
AffCase()
AffBouton()
If Pause=0
    AffHeure()
    AffDes()		
    AffVoyant()
EndIf	  		
AffObjet()
AffPrime()
AffFortune()
AffGain()	  
AffEnergie()				
AffJackpot()
AffJoueur()
Il faut rajouter " And NoSequence<100" à la fin des lignes:
- 654:If KeyboardPushed(#PB_Key_Pause) And Touche=0 And Pause=0 And NoSequence<100
- 659:If KeyboardPushed(#PB_Key_Pause) And Touche=0 And Pause=1 And NoSequence<100
- 823:If ZBouton(4)=1 And Clic=0 And Pause=0 And NoSequence<100
- 828:If ZBouton(4)=1 And Clic=0 And Pause=1 And NoSequence<100
Au début le jeu est en pause. Il faut donc s'assurer que l'on a passé cette étape avant de se remettre en pause.
C'est une bascule.

Cette anomalie est dû à l'appui sur la touche pause par erreur et au mauvais moment.

C'est super de faire tester un jeu ou une application par des tierces personnes.
Merci pour les retours.
A+
Avatar de l’utilisateur
SPH
Messages : 4944
Inscription : mer. 09/nov./2005 9:53

Re: Un jeu de plateau

Message par SPH »

Il n'y a pas de dés et le jeu n'est pas en pause :idea: :(

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
logis27
Messages : 34
Inscription : lun. 17/mars/2014 8:00

Re: Un jeu de plateau

Message par logis27 »

Fait une copie écran stp.
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Un jeu de plateau

Message par falsam »

logis27 a écrit :Le jeu est peut être en pause, touche pause.
Bonjour logis27.
Le jeu n'est pas en pause.
-A la question charger la sauvegarde, j'ai répondu N
-J'ai bien choisi mon pion comme tu peux le voir dans l'animation ci-dessous (Attendre un peu)

Image

-Je peux faire avancer chacun de mes adversaires virtuels :A ce propos ton IA aurait pu s'en charger :)

-Je peux faire avancer aussi mon pion en jetant les dés avec la touche Entrée mais ne voyant pas les dés, je suis obligé de proposer un numéro au hasard, une chance .... il y 'en a que 6.

-J'entends bien le son des dés.

Je suis sous Windows7 avec une carte Nvidia et à mon avis le bug est là.

@SPH: Je pense que tu as aussi une carte vidéo Nvidia. Pourrais tu confirmer ?
@Gally: Chez toi par contre ça fonctionne sous windows7. Qu'as tu comme carte vidéo ?
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Micoute
Messages : 2584
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Un jeu de plateau

Message par Micoute »

Bonjour à tous, ma carte est une NVIDIA GeForce GT640 et le jeu fonctionne comme il se doit !

Grand merci à logis27.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Un jeu de plateau

Message par falsam »

J'aime le comme il se doit :)

Bon donc j'élimine le souci de la carte nvidia qui a pourtant son driver à jour !
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
SPH
Messages : 4944
Inscription : mer. 09/nov./2005 9:53

Re: Un jeu de plateau

Message par SPH »

@SPH: Je pense que tu as aussi une carte vidéo Nvidia. Pourrais tu confirmer ?
Aucune idee, c'est un portable 8)

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
logis27
Messages : 34
Inscription : lun. 17/mars/2014 8:00

Re: Un jeu de plateau

Message par logis27 »

falsam à écrit
-Je peux faire avancer chacun de mes adversaires virtuels :A ce propos ton IA aurait pu s'en charger :)
Là pas comprendre !
:lol:
L'IA fait avancer les joueurs virtuels automatiquement, seul le lancer de Dés est manuel de façon à prendre son temps et à analyser le jeu à chaque tour.

Avez vous fait cette modification indiquée sur mon poste plus haut ?
Il faut rajouter " And NoSequence<100" à la fin des lignes:
- 654:If KeyboardPushed(#PB_Key_Pause) And Touche=0 And Pause=0 And NoSequence<100
- 659:If KeyboardPushed(#PB_Key_Pause) And Touche=0 And Pause=1 And NoSequence<100
- 823:If ZBouton(4)=1 And Clic=0 And Pause=0 And NoSequence<100
- 828:If ZBouton(4)=1 And Clic=0 And Pause=1 And NoSequence<100
Au début le jeu est en pause. Il faut donc s'assurer que l'on a passé cette étape avant de se remettre en pause.
C'est une bascule.
Je ne comprends pas d'où vient votre problème, mais j'y réfléchi jour et nuit, merci la tempête en Normandie.
J'essaye de reproduire le problème mais rien à faire même en faisant n'importe quoi:
- sur mon PC fixe
- sur le PC de mon épouse
- sur mon portable
à chaque fois ça fonctionne, une fois la correction ci-dessus faite.

Bon bah les gars, il va falloir analyser d'où vient votre problème.
:wink:

Je pense qu'il y a un bogue quelque part et que vous avez mis le clavier ou la souris dessus.
:D

Je cherche.
A+
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Un jeu de plateau

Message par falsam »

logis27 a écrit :Là pas comprendre !
Tu pourrais faire jouer les dés pour chaque adversaire virtuel par ton IA :)
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Répondre