Spécifications : Mort des Bébés
Causes Spécifiques
- Nurserie Pleine : Si un œuf éclot et qu'il n'y a pas de place en nurserie ni sur le terrain.
- Vente Échouée : Bébé resté trop longtemps en zone de vente (camion) sans acheteur et sans rapatriement.
- Conditions Extrêmes : Les bébés ont des tolérances de température plus faibles que les adultes.
Conséquences
- Perte définitive de l'animal.
- Pénalité forte sur le Score de Réputation.
- Pas de récupération de ressources (pièces).
Annexes Techniques
1. Données et États
Modèle de Données (JSON)
Événement loggé.
Caractéristiques Initiales
Compteur Morts : 0.
Scores Initiaux
Taux Mortalité Infantile : 0%.
2. Cycles de Vie et Apparition
Conditions d'Apparition
Voir Causes.
Conditions de Disparition
Oubli : Le souvenir (et le malus) s'estompe après 7 jours in-game.
Hérédité
Traumatisme : Les parents ont -50% fertilité pendant 1 semaine (Choc émotionnel).
3. Impacts Environnementaux
Impact Température
Voir bebe_animal.md.
Impact Milieu (Biome)
Tombe : Une petite stèle apparaît temporairement sur la case (décoratif, disparaît au clic).
Impact Saisons
Hiver rigoureux : Cause fréquente de mortalité infantile (Froid).
Impact Heure / Jour-Nuit
Nuit glaciale : Moment critique (baisse T°).
4. Impacts Biologiques et Sociaux
Impact Reproduction
Deuil : Pas de reproduction possible pour les parents pendant 24h.
Impact Mort
Effet domino : Tristesse contagieuse aux animaux proches (Stress +10).
Impact Nourriture
Gaspillage : La nourriture allouée au bébé est perdue (pourrit).
Impact Attractivité (Visiteurs/Animaux)
Malus : -50 points de Réputation (temporaire 24h). Les visiteurs pleurent.
Impact Valeur
Perte sèche : Valeur potentielle (élevée) perdue définitivement.
5. Impacts Logistiques et Économiques
Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)
Décomposition : Le corps reste 1h avant de disparaître (Urgence sanitaire).
Dépenses (Boutiques/Visiteurs)
Frais d'équarrissage : 10 pièces pour enlever le corps.
Trajet Visiteurs
Évitement : Les visiteurs contournent la zone de mort (Rayon 2 cases).
6. Événements
Événements du Jeu / Carte / Zoo / Ville / Visiteur
- Mort Bébé : Notification critique.
- Enterrement : Animation de disparition.
7. Progression
Tableau des Upgrades
Note : Prévention via Infirmerie.
| Niveau Infirmerie |
Réduction Risque Mort |
| 1 |
-10% |
| 2 |
-20% |
| 3 |
-50% |
8. Logique et Interfaces
Pseudo-code Impacts
Messages d'Infos / Alerte
| ID |
Niveau |
Message |
BABY_DIED |
Critique |
"Un bébé est mort ! Les visiteurs sont choqués." |
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)
Drame (Événement)
Description UX : Le bébé meurt.
Description UI : Le sprite devient gris/fantôme puis disparaît (montée au ciel). Musique triste.
Emplacement : Case Zoo/Nurserie.
Intégration : Immédiat.
Navigation : Auto (Cinématique).
Événements : DEATH_ANIMATION.
Assets
- Musiques : Jingle Triste (Violon).
- Sons :
gong.mp3 ou vent lugubre.
- Graphiques : Fantôme.
- Images : Pierre tombale (Sprite).
- Vidéos : Effet de pluie (Overlay).
- Animations : Opacité 100% -> 0%. Translation Y vers le haut.
- Couleurs : Gris, Noir.
- Textes : "RIP".
- Formes : Halo sombre.
Notification (Alerte)
Description UX : Le joueur est informé de la perte.
Description UI : Popup Rouge/Noir. "Vous avez perdu un bébé [Cause]".
Emplacement : Centre Écran.
Intégration : Modal bloquante (Acknowledgment requis).
Navigation : Clic OK.
Événements : DEATH_ACKNOWLEDGE.
Assets
- Musiques : Silence (Coupure son).
- Sons : Bruit de tonnerre lointain.
- Graphiques : Crâne (icône).
- Images : Portrait du bébé avec ruban noir.
- Vidéos :
death_alert_glitch.webm (0.7s loop, optionnel), black_ribbon_fade.webm (1.2s non loop).
- Animations : Tremblement de la fenêtre.
- Couleurs : Noir #000000.
- Textes : Cause du décès.
- Formes : Bordure noire épaisse.
Définition
| Champ |
Valeur |
| Concept |
Événement de décès d’un animal au stade bébé, avec cause, conséquences (réputation, stress), et traces visuelles temporaires. |
| Rôle |
Sanctionner les erreurs de gestion (nurserie pleine, conditions extrêmes), informer clairement le joueur, et déclencher des impacts sociaux/logistiques sans silence. |
| Portée |
Un animal_id (bébé) + un contexte (zoo, emplacement iso) + une cause normalisée. |
| Contrainte |
Pas de fallback silencieux : cause inconnue => log + erreur ; calculs à la volée, sans cache/mémorisation. |
Fonctions (tableau détaillé)
| Fonction |
Déclencheur |
Entrées |
Sorties |
Règles |
Observabilité |
| Détecter décès bébé |
tick logique / action |
animal_id, états |
event décès |
Mort si health<=0 ou condition spéciale |
Event BABY_DIED |
| Normaliser cause |
au décès |
signaux (nurserie pleine, temp, vente) |
cause_code |
Cause dans enum, sinon UNKNOWN + erreur |
Log structuré baby_death_unknown_cause |
| Appliquer malus réputation |
au décès |
cause_code |
réputation ↓ |
Malus fort ; pondéré par visibilité visiteurs |
Event REPUTATION_CHANGED |
| Appliquer stress proche |
au décès |
position iso |
stress ↑ |
Rayon 2 cases iso autour |
Event ANIMAL_STRESS_APPLIED |
| Créer trace visuelle |
au décès |
position |
stèle/fantôme |
Trace TTL (ex. 1h) ; supprimable par clic |
Event GRAVE_SPAWNED |
| Facturer enlèvement |
au décès |
- |
coût |
Coût fixe “équarrissage” si option active |
Event SANITATION_FEE_CHARGED |
| Alerter joueur |
au décès |
cause + animal |
notification |
Modal d’ack obligatoire si critique |
Event UI_DEATH_ALERT_SHOWN |
Icone de base
| Élément |
Spécification |
| Représentation |
Icône crâne + ruban noir, variante “bébé” (petit crâne) |
| Couleur dominante |
Noir / gris |
| Variantes |
icon_baby_death.png, icon_grave.png |
| États |
critique (rouge), info (gris), acknowledged (ruban) |
Interactions (tableau détaillé)
| Interaction |
Type |
Préconditions |
Étapes UI |
Résultat |
Erreurs / Messages |
| Voir détail décès |
Consultation |
événement présent |
clic notif |
panneau cause + impacts |
- |
| Acknowledge modal |
Action |
modal affichée |
clic OK |
fermeture + trace possible |
- |
| Retirer stèle |
Action |
trace visible |
clic stèle |
suppression trace |
GRAVE_NOT_FOUND |
| Aller à l’emplacement |
Navigation |
position connue |
clic “Voir sur la carte” |
caméra centre |
LOCATION_UNAVAILABLE |
Annexes Techniques
1. Données et États (tableau détaillé)
| Donnée / État |
Type |
Exemple |
Source |
Contraintes |
death_id |
uuid_v4 |
uuid_v4 |
DB |
identifiant event |
animal_id |
uuid_v4 |
uuid_v4 |
DB |
cible |
is_baby |
boolean |
true |
DB |
invariant |
cause_code |
string |
NURSERY_FULL |
calcul |
enum |
scope.zoo_id |
uuid_v4 |
uuid_v4 |
DB |
- |
location.iso_x |
int | null |
120 |
DB |
null si nurserie (slot) |
location.iso_y |
int | null |
88 |
DB |
null si nurserie (slot) |
location.nurserie_id |
uuid_v4 | null |
uuid_v4 |
DB |
null si sur grille |
location.slot_id |
int | null |
3 |
DB |
requis si nurserie |
effects.reputation_delta |
int |
-50 |
calcul |
signé |
effects.stress_radius_tiles |
int |
2 |
config |
iso |
effects.cleanup_fee |
int |
10 |
config |
coins |
ttl.grave_seconds |
int |
3600 |
config |
suppression auto |
timestamps.created_at |
timestamp |
- |
DB |
UTC |
Caractéristiques Initiales (tableau détaillé)
| Caractéristique |
Valeur initiale |
Unité |
Notes |
| Compteur morts bébés |
0 |
count |
par zoo |
| Frais enlèvement |
10 |
coins |
configurable |
| Durée trace |
3600 |
s |
stèle/fantôme |
Scores Initiaux (tableau détaillé)
| Score |
Valeur initiale |
Plage |
Impact |
| Taux mortalité infantile |
0% |
0..100% |
affichage suivi, pas d’analytics |
| Malus réputation moyen |
0 |
points |
calcul à la volée sur fenêtre |
2. Cycles de Vie et Apparition (tableau détaillé)
| Phase |
Déclencheur |
Entrées |
Sorties |
Invariants |
| Détection |
tick |
états bébé |
décès |
cause déterminée |
| Notification |
décès |
cause |
modal |
ack requis |
| Trace |
décès |
position |
stèle |
TTL |
| Oubli |
temps |
7 jours in-game |
malus amorti |
fenêtre glissante |
Conditions d'Apparition (tableau détaillé)
| Condition |
Seuil |
Opérateur |
Résultat |
| Bébé meurt |
true |
est |
event BABY_DIED |
Conditions de Disparition (tableau détaillé)
| Condition |
Seuil |
Opérateur |
Résultat |
| Trace TTL |
3600 |
atteint |
suppression auto |
| Clic stèle |
true |
est |
suppression manuelle |
Hérédité (tableau détaillé)
| Élément |
Hérité |
Règle |
| Deuil parents |
Oui |
fertilité (-50%) pendant 1 semaine in-game |
| Historique décès |
Oui |
visible journal zoo |
3. Impacts Environnementaux
Impact Température (tableau détaillé)
| Condition |
Effet |
Notes |
| Temp extrême |
risque décès ↑ |
cf. bebe_animal.md |
Impact Milieu (Biome) (tableau détaillé)
| Biome |
Effet |
Notes |
| - |
stèle décorative |
apparaît sur case (si décès sur grille) |
Impact Saisons (tableau détaillé)
| Saison |
Effet |
Notes |
| Hiver |
cause fréquente (froid) |
surveillance accrue |
Impact Heure / Jour-Nuit (tableau détaillé)
| Période |
Effet |
Notes |
| Nuit |
risque froid ↑ |
baisse T° |
4. Impacts Biologiques et Sociaux
Impact Reproduction (tableau détaillé)
| Facteur |
Effet sur taux |
Condition |
| Deuil |
(-50%) |
parents du bébé |
| Blocage court |
0 |
24h in-game après décès |
Impact Mort (tableau détaillé)
| Cas |
Effet |
Condition |
| Domino |
stress +10 |
animaux à ≤2 cases iso |
Impact Nourriture (tableau détaillé)
| Ressource |
Effet |
Condition |
| Ration allouée |
perdue |
décès avant consommation |
Impact Attractivité(Visiteurs (tableau détaillé)
| Action/État |
Gain |
Rayon |
Notes |
| Décès visible |
- |
2 cases |
visiteurs évitent |
Impact Attractivité Animaux) (tableau détaillé)
| Action/État |
Effet animaux |
Condition |
| Décès proche |
stress ↑ |
zone impact |
Impact Valeur (tableau détaillé)
| Facteur |
Variation |
Condition |
| Perte potentielle |
-100% |
bébé disparu |
5. Impacts Logistiques et Économiques
Vitesse (Camion) (tableau détaillé)
| Paramètre |
Effet |
Condition |
| Décès en camion |
blocage slot |
vente échouée, non rapatriée |
Vitesse (Nurserie) (tableau détaillé)
| Paramètre |
Effet |
Condition |
| Saturation |
risque décès |
nurserie pleine + éclosion |
Vitesse (Accueil) (tableau détaillé)
| Paramètre |
Effet |
Condition |
| - |
- |
- |
Vitesse (Recherche) (tableau détaillé)
| Paramètre |
Effet |
Condition |
| - |
- |
- |
Vitesse (Labo) (tableau détaillé)
| Paramètre |
Effet |
Condition |
| - |
- |
- |
Vitesse (Visite) (tableau détaillé)
| Paramètre |
Effet |
Condition |
| Zone de décès |
ralentit flux |
évitement visiteurs |
Dépenses (Billeterie) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| - |
0 |
- |
- |
Dépenses (Boutiques) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| - |
0 |
- |
- |
Dépenses (Visiteurs) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| - |
0 |
- |
- |
Dépenses (Employés) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| Intervention sanitaire |
10 |
coins |
option équarrissage |
Dépenses (Boutiques) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| Section dupliquée |
0 |
- |
conservée |
Dépenses (Nurseries) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| Upgrade prévention |
variable |
coins |
infirmerie/nurserie |
Dépenses (Nourriture) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| - |
0 |
- |
- |
Dépenses (Acceuil des animaux) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| - |
0 |
- |
- |
Dépenses (Camion) (tableau détaillé)
| Poste |
Coût |
Unité |
Condition |
| Rapatriement |
5 |
coins |
vente échouée |
Trajet Visiteurs
Trajet Visiteurs vers/depuis la ville (tableau détaillé)
| Source |
Destination |
Déclencheur |
Effet |
| Ville |
Zoo |
réputation |
baisse fréquentation si répétée |
Trajet Visiteurs vers/depuis les animaux (tableau détaillé)
| Source |
Destination |
Déclencheur |
Effet |
| Allées |
Zone décès |
proximité |
évitement |
Trajet Visiteurs vers/depuis les boutiques (tableau détaillé)
| Source |
Destination |
Déclencheur |
Effet |
| Zone décès |
Boutique |
fuite |
déplacement rapide |
Trajet Visiteurs vers/depuis la billeterie (entrées/sorties du zoo) (tableau détaillé)
| Source |
Destination |
Déclencheur |
Effet |
| Zone décès |
Sortie |
choc |
sortie anticipée |
6. Événements
Événements du Jeu (tableau détaillé)
| Event |
Déclencheur |
Payload |
Effet |
BABY_DIED |
décès |
animal_id, cause_code |
impacts |
GRAVE_SPAWNED |
trace |
iso_x, iso_y |
stèle |
SANITATION_FEE_CHARGED |
option |
amount |
coins - |
Événements du Carte (tableau détaillé)
| Event |
Déclencheur |
Effet |
DEATH_MARKER_SHOW |
map open |
marker zone |
Événements du Zoo (tableau détaillé)
| Event |
Déclencheur |
Effet |
UI_DEATH_ALERT_SHOWN |
notif |
modal |
Événements du Ville / Visiteur (tableau détaillé)
| Event |
Déclencheur |
Effet |
VISITOR_AVOID_DEATH_ZONE |
proximité |
reroute |
Événements du Visiteur (tableau détaillé)
| Event |
Déclencheur |
Effet |
VISITOR_CRIES |
mort visible |
satisfaction - |
Événements du Joueur (tableau détaillé)
| Event |
Déclencheur |
Effet |
PLAYER_ACK_DEATH |
clic OK |
clôture |
PLAYER_REMOVE_GRAVE |
clic stèle |
suppression |
7. Progression
Tableau des Upgrades (tableau détaillé)
| Niveau |
Coût |
Effet |
Débloque |
| Infirmerie 1 |
100 |
risque -10% |
soins |
| Infirmerie 2 |
250 |
risque -20% |
urgence |
| Infirmerie 3 |
800 |
risque -50% |
protocole |
8. Logique et Interfaces
Pseudo-code Impacts (tableau détaillé)
| Fonction |
Entrées |
Sorties |
Notes |
handleBabyDeath |
baby, cause |
event |
applique malus |
computeDeathVisibility |
location, visitors |
bool |
pondère impacts |
spawnGrave |
location |
grave |
TTL |
Messages d'Infos / Alerte (tableau détaillé)
| ID |
Niveau |
Message |
Condition |
BABY_DIED |
Critique |
"Un bébé est mort." |
décès |
NURSERY_FULL_DEATH |
Critique |
"Nurserie pleine : décès." |
cause NURSERY_FULL |
SALE_TRUCK_DEATH |
Warning |
"Décès en camion : vente échouée." |
cause SALE_TRUCK_TIMEOUT |
Annexes UX/UI
1. Expérience Utilisateur (UX)
Description UX (tableau détaillé)
| Parcours |
But |
Friction |
Réduction clics |
| Recevoir l’alerte |
comprendre la cause |
choc |
modal + bouton “voir sur carte” |
| Retirer trace |
nettoyer zone |
navigation |
clic direct sur stèle |
Description UI (tableau détaillé)
| Composant |
Contenu |
États |
| Modal décès |
cause + impacts |
critique/ack |
| Stèle |
sprite décoratif |
clickable/ttl |
| Marker carte |
icône |
visible/masqué |
Emplacement (tableau détaillé)
| Zone UI |
Position |
Notes |
| HUD |
notifications |
priorité haute |
| Carte zoo |
sur case |
stèle |
Intégration (tableau détaillé)
| Intégration |
Contrat |
Notes |
bebe_animal.md |
fragilité temp |
causes |
score_reputation.md |
malus réputation |
impacts |
Navigation (tableau détaillé)
| Action |
Chemin |
Résultat |
| Ouvrir détail |
notif → modal |
cause affichée |
| Aller sur carte |
bouton modal |
caméra centre |
| Retirer stèle |
clic stèle |
suppression |
Événements (tableau détaillé)
| Event UI |
Déclencheur |
Effet |
OPEN_DEATH_MODAL |
event |
modal |
CLICK_VIEW_ON_MAP |
bouton |
caméra |
CLICK_REMOVE_GRAVE |
stèle |
suppression |
Assets Skinables
Musiques (tableau détaillé)
| Asset |
Usage |
Durée |
Notes |
baby_death_sting.mp3 |
décès |
2.0s |
triste |
Sons (tableau détaillé)
| Asset |
Usage |
Volume |
ui_death_gong.mp3 |
alerte |
moyen |
ui_modal_close.mp3 |
ack |
bas |
Graphiques (tableau détaillé)
| Asset |
Usage |
Contraintes |
grave_stone_iso.png |
stèle |
iso 4 dirs |
baby_ghost_fx.png |
fantôme |
overlay |
death_skull_icon.png |
icône |
contraste |
Images (tableau détaillé)
| Asset |
Usage |
black_ribbon.png |
modal |
death_bg_noise.png |
overlay |
Vidéos (tableau détaillé)
| Asset |
Usage |
Durée |
death_alert_glitch.webm |
modal |
0.7s |
Animations (tableau détaillé)
| Animation |
Déclencheur |
Notes |
| fade fantôme |
décès |
1.0s |
| tremblement modal |
alerte |
0.5s |
Couleurs (tableau détaillé)
| Token |
Valeur |
Usage |
death_black |
#000000 |
fond |
death_gray |
#616161 |
texte |
death_red |
#D32F2F |
critique |
Textes (tableau détaillé)
| Clé |
FR |
EN |
death.baby.title |
Décès d’un bébé |
Baby death |
death.baby.cause |
Cause |
Cause |
death.ack |
OK |
OK |
Formes (tableau détaillé)
| Élément |
Forme |
Notes |
| Modal |
rectangle arrondi |
accessible |
| Icône |
rond |
constant |