Explications sur le mapping pour Operation : G.O.L.E.M.
Le mapping a beau être plutôt simple avec GOLEM, il faut tout de même quelques explications.
Il y a 4 types de fichiers :
Fichier test.map
Dans le fichier .map est stocké la map en elle-même, c’est-à-dire l’emplacement et la texture des tiles.
Nota : La mise-en-page rend le fichier illisible pour un humain, copiez-collez le dans le bloc-note pour y voir plus clair.
Les chiffres représentent des cases et les textures qu’il y a dessus. Les textures 0 et 1 sont les textures de sol et de ciel par défaut, les autres sont inclues via le fichier .ress.
Si une texture n’est pas trouvée, la texture de sol par défaut est mise à la place.
Le fichiers .ress permet d’indiquer les textures perso que l’on souhaite utiliser.
test.ress
Chaque ligne commencant par "TEXTURE" correspond à une texture. La première partie correspond au nom de la texture, la seconde si elle doit avoir des collisions ou pas.
Si "true", le joueur ne passe pas à travers, et peut marcher dessus.
Si "false", le joueur passera dans les cases comme si il n’y avait rien (ciel...).
La première texture porte le n°2, la 2, le n°3... Ce décalage est dû aux textures de départ.
La ligne marquée "BACKGROUND" est celle qui définit le fond d’écran de la map. Si plusieurs sont donnés, le dernier sera prit.
Les chemins sont relatifs au répertoire Ressources, afin de pouvoir utiliser une même texture pour plusieurs maps.
Les fichiers .npc permettent de créer simplement des NPCs personnalisés.
Ces fichiers sont placés dans le répertoire Ressources comme les textures, et non pas dans Maps comme les autres, afin de pouvoir les partager entre les maps.
Ils se présentent sous cette forme :
GUARD.npc
La vitesse d’attaque est en secondes.
Les fichiers .script permettent de placer les NPCs, donner la position de départ et de fin du joueur, de placer des portes, pièges...
Les scripts sont découpés en 3 parties :
Les NPCs, qui sont en fait les personnages contrôlés par l’ordinateur
Les signals, qui sont en fait des déclencheurs (quand on passe dans une zone...)
Les slots, qui font une action quand le signal qui leur est attribué est enclenché.
Le GroupID permet de raccorder signals et slots. Quand un signal est activé, tous les slots du même GroupID sont activés.
Si un NPC reçoit un signal par son GroupID, il est désactivé/activé.
test.script
Les fichiers de script sont les fichiers les plus complexes.
La première ligne marquée "STARTPOS" est la position de départ du joueur.
La seconde ligne marquée "ENDPOS" est la case que le joueur doit atteindre pour changer de niveau.
La ligne marquée "NEXTLEVEL" indique la carte a charger quand le joueur a terminé.
Noté que l’ordre de ces lignes n’est pas obligatoire. Vous pouvez mettre la carte suivante en premier, ou la startpos en second, etc...
Slots :
Le 1er argument est le type du slot (Advanced Type).
Les deux arguments suivants sont la position. Souvent, elle ne sert à rien.
Le 4ème est le GroupID du slot.
Il peut y avoir également des paramètres supplémentaires pour certains slots.
| Nom | Description | Position | Arguments supplémentaires |
|---|---|---|---|
| KILL | Tue le joueur | Sans effet | Aucun |
| HURT15 | Blesse le joueur (15 dégats) | Sans effet | Aucun (dommages dans un futur proche) |
| DOOR | Change la texture de la tile. | Position du tile/porte. | 2 entiers : les numéros des textures lorsque activé/désactivé. |
| NPC_SPAWNER | Fait apparaitre un NPC | Position du NPC à créer | 2 chaines de caractères, 1 entier : Le type du NPC (Guard...), le type de son IA (FRIEND, ENNEMY...), le nombre de NPCs a créer au total. |
| DISPLAY_TEXT | Affiche un texte sur l’écran | Position (en PIXEL) du texte sur l’écran. | 1 chaine de caractères, 1 entier : le texte a afficher, et le temps qu’il reste affiché. |
| PLAY_SOUND | Joue un son | Sans effet | 1 chaine de caractères : le nom du son |
Signals :
Le 1er argument est le type du signal (Advanced Type).
Les deux arguments suivants sont la position.
Le 4ème est le GroupID.
Il peut y avoir également des paramètres supplémentaires pour certains signals.
| Nom | Description | Position | Paramètres supplémentaires |
|---|---|---|---|
| Area | S’active quand le joueur rentre passe dedans | Position du détecteur | Aucun |
NPCs :
Le 1er est le type du NPC.
Les deux suivants sont la position de départ.
Le 4ème est le GroupID.
Le dernier argument est le type d’IA du NPC, à savoir :
ENNEMY pour un NPC qui vous attaque, ainsi que vos alliés
FRIEND pour un NPC qui attaque vos ennemis
STATIC_ENNEMY pour un ennemy immobile
STATIC_FRIEND pour un ami immobile