Files
builazoo/docs/specs/nurserie.md
Nicolas Cantu e031c9a1d2 Initial commit
**Motivations:**
- Initialisation du versionning git pour le projet

**Root causes:**
- N/A (Nouveau projet)

**Correctifs:**
- N/A

**Evolutions:**
- Structure initiale du projet
- Ajout du .gitignore

**Pages affectées:**
- Tous les fichiers
2026-03-03 22:24:17 +01:00

6.8 KiB

Spécifications : Nurserie

Définition

Bâtiment dédié à l'éclosion des œufs et à la croissance des bébés animaux.

Fonctionnalités

  • Éclosion : Lieu où les œufs achetés sont placés pour éclore.
  • Croissance : Permet aux bébés de grandir en sécurité.
  • Stockage : Zone tampon avant placement dans le zoo.

Niveaux d'Amélioration (7 niveaux)

  • Coût : Progressif par palier.
  • Effet : Accélère le temps d'éclosion/croissance. Améliore la qualité des reproducteurs (bonus génétique).
  • Ratio : 1 unité permet de faire grandir 1 bébé maximum à la fois.

Annexes Techniques

1. Données et États

Modèle de Données (JSON)

{
  "id": "uuid",
  "type": "nurserie",
  "level": "integer (1-7)",
  "slots": [
    { "slot_id": 1, "content": "egg_uuid | baby_uuid | null", "timer_end": "timestamp" }
  ]
}

Caractéristiques Initiales

Caractéristique Valeur Initiale (Niv 1)
Slots 1
Vitesse Éclosion x1.0
Protection T° +/- 2°C tolérance

Scores Initiaux

N/A

2. Cycles de Vie et Apparition

Conditions d'Apparition

Construction par joueur ou présent au début.

Conditions de Disparition

Destruction par joueur (si vide).

Hérédité

Bonus Génétique : Niveau 5+ donne +5% chance rareté supérieure à l'éclosion.

3. Impacts Environnementaux

Impact Température

La nurserie régule la température interne.

Niveau Régulation
1 +/- 2°C
7 +/- 10°C (Climatisation parfaite)

Impact Milieu (Biome)

N/A

Impact Saisons

Protège des effets négatifs des saisons (Hiver/Été).

Impact Heure / Jour-Nuit

Fonctionne 24h/24.

4. Impacts Biologiques et Sociaux

Impact Reproduction

N/A (Lieu de résultat de la reproduction).

Impact Mort

Réduit drastiquement la mortalité infantile (Santé ne baisse pas sauf si Faim extrême).

Impact Nourriture

Les bébés sont nourris automatiquement si stock nourriture global > 0.

Impact Attractivité (Visiteurs/Animaux)

