Bonjour à tous, dans le cadre d'un projet de fin de BTS, je développe un jeu (assez grand pour un travail solo) avec une méthode de conception pas tout à fait normalisée, un ECS. Je bosse dessus depuis ~1 mois, j'ai déjà développé les bases les plus importantes : rendering, physic update, ai, ihm,....
Mon jeu est un terraria/minecraft like mélangé au style idle game. Pour générer un bloc cela se résume en ces quelques lignes de code :
Seulement voilà, j'aimerais stocker toutes les caractéristiques de chaque bloc dans un fichier, mais je ne vois pas ce qui est le mieux et surtout le plus optimisé...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 EntitySystem es = new EntitySystem(); //Système qui gère l'ajout/ la suppression d'entités, l'ajout/ la suppression d'un ou de plusieurs composants Entity e = null; ... e = EntityFactory.create(); this.es.put(e); this.es.attach(e, new CPosition(30,30)); this.es.attach(e, new CSize(64,64)); this.es.attach(e, new CTexture(ObjectTexture.GRASS)); this.es.attach(e, new CEventable()); this.es.attach(e, new CPhysic(PProcess.AUTO)); this.es.attach(e, new CStat(5,5)); this.es.attach(e, new CRespawnable());
J'ai pensé à :
- Un fichier XML pour sauvegarder les caractéristiques de chaque blocs
- Un fichier json -
- Une BDD mySql
- Un csv
- Sérialiser directement une classe de "configuration" de bloc
Bref, je ne sais pas trop quelle solution choisir même si je pense que le mieux est un fichier JSON ou un XML.
A mon avis la BDD sera une perte de vitesse de chargement (et d'utilisateur pour ce qui préfère les jeux hors-lignes). La sérialisation, c'est bien mais ça demande à devoir compiler le projet à chaque modif de bloc et le csv c'est un peu... sale ?
Merci de bien vouloir m'aiguiller
Partager