Bonjour à tous,
Je souhaite me lancer dans le développement d'un petit jeu programmé en Java (connaissant bien ce langage). Seulement, j'ai besoin de quelques conseils sur les outils à utiliser.
Pour commencer, je vais plutôt décrire le type de jeu que j'ai en tête afin que vous le visualisiez vous aussi:
* Il s'agit d'un petit jeu où le personnage peut évoluer dans un environnement. C'est donc un jeu style RPG, puisque le perso a des compétences par exemple, peut se déplacer sur une carte, interagir des pnj...
* Il ne s'agit pas d'un jeu en temps réel où on déplace son personnage en appuyant sur haut/bas/gauche/droite. En fait, la partie visuelle du jeu n'est là que pour le confort et une meilleure représentation de l'espace.
Le principe est simple: le perso se déplace sur un grand quadrillage via des boutons sur l'interface. Le joueur déplace son personnage via des flèches à l'écran. Sur chaque zone (ie. carré du quadrillage) il peut faire plein de choses (fouiller, parler à un pnj présent sur la zone, chasser, planter du mais...). Il n'y a aucune animation et toutes ces actions se font via un clic sur un boutton ou du texte. Chaque action modifie un ou plusieurs états du jeu (si l'action est 'fouiller la zone', alors un nouvel objet sera ajouté à l'inventaire; la zone pourra alors être épuisée;...)
Bref vous comprenez bien qu'il ne s'agit pas d'un jeu de plateau dans lequel on fait avancer un personnage et tuer des monstres, mais plus un jeu textuel et interactif. J'espère que je suis clair.
Voici une image illustrant par exemple l'interface utilisateur lorsqu'il se promène sur la carte :
Mes différentes questions sont donc :
1) Quel est la librairie Java la plus adaptée à ce genre d'interface? J'ai regardé pas mal Slick2d, mais je crois que c'est vraiment utilisé pour des jeux "evenementiel" (un affichage qui se rafraichit en permanence en fonction des évenements - clic, touches)
Du peu que j'en connais, je pense que Swing serait pas mal. Mais peut-être connaitreriez vous d'autres librairies plus adaptées?
2) De quelle manière stocker les données persistentes du jeu? Avoir une base de donnée style MySql "intégré" qui tourne en même temps? Des fichiers properties? des fichiers XML?
Par exemple:
- liste des objets (et leurs propriétés)
- liste des ordres
- listes de type de pnj,
- compétences des personnages
- ...
3) Comment gérer et persister ma carte du monde? Je pensais à un tableau initialisé à la création de la partie (style 50x50), contenant des objets Case (qui définit les propriété d'une zone). Est-ce une bonne méthode? Mais comment récupérer et sauvegarder la configuration de cette carte? De plus, l'amélioration a y apporter serait de générer automatiquement cette carte. Une idée peut-être?
Je m'excuse pour le pavé, mais je voulais exposer le plus clairement possible ma vision de ce jeu. J'espère que ça ne vous empechera pas de me conseiller.
Je précise que je connais plutôt bien le langage, mais beaucoup plus dans sa version Enterprise Edition, et la création de jeu-vidéo m'est pratiquement inconnu.
Merci beaucoup.
Partager