N/A (Les visiteurs ne voient pas l'intérieur).

Impact Valeur

N/A

5. Impacts Logistiques et Économiques

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

Vitesse Éclosion/Croissance :

Niveau Multiplicateur Vitesse
1 x1.0
2 x1.2
3 x1.5
4 x2.0
5 x3.0
6 x5.0
7 x10.0

Dépenses (Boutiques/Visiteurs)

N/A

Trajet Visiteurs

N/A

6. Événements

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

  • Éclosion : Œuf -> Bébé.
  • Maturité : Bébé -> Adulte (prêt à sortir).

7. Progression

Tableau des Upgrades

Niveau Coût (Pièces) Slots Vitesse Temps Construction
1 100 1 x1.0 0s
2 200 2 x1.2 0s
3 400 3 x1.5 0s
4 800 4 x2.0 0s
5 1600 5 x3.0 0s
6 3200 6 x5.0 0s
7 6400 7 x10.0 0s

8. Logique et Interfaces

Pseudo-code Impacts

function updateNurserie(nurserie):
  for slot in nurserie.slots:
    if slot.content is Egg:
      slot.timer -= baseTime * nurserie.speedMultiplier
      if slot.timer <= 0:
        hatchEgg(slot.content)

Messages d'Infos / Alerte

ID Niveau Message
EGG_HATCHED Info "Un œuf a éclos en Nurserie !"
NURSERIE_FULL Warning "Nurserie pleine, impossible d'acheter/reproduire."

Annexes UX/UI

1. Expérience Utilisateur (UX)

Gestion des Slots (Consultation)

Description UX : Le joueur clique sur la nurserie pour voir l'état de ses œufs et bébés. Description UI : Bottom Sheet avec une grille de slots (1 à 7 selon niveau). Chaque slot affiche l'icône de l'œuf/bébé, une barre de progression (éclosion/croissance) et un timer restant. Emplacement : Case Nurserie. Intégration : Modal centrée. Navigation : Clic Nurserie -> Modal -> Clic Slot (Action) ou Fermer. Événements : OPEN_NURSERIE.

Assets

  • Musiques : N/A
  • Sons : ui_open.mp3
  • Graphiques : Style "Couveuse" ou "Nid douillet".
  • Images : egg_[rarity].png, baby_[species].png.
  • Vidéos : N/A
  • Animations : Œuf qui tremble légèrement quand proche éclosion.
  • Couleurs : Tons pastels (rose, bleu clair, jaune paille).
  • Textes : "Slot X", "Temps restant : MM:SS".
  • Formes : Cases de grille arrondies.

Placement d'un Œuf

Description UX : Après achat ou reproduction, l'œuf va automatiquement dans un slot vide. Si plein, notification d'erreur. Description UI : Animation de l'œuf "volant" vers la nurserie (si visible) ou simple apparition dans le slot. Emplacement : HUD -> Nurserie. Intégration : Automatique. Navigation : N/A Événements : EGG_ADDED.

Assets

  • Musiques : N/A
  • Sons : pop_soft.mp3
  • Graphiques : N/A
  • Images : N/A
  • Vidéos : N/A
  • Animations : Fade in + Scale up de l'œuf dans le slot.
  • Couleurs : N/A
  • Textes : N/A
  • Formes : N/A

Éclosion (Action)

Description UX : Quand le timer est fini, l'œuf se fissure. Le joueur clique pour "ouvrir" l'œuf et découvrir le bébé. Description UI : Le slot brille ou clignote. Au clic, animation d'éclosion et popup "Nouveau Bébé !" avec ses stats. Emplacement : Modal Nurserie. Intégration : Bloque le slot jusqu'à validation. Navigation : Clic Œuf éclos -> Popup Récompense -> Retour Modal. Événements : HATCH_CLICK.

Assets

  • Musiques : Jingle court "Victoire/Naissance".
  • Sons : crack_egg.mp3, baby_cry.mp3.
  • Graphiques : Coquilles brisées.
  • Images : Sprite bébé.
  • Vidéos : N/A
  • Animations : Séquence d'éclosion (3 frames).
  • Couleurs : Rayons dorés/blancs.
  • Textes : "C'est un [Espèce] [Rareté] !".
  • Formes : Étoile ou Cercle rayonnant.

Sortie de Nurserie (Placement)

Description UX : Le bébé est mature (ou le joueur veut le sortir). Drag & drop du slot vers une case du zoo. Description UI : Le curseur devient le sprite du bébé/animal. Les cases valides s'illuminent en vert, invalides en rouge. Alternative : Sélectionner le bébé -> Cliquer sur la case cible (Tap to Place). Emplacement : Modal Nurserie -> Carte Zoo. Intégration : Ferme la modal et passe en mode placement. Navigation : Drag Slot -> Drop Carte. Événements : DRAG_START, DRAG_DROP.

Assets

  • Musiques : N/A
  • Sons : pickup.mp3, place_ok.mp3 / place_error.mp3.
  • Graphiques : Grille de placement overlay.
  • Images : Sprite fantôme (translucide) sous le curseur.
  • Vidéos : N/A
  • Animations : N/A
  • Couleurs : Vert #00FF00 (OK), Rouge #FF0000 (KO).
  • Textes : Tooltip "Placer ici".
  • Formes : N/A