Cet article explique la structure du projet, comment organiser les dossiers, les fichiers et le contenu des cartes.
La structure générale du projet se présente comme suit:
src: contient le programme du jeu en Pythonassets: contient les éléments graphiques et audio du jeu
maps: contient les maps créées à l'aide de Tiled Editor
nom_de_la_map
nom_de_la_map.tmx: la map créée à l'aide de Tiled Map Editornom_de_la_map.py: le code Python spécifique à la mapnom_de_la_map.mp3: la musique à utiliser pour l'ambiance sonoremap2map3...tilesets: contient les jeux de tuiles
custom: jeux de tuiles personnalisésexteriors: jeux de tuiles du set "Modern Exteriors"interiors: jeux de tuiles du set "Modern Interiors"
- office: jeux de tuiles du set "Modern Office"sprites: les images des personnages (jouables ou pas)items: objets interactifs
(* ne pas mettre les [] dans les noms)
Pour tous les noms que vous utilisez (dossiers, fichiers, calques, objets...), respectez les mêmes conventions que pour les noms de variables en python:
Vérifiez bien que les chemins d'accès aux fichiers des jeux de tuiles sont relatifs et corrects: ../../tilesets/[collection]/jeu_de_tuile.tsx.
Les cartes doivent être éditées dans Tiled Map Editor.
Pour créer vos maps, utilisez de préférence les jeux de tuiles fournis (collection "Modern ....").
Les cartes "officielles" du jeu actuellement sont:
| Map | Team | Class | File |
|---|---|---|---|
| Basic Fit | Martim + Simon | 4ttr | jodoigne_basic_fit |
| McDo Old School | Dylan Louis | 4ttr | jodoigne_mcdo_bis |
| Cinéma | Yannis Gwen Mehdi | 4ttr | jodoigne_cinema_etoile |
| Place Victoire | Jan Ethan | 4ttr | jodoigne_place_victoire |
| C36 | Matéo Mathieu | 4ttr | cepes_tir_c36 |
| C33 | Wyatt Cyril | 4ttr | cepes_tir_c33_bis |
| gymnase | Loïc | 4ttr | cepes_tir_gymnase + cepes_tir_gymnase_balcon |
| Fritapapa | Ryan Arthur | 3ttr | jodoigne_fritapapa |
| C33 | Julien Clément | 3ttr | cepes_tir_c33 |
| Grand Hall | Rafael Jakub | 3ttr | cepes_tir_grand_hall |
| King of Kebab | Liyam V Sacha | 3ttr | jodoigne_king_of_kebap |
| Salle étude | Tom Mathis | 3ttr | cepes_tir_salle_etude |
| Gare bus | Noa Téo | 3ttr | jodoigne_gare_bus |
| Réfectoire | Sam | 3ttr | cepes_tir_refectoire |
| Salle de sports | Gatean | 3ttr | cepes_tir_salle_sports |
| Parc Jodoigne | Gordon Adrien | 3ttr | jodoigne_parc |
| Bureau Directrice | Aline Céline | 3ttr | cepes_tir_bureau_dir |
| Chaussée Tirlemont | Dawid | 3ttr | cepes_tir |
| Lyam | 3ttr | ||
| Lucas | 3ttr | ||
| Terrain de foot | Adams Manoah | 4tq | jodoigne_terrain_foot |
| Jodoigne | Oleks | 4tq | jodoigne_ville |
| Misk | 4tq | ||
| Xtreme Fitness | Christian AdrienF | 4tq | jodoigne_xtreme |
| Commissariat | Gabriel Mathieu | 4tq | jodoigne_police |
| Pharmacie | Alejandro | 4tq | jodoigne_pharmacie |
| Carrefour | AdrienB | 4tq | jodoigne_carrefour |
| Mc Do | Nico Seb | 4tq | jodoigne_mcdo |
| Skate Park | Bruce | 4tq | jodoigne_skate_park |
Utilisez le nom de fichier tel que défini dans cette liste.
Chaque carte doit se trouver dans son propre dossier qui porte le même nom que le fichier map (ex: "jodoigne_police").
Si votre carte doit avoir une musique de fond spécifique, ajoutez ce fichier au format mp3 et utilisez le nom de la map comme nom de fichier.
Par convention, le jeu supportera les types d'objets suivants:
| Type | Forme | Nombre | Description |
|---|---|---|---|
| collisions | rectangle | 1..+sieurs | zones qui empêchent le joueur de se rendre dans une zone de la carte |
| spawn | point | 1..+sieurs | points d'apparation du joueUr |
| portal | rectangle | 1..+sieurs | permet au joueur de se téléporter vers une autre map. |
| item | point | 0..+sieurs | éléments du jeu avec lequel le joueur pourra interagir |
| hint | rectangle | 0..+sieurs | zones illuminées par le jeu quand la carte est affichée (indices d'interaction) |
| pnj | point | 0..+sieurs | permet d'ajouter des PNJ à voter map |
| position | rectangle | 0..+sieurs | permet de modifier le sprite utilisé pour afficher votre personnage (par exemple: assis) |
Ces objets sont/seront expliqués ci-dessous.
Les collisions sont des "zones" où le personnage ne peut pas se déplacer. Votre carte doit être entourée de zones de collision afin d'empêcher le joueur de sortir de la map à l'écran.
CollisionscollisionLes points de spawn sont les endroits où le joueur peut apparaître quand il entre sur une carte. Il y a un point de spawn par entrée possible.
Votre carte doit avoir au moins un point de spawn qui s'appelle "main" (c'est le point principal).
ObjectsspawnDonnez un nom explicite pour votre point (main ou autre). Le nom du point de spawn doit correspondre à celui spécifié dans le portal qui y mène.
Un portal est une zone qui permet au joueur de se déplacer vers une autre map.
Une carte doit toujours avoir au moins un portal (celui qui permet de retourner d'où on vient).
Objectsportal".Les items sont des objets avec lesquels le joueur pourra interagir. Les types d'interactions possibles sont, actuellement:
Le jeu mettra les items en évidence pour aider le joueur à les identifier facilement.
C'est le jeu qui gère l'affichage des items. Ils ne doivent donc pas être dessinés dans votre carte.
Objectsitem".L'image de l'item doit se trouver dans le dossier assets/items au format png (exemple: 'lampe.png')
Vous pouvez ajouter un son spécifique au format mp3 qui sera joué quand le joueur ramasse l'item (exemple: 'lampe.mp3'). Sinon, le jeu jouera un son prédéfini.
Les hints ("indices") permettent de guider votre joueur. Par exemple: montrer le chemin à suivre, une porte à ouvrir...
Objectshint".Les PNJ sont des personnages non jouables. Soit ils sont passifs (ils servent de décoration), soit le joueur peut interagir avec eux (dialogue simple ou recevoir quelque chose).
Objectspnj".Une zone de type "position" permet de changer l'apparence du joueur (assis...). Quand le joueur arrive sur cette zone, le jeu change le sprite utilisé (exemple: assis)
Objectsposition".Priviligégiez l'utilisation des fichiers "intermédiaires" ("Theme Sorter") qui contiennet les tuiles thématiques. Evitez d'utiliser les fichiers individuels ou les GROS fichiers qui contiennent TOUS les sprites du jeu de tuile (pour des raisons de performances).
Utilisez uniquement des tuiles de 32x32 pixels.
Utilisez le nom du jeu de tuiles d'origine (ne changez pas les noms...).
L'image et le fichier TSX doivent se trouver dans le même dossier.
Les images des personnages doivent se trouver dans le dossier "sprites".
Tous ce qui bouge peut être considéré comme un personnage: le joueur, PNJS,animaux, véhicules...
Utilisez un dossier par personnage.