Personnelement j'utilise des fichiers XML que je genere avec un editeur de map Flash, c'est tres pratique et dans la mesure ou le terrain d'une map est tres peu sujet a changement, je ne trouve pas utile de surcharger MySQL avec une/plusieurs tables pour des maps.
L'avantage que j'y trouve c'est que ca me permet de charger ma map dans n'importe quel langage, par exemple je genere une vu 2D du dessus de mes maps avec php pour avoir un apercu , mais la map ou le joueur se trouvera sera elle gerée par Flash en 3D iso.
Pour ce qui est des interactions et des eventuels scriptages, c'est tout en DB et dans memcached, sous une forme map:caseX:caseY:<ma clef>, pour flash je retourne des SWF en byteArray dans lesquels j'ai compile mes functions/script (s'il y a plusieurs swf, je les merge sous forme de .pak que je revoie comme un seul fichier binaire, qui est decomposer dans flash pour recuperer le contenu de chaque SWF), et pour de l'affichage web pur c'est du JavaScript (via JQuery) que j'injecte donc a l'affichage.
Au final ca donne ce genre de fichier:
L'avantage que j'y trouve c'est que ca me permet de charger ma map dans n'importe quel langage, par exemple je genere une vu 2D du dessus de mes maps avec php pour avoir un apercu , mais la map ou le joueur se trouvera sera elle gerée par Flash en 3D iso.
Pour ce qui est des interactions et des eventuels scriptages, c'est tout en DB et dans memcached, sous une forme map:caseX:caseY:<ma clef>, pour flash je retourne des SWF en byteArray dans lesquels j'ai compile mes functions/script (s'il y a plusieurs swf, je les merge sous forme de .pak que je revoie comme un seul fichier binaire, qui est decomposer dans flash pour recuperer le contenu de chaque SWF), et pour de l'affichage web pur c'est du JavaScript (via JQuery) que j'injecte donc a l'affichage.
Au final ca donne ce genre de fichier:
Code :
<map name='forest_44' level_modifier='5'>
<textures>
<texture url='url_of_the_texture' name='Young Tree' class='tree_1' />
<texture url='url_of_the_texture' name='Dark Ground' class='ground_2' />
</textures>
<mapping>
<tile x='0' y='0' level='0.2' class='ground_2'/>
<tile x='0' y='0' level='0.2' class='tree_1'/>
<tile x='1' y='0' level='0.2' class='ground_2'/>
</mapping>
<scripts>
<action tile='0;0' script_name='treasure_12' />
</scripts>
</map>