Files
builazoo/docs/specs/score_reputation.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

163 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Spécifications : Score de Réputation
## Définition
Indicateur global de la qualité et du prestige du zoo. C'est le moteur de l'économie (Visiteurs).
## Composantes
- **Valeur du Cheptel** : Somme des valeurs de rareté des animaux vivants.
- **Diversité** : Bonus pour chaque espèce différente présente.
- **Bien-être** : Bonus si le Score de Survie moyen est élevé.
- **Esthétique/Aménagement** : Bonus pour les bâtiments améliorés.
## Malus
- **Morts** : Chaque mort inflige une pénalité temporaire mais significative.
- **Insatisfaction** : Visiteurs repartant mécontents (incidents non résolus).
# Annexes Techniques
## 1. Données et États
### Modèle de Données (JSON)
Propriété de `Zoo`.
`reputation_score: integer`
### Caractéristiques Initiales
| Caractéristique | Valeur Initiale |
| :--- | :--- |
| Réputation | 0 |
### Scores Initiaux
| Score | Valeur Initiale | Plage (Min-Max) | Impact |
|---|---:|---|---|
| Prestige | 0 | 0-10000 | Sert de base au flux visiteurs (via attractivité ville → zoo). |
| Malus décès récent | 0 | 0-5000 | Décroît sur 24h ; pénalise flux visiteurs. |
| Bonus diversité | 0 | 0-2000 | Bonus si plusieurs espèces présentes. |
## 2. Cycles de Vie et Apparition
### Conditions d'Apparition
| Condition | Seuil | Opérateur | Résultat |
|---|---:|---|---|
| Premier animal placé | 1 | >= | La réputation devient calculable (sinon 0). |
### Conditions de Disparition
| Condition | Seuil | Opérateur | Résultat |
|---|---:|---|---|
| Zoo supprimé | true | Est | Score supprimé avec le zoo. |
### Hérédité
| Parent | Trait Transmis | Probabilité | Mutation Possible |
|---|---|---:|---|
| Soft reset / prestige | Bonus de départ | 100% | Non |
## 3. Impacts Environnementaux
### Impact Température
| Condition | Effet |
|---|---|
| Trop chaud / trop froid (global) | Réputation -10% temporaire si > X animaux en état critique |
### Impact Milieu (Biome)
| Biome | Effet |
|---|---|
| Enclos adaptés | + réputation via survie + satisfaction visiteurs |
### Impact Saisons
| Saison | Effet |
|---|---|
| Été | Réputation “visible” +5% (affluence) si incidents faibles |
| Hiver | Réputation “visible” -5% si gestion température mauvaise |
### Impact Heure / Jour-Nuit
| Période | Effet |
|---|---|
| Jour | Variation normale |
| Nuit | Pas de hausse via visiteurs (zoo fermé), seulement décroissance des malus |
## 4. Impacts Biologiques et Sociaux
### Impact Reproduction
**Bonus** : +10 pts par naissance.
### Impact Mort
**Malus** : -50 pts par mort (décroissance sur 24h).
### Impact Nourriture
| Facteur | Variation | Condition |
|---|---|---|
| Stock nourriture stable | +1% / jour | Aucun animal en faim critique |
### Impact Attractivité (Visiteurs/Animaux)
C'est la métrique de base de l'attractivité.
### Impact Valeur
| Facteur | Variation | Condition |
|---|---|---|
| Réputation élevée | Prix de vente animaux +5% | si marché utilise réputation vendeur |
## 5. Impacts Logistiques et Économiques
### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)
| Domaine | Paramètre | Valeur | Unité | Effet |
|---|---|---:|---|---|
| Mise à jour score | Période | 60 | s | Recalcul périodique ou lazy update. |
### Dépenses (Boutiques/Visiteurs)
| Poste | Coût | Unité | Condition |
|---|---:|---|---|
| Campagnes image | 10005000 | coins | Augmente temporairement la réputation visible |
### Trajet Visiteurs
| Mécanisme | Impact | Détail |
|---|---|---|
| Flux ville→zoo | Direct | Réputation est un facteur principal de flux |
## 6. Événements
### Événements du Jeu / Carte / Zoo / Ville / Visiteur
* **Passage Niveau** : Notification.
## 7. Progression
### Tableau des Upgrades
| Niveau | Coût | Prérequis | Bonus Débloqué |
|---|---:|---|---|
| 1 | 0 | - | Réputation visible + tooltips |
| 2 | 1000 | Boutique niv 2 | Affichage détaillé des composantes |
## 8. Logique et Interfaces
### Pseudo-code Impacts
```
score = sum(animal.rarity * 10) + (uniqueSpecies * 50) + buildingsValue - deathPenalty
```
### Messages d'Infos / Alerte
| Type | Message | Condition | Priorité |
|---|---|---|---:|
| Info | "Réputation +{delta}" | hausse significative | 2 |
| Warn | "Réputation en baisse : trop de morts/incidents" | seuil franchi | 4 |
# 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)
### Affichage Score (Permanent)
**Description UX** : Le joueur connaît son niveau de prestige.
**Description UI** : Étoiles ou Couronne dans le HUD avec barre de progression vers le niveau suivant.
**Emplacement** : HUD Haut.
**Intégration** : Fixe.
**Navigation** : Survol -> Détail calcul.
**Événements** : `SCORE_UPDATE`.
#### Assets
- **Musiques** : `level_up_jingle.mp3` (court), `ui_score_tick.mp3` (optionnel).
- **Sons** : `level_up_jingle.mp3`.
- **Graphiques** : Icône Couronne.
- **Images** : `icon_crown.png`, `reputation_star.png`.
- **Vidéos** : `crown_glint.webm` (0.8s non loop, optionnel).
- **Animations** : Brillance quand augmente.
- **Couleurs** : Or.
- **Textes** : "Niveau 5 (4500 pts)".
- **Formes** : Étoile.