JeuWeb - Crée ton jeu par navigateur
map : répertorier les objets connus - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : map : répertorier les objets connus (/showthread.php?tid=272)



map : répertorier les objets connus - Meardon - 27-09-2006

Bonsoir,

Je suis en train de créer une carte en flash. Je m'en sors bien, mais j'aimerais inclure une fonctionnalité. Ce serait de stocker pour chaque membre quelles sont les structures qu'il a découvert au sein de la carte. Pour citer un exemple, dans les jeux de stratégies tels que AOE, lorsqu'on découvre un bâtiment ennemi, l'emplacement et les infos conçernant celui-ci restent tels qu'il les a vu la dernière fois. Ma question est sachant que ça ferait pas mal de données (lieux, objets... découverts par chaque joueur), comment conviendrait-il de les stocker ? Au début je pensais une table par utilisateur contenant la liste des lieux connus mais je trouve cette solution un peu bourrin... Ou alors des fichiers xml, après tout je passe par eux pour interragir entre flash et sql... Ou bien fichiers de variables ? Images Png ? Autre ?

Merci de m'éclairer, j'hésite complètement...


RE: map : répertorier les objets connus - comode - 27-09-2006

C'est un peu délicat comme question compte tenu des éléments dont on dispose pour y répondre...
Déjà, comment stocks tu ta cartes par exemple ? attribues spécifiés case par case ? juste les cases nécessaire ? fonction ?
Comment gère tu tes objets en BDD ? objets associé a un emplacement ? emplacement pouvant contenir un objet ? Bref, je pense qu'on serait plus inspiré pour répondre avec la structure de ta bdd sous les yeux.

Sinon, ne te fait pas d'idée, ce principe consommera forcément un max de BDD !
Si tu veux un véritable brouillard de guerre, avec en noir les zones inexplorées, en gris les zones explorés non visible et le reste actif, t'es pas dans la merde !

Si tu veux juste stocker les objets vus par le joueur, j'ai pas d'algo miracle à proposer pour ça, mais perso, je ferais ça le plus simplement du monde en créant une table du style :

vu(
int joueur,
int x,
int y,
int ref_batiment,
int proprio
)

avec mise a jour de cette table a chaques tours...


RE: map : répertorier les objets connus - gtsoul - 27-09-2006

batiment (
int x,
int y,
int ref_batiment,
int proprio
)

vu(
int joueur,
int ref_batiment,
)

car un batiment ne se déplace pas et si 2 personnes voyent le même batiment, pas besoin de stocker 2 fois ses infos dans la bdd


RE: map : répertorier les objets connus - Meardon - 27-09-2006

C'est bien comme ça que je gère mes objets... à une autre échelle. Je vais développer, voici mes tables :

systemes (
int ref_systeme,
int x,
int y,
)

planetes (
int ref_systeme,
int ref_planete,
int x,
int y,
int proprio
)

C'est donc sur plusieurs niveaux c'est pourquoi j'hésite entre :
- Une table vu comme vous le proposez (dans mon cas ce serait vu_systemes et vu_planetes).
- Un fichier xml. En effet j'en crée de toute façon un dynamiquement comme ma carte est en flash pour faire passer les valeurs. Je pensais que ça permettrait de gagner du temps pour le serveur si les lieux trouvés restent sous la forme :

<vu>
<systeme nom="dujdyjdfj">
<planete nom="qsdrgsq"></planete>
<planete nom="djchjfj"></planete>
</systeme>
<systeme>
<planete nom="dtujfj"></planete>
</systeme>
</vu>

...avec un fichier par joueur.

PS : L'hiérarchie s'arrête pas là c'est juste pour donner un exemple.