Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1674 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Programmation Jeu ABALONE

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Programmation Jeu ABALONE

n°1949918
blackgeek
Posté le 13-12-2009 à 21:43:32  profilanswer
 

Bonjour a tous,
Je suis actuellement en école d'ingénieur et je dois programmer le jeu abalone (http://fr.wikipedia.org/wiki/Abalone_%28jeu%29 ) .
Le problème est que je ne connais pas trop java et je n'ai pas le temps pour bien m'y mettre.
 
 J'aimerai avoir quelques renseignements.
 
Je dois programmer le jeu en console et en interface graphique. La console doit marcher indépendamment de l'interface graphique.
 
La marche à suivre que j'avais prévu était:
 
1° Programmation du jeu sur la console Eclipse
         Réalisation plateau et mouvement (J'avais pensé à un tableau de coordonnées pour cela)
         Programmation régles du jeu.
2° Programmation interface graphique
 
Je pense que je n'ai pas mis toutes les étapes ( à ce stade je ne vois pas trop toutes les étapes).
 
 
     J'aimerai bien avoir un peu d'aide sur ce sujet.
 
Merci
 

mood
Publicité
Posté le 13-12-2009 à 21:43:32  profilanswer
 

n°1949923
Elmoricq
Modérateur
Posté le 13-12-2009 à 22:09:03  profilanswer
 

Tu dois décorréler les mécanismes du jeu de l'affichage.
Donc : gestion du jeu d'une part, utilisée par du swing pour l'affichage graphique, et du mode texte pour la console.
 
Hint : programmation objet.

n°1949930
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-12-2009 à 22:44:02  profilanswer
 

blackgeek a écrit :


Le problème est que je ne connais pas trop java et je n'ai pas le temps pour bien m'y mettre.


Perso, ce genre de phrase me fait toujours "tiquer" : comment se fait il que l'on te demande de programmer un tel jeu alors que tu ne connais pas Java et que tu n'as pas le temps de t'y mettre ? C'est un peu l'objet de ta formation non ? Ne me dis pas qu'"ils" te demandent de faire un tel travail sans t'enseigner de quoi le réaliser ?

Message cité 1 fois
Message édité par Harkonnen le 13-12-2009 à 22:44:58

---------------
J'ai un string dans l'array (Paris Hilton)
n°1950271
blackgeek
Posté le 14-12-2009 à 19:40:18  profilanswer
 

Harkonnen a écrit :


Perso, ce genre de phrase me fait toujours "tiquer" : comment se fait il que l'on te demande de programmer un tel jeu alors que tu ne connais pas Java et que tu n'as pas le temps de t'y mettre ? C'est un peu l'objet de ta formation non ? Ne me dis pas qu'"ils" te demandent de faire un tel travail sans t'enseigner de quoi le réaliser ?


 
Bonjour,
   quand je dis que je ne m'y connais pas en Java, cela veut dire en fait que j'ai besoin d'aide . Pas que vous me le fassiez , mais que vous me guidiez.  
 
 
Pour l'instant j'en suis au code du plateau de jeu que j'ai représenté par un tableau à 2 dimensions. J'ai mis un booléen pour coder la présence de billes ou pas.
 
C'est un petit code (j'en suis au début);
 
Voici le code

Citation :

boolean [][] tab= new boolean[9][9]; //création du tableau 9*9 abalone.
 int i;int j;{ //création des index
 for (i=0; i<9;i++)
  for (j=0;j<9;j++)
   if (j<2 && i<5) {
    tab[i][j]= true;
   } else if (j==2 && (i==2 || i==3 || i==4)) {
    tab[i][j]= true;
   } else if (j==6 && (i==4 || i==5 || i==6)) {
    tab [i][j]= true;
   } else if ((j==7 || j==8) && i> 3 ) {
    tab [i][j]= true;
   } else {
    tab [i][j]= false;}


 
 
Aprés c'est juste le début mais je ne vois pas ou ça m'améne.
Je m'étais dit qu'après cela je pourrais coder les mouvements des billes en jouant sur le booléen
 
Un autre probléme, mon code ne prend pas en compte les équipes (billes noires et blanches).
 
 
    Merci d'avance.
 
 

n°1950303
cbeyls
Hail to the King, Baby
Posté le 14-12-2009 à 22:04:18  profilanswer
 

Je ne connais pas le jeu Abalone et je ne vais pas étudier ses règles car je n'ai pas le temps de m'y mettre.
Mais bonne nouvelle je connais bien java et la programmation en général.
 
Tout d'abord il me paraît évident qu'un booléen ne suffira pas pour représenter l'état d'une case puisque qu'une case peut avoir 3 états: vide, emplie d'une boule blanche ou emplie d'une boule noire. Essaye de coder quelque chose d'assez simple comme par exemple:
- des entiers: 0 pour vide, 1 pour blanc et 2 pour noir par exemple
- Un type Enum "Boule" qui vaut noir ou blanc. "null" peut être utilisé pour les cases vides.
 
Deuxièmement, je ne comprend par pourquoi tu utilises un tableau 9x9 pour représenter la grille de jeu qui n'est pas carrée mais hexagonale d'après ce que je vois. Tu devrais créer ta propre structure de données qui permet d'accéder facilement aux cases adjacentes d'une case donnée. Tu peux toujours stocker toutes les cases dans un tableau à côté mais alors un tableau à une dimension suffit.
 
Edit: en fait tu peux aussi utiliser un tableau de 9 éléments correspondant aux 9 lignes de jeu et y stocker des tableaux de taille variable, en fonction de la longueur de chaque ligne. Mais je ne sais pas si cette structure de données est idéale pour les opérations de base du jeu comme accéder facilement aux cases adjacentes.


Message édité par cbeyls le 14-12-2009 à 22:22:22
n°1950397
olivthill
Posté le 15-12-2009 à 09:51:26  profilanswer
 

L'utilisation d'un tableau d'entiers à une seule dimension est une solution classique. Pour éviter de tester les bords, on crée une ligne de cases imaginaires tout autour du plateau. Cela fait donc 4 valeurs possibles pour chaque case : vide, noir, blanche, ou hors plateau. C'est une solution souvent retenue pour les jeux d'échecs et autres jeux de plateau.
 
J'ai écrit un programme d'Abalone en langage C. Les sources sont disponibles sur mon site : http://olivier.thill.perso.neuf.fr [...] balone.htm
Ce n'est pas un cadeau, car mon code n'est pas très commenté, et n'est peut-être pas facile à comprendre. De plus ce n'est peut-être pas un style de programmation très académique. Mais ça marche bien, il n'y a pas de bug. C'est donc juste à titre d'exemple. D'ailleurs, il y a beaucoup d'étudiants qui m'écrivent pour me demander des renseignements, mais je ne me souviens plus très bien de ce code, écrit quand j'étais jeune.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Programmation Jeu ABALONE

 

Sujets relatifs
Besoin d'aide pour la programmation d'un menu en htmlDemande d'aide à la programmation
[Conseils] Jeu de stratego en Flashprogrammation avec Chart FX Lite
Algorithme / programmation tournoi poules match défisProgrammation Flex getVideo
programmation wifi linux en Caide java: programmation d'une boite a rythme
Programmation pythonRenseignements pour programmation database sur sharepoint
Plus de sujets relatifs à : Programmation Jeu ABALONE


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR