Files
builazoo/docs/specs/carte_monde.md
Nicolas Cantu 5143a79890 docs: enrich docs/specs and remove placeholders
**Motivations:**
- Make docs/specs implementation-ready without empty sections or placeholders.

**Root causes:**
- Multiple specs still contained non-actionable placeholders (N/A, “see above”, "..."), and inconsistent “no cache” wording.

**Correctifs:**
- Replace placeholders with explicit tables, structures, and typed examples.
- Align “no cache / no memorization” statements where relevant.

**Evolutions:**
- Add a features doc entry to track the documentation enrichment effort.

**Pages affectées:**
- docs/specs/*
- docs/features/docs-specs-enrichment.md
- docs/leo.md
- docs/plan-enrich-docs-specs.md
2026-03-05 03:08:15 +01:00

6.6 KiB

Spécifications : Carte du Monde

Définition

La carte du monde est l'espace multijoueur où sont situés les zoos des joueurs, des bots, les villes et les laboratoires.

Structure

  • Grille : Fixe, avec des positions définies pour chaque entité.
  • Fond : Reprend les biomes de la carte du zoo (Prairie/Océan/Montagne) en fond.
  • Zoom : Niveau de zoom dépendant de l'upgrade "Agrandir la carte". Pas de pan manuel.

Contenu Initial (Lancement)

  • 1 Case Agrandissement de la carte (Payable en unités de recherche)
  • 1 Compteur de bébés à vendre
  • 1 Compteur d'animaux à vendre
  • 1 Compteur de laboratoires
  • 1 Compteur de zoos
  • 1 Compteur de villes
  • 1 Case Accueil nouveaux animaux (Haut gauche)
  • 1 Case Nourriture générale (Haut gauche)
  • 1 Case Camion (Haut gauche)
  • 24 Cases de terrain (3 couleurs différentes)

Entités Visibles

  • Zoos Joueurs : Nom, icône, indicateurs.
  • Zoos Bots : Identiques aux joueurs.
  • Villes : Sources de visiteurs.
  • Laboratoires : Sources d'œufs/bébés rares.
  • Camions : En transit entre les entités.

Mécaniques

  • Navigation : Vue d'ensemble du marché.
  • Interactions : Achat d'œufs/animaux via le camion.

Annexes Techniques

1. Données et États

Modèle de Données (JSON)

{
  "id": "world_map",
  "width": "integer (très grand)",
  "height": "integer",
  "sites": [ { "id": "uuid", "type": "zoo|city|lab", "pos": { "x": "int", "y": "int" } } ],
  "trucks": [ { "id": "uuid", "owner_id": "uuid", "pos": { "x": "float", "y": "float" }, "target": "uuid" } ],
  "iso_x": "integer",
  "iso_y": "integer",
  "z_index": "integer"
}

Caractéristiques Initiales

Caractéristique Valeur Initiale
Rayon Visible 500km (simulé)
Nb Villes 10 (dans rayon départ)
Nb Labos 2 (dans rayon départ)

Scores Initiaux

Score Exploration : 0% (Carte dévoilée).

2. Cycles de Vie et Apparition

Conditions d'Apparition

Unique (Singleton serveur).

Conditions de Disparition

Jamais.

Hérédité

Cartographie : Les zones découvertes restent visibles après un reset (Connaissance acquise).

3. Impacts Environnementaux

Impact Température

Météo Globale : Nuages, Pluie ou Neige visibles sur la carte (Effet visuel + Gameplay).

Impact Milieu (Biome)

Diversité : Les biomes influencent le type de zoo bot (ex: Zoo Polaire au Nord, Zoo Tropical à l'Équateur).

Impact Saisons

Visuel : La carte change de teinte (Blanc en Hiver, Orange en Automne, Vert vif au Printemps).

Impact Heure / Jour-Nuit

Cycle Jour/Nuit : Assombrissement global. Les villes et zoos s'allument (Pixel Art lumineux).

4. Impacts Biologiques et Sociaux

Impact Reproduction

Migration : En saison des amours, des troupeaux sauvages (décoratifs) migrent sur la carte.

Impact Mort

Cimetière des Éléphants : Lieu légendaire caché (Easter Egg) donnant un bonus si découvert.

Impact Nourriture

Ressources : Les villes produisent de la nourriture (Champs autour des villes).

Impact Attractivité (Visiteurs/Animaux)

Rayonnement : Un zoo très attractif (> 10k visiteurs) émet un halo doré visible de loin.

Impact Valeur

Économie : Les prix du marché fluctuent selon l'offre globale (Loi de l'offre et la demande simulée).

5. Impacts Logistiques et Économiques

Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)

Voyage Rapide : Coût en pièces pour téléportation instantanée (si module "Héliport" débloqué).

Dépenses (Boutiques/Visiteurs)

Péages : Taxe de passage sur certaines routes commerciales (1% valeur cargaison).

Trajet Visiteurs

Calcul des distances Ville -> Zoo pour l'attractivité. Les visiteurs prennent le chemin le plus court.

6. Événements

Événements du Jeu / Carte / Zoo / Ville / Visiteur

  • Spawn Bot : Apparition nouveau zoo bot.
  • Spawn Truck : Camion visible.
  • Embouteillage : Ralentissement sur les routes principales.

7. Progression

Tableau des Upgrades

Voir agrandissement_carte.md.

8. Logique et Interfaces

Pseudo-code Impacts

function updateWorldMap(map, deltaTime):
  for truck in map.trucks:
    moveTruck(truck, deltaTime)
    if hasArrived(truck):
      processTransaction(truck)

  updateWeather(map)
  updateDayNightCycle(map)

Messages d'Infos / Alerte

ID Niveau Message
MAP_EVENT Info "Un événement météo touche la région Nord."

Annexes UX/UI

0. Direction Artistique & Vue

  • Vue : Isométrique (2.5D).
  • Style : Coloré, vivant, détails foisonnants (Réf: IMG_20260303_170253.jpg).
  • Sprites : 4 directions.
  • Interactions :
    • Sélection : Cliquer sur la base de l'élément (ou son sprite principal) pour le sélectionner.
    • Feedback : Surbrillance (outline blanc/jaune) au survol de la souris.

1. Expérience Utilisateur (UX)

Vue Globale (Passif)

Description UX : Le joueur voit les autres acteurs et les flux économiques. Description UI : Carte style "Google Maps" simplifiée ou grille hexagonale. Icônes (Maisons, Gratte-ciels, Fioles). Flux : Petites particules (voitures/points) voyageant entre les villes et les zoos attractifs. Emplacement : Écran Carte Monde. Intégration : Plein écran. Navigation : Bouton Retour Zoo. Événements : OPEN_WORLD_MAP.

Assets

  • Musiques : Thème Aventure/Voyage.
  • Sons : Vent, Bruit lointain trafic.
  • Graphiques : Fond carte (Biomes flous).
  • Images : Icônes Sites.
  • Vidéos : Nuages dynamiques (shader).
  • Animations : Camions qui bougent.
  • Couleurs : Desaturées (pour faire ressortir les icônes).
  • Textes : Noms des villes/zoos.
  • Formes : Pins/Marqueurs.

Brouillard de Guerre (Passif)

Description UX : Les zones inexplorées sont cachées. Description UI : Nuages ou zone sombre en périphérie. Emplacement : Bords Carte. Intégration : Mask. Navigation : Zoom-out via upgrade carte ; au clic sur une zone masquée, afficher un tooltip “Zone non explorée”. Événements : FOG_HOVER, FOG_CLICK_BLOCKED

Assets

  • Musiques : ambience_fog_soft.mp3 (optionnel, très discret).
  • Sons : fog_whoosh.mp3 (au reveal), ui_denied.mp3 (clic zone bloquée).
  • Graphiques : Texture Nuages.
  • Images : Masque alpha (bords flous).
  • Vidéos : Effet de brume (particules).
  • Animations : Nuages qui dérivent lentement.
  • Couleurs : Blanc/Gris.
  • Textes : "Zone Inexplorée".
  • Formes : Zone non cliquable.