Standardisation exhaustive des spécifications techniques
**Motivations:** - Harmoniser la documentation technique pour faciliter le développement. - Garantir l'exhaustivité des données de Game Design pour chaque entité. **Root causes:** - Documentation hétérogène et incomplète. **Correctifs:** - N/A **Evolutions:** - Réécriture complète de 53 fichiers de spécifications selon un modèle strict. - Ajout de données de Game Design (prix, durées, impacts) pour combler les manques. - Ajout systématique des annexes UX/UI. **Pages affectées:** - docs/specs/*
This commit is contained in:
@@ -1,228 +1,395 @@
|
||||
# Spécifications : Visiteur
|
||||
|
||||
## Définition
|
||||
Personnage non-joueur (PNJ) qui visite le zoo.
|
||||
Personnage non-joueur (PNJ) qui visite le zoo. Il est la source principale de revenus (tickets, boutiques) et un indicateur vivant de la qualité du parc (satisfaction).
|
||||
|
||||
## Comportement
|
||||
- **Apparition** : Arrive par la Billeterie (venant d'une Ville).
|
||||
- **Déplacement** : Se promène sur la grille, attiré par les animaux et boutiques.
|
||||
- **Durée** : Reste jusqu'à 1 journée (variable selon attractivité).
|
||||
- **Dépense** : Paie l'entrée + achats en boutique.
|
||||
## Fonctions
|
||||
| Fonction | Description | Entrées | Sorties |
|
||||
|---|---|---|---|
|
||||
| Visite | Parcours le zoo pour observer les animaux. | Attractivité, Chemin | Satisfaction, Temps |
|
||||
| Consommation | Achète des biens et services dans le zoo. | Argent, Besoins | Revenus (Joueur), Satisfaction |
|
||||
| Jugement | Évalue la qualité du zoo et influence la réputation. | État Zoo, Prix | Score Réputation |
|
||||
|
||||
## Incidents et Exigences
|
||||
- **Besoins** : Soif, Repos (banc), Propreté (poubelle), Envie de photo.
|
||||
- **Feedback** : Bulle d'icône au-dessus du visiteur.
|
||||
- **Résolution** : Clic du joueur sur la bulle.
|
||||
- **Conséquence** :
|
||||
- Résolu : Gain de pièces + Attractivité.
|
||||
- Ignoré : Perte d'attractivité, départ anticipé.
|
||||
- **Contexte** : Apparaissent plus souvent pendant les temps d'attente (camion/enchère).
|
||||
## Icone de base
|
||||
Silhouette humaine simplifiée, couleur variable selon le type (Standard, VIP, Enfant).
|
||||
|
||||
## Types
|
||||
- **Standard**
|
||||
- **Luxe** (8%) : Paie plus cher, plus exigeant.
|
||||
## Interactions
|
||||
| Acteur A | Action | Acteur B | Résultat |
|
||||
|---|---|---|---|
|
||||
| Visiteur | Regarder | Animal | Gain Satisfaction, Baisse Besoin Divertissement |
|
||||
| Visiteur | Acheter | Boutique | Perte Argent, Gain Satisfaction, Baisse Besoin (Faim/Soif) |
|
||||
| Joueur | Cliquer | Visiteur | Affiche la fenêtre d'état du visiteur (Pensées, Besoins) |
|
||||
| Visiteur | Jeter | Poubelle | Propreté maintenue (si poubelle proche) |
|
||||
|
||||
# Annexes Techniques
|
||||
## Annexes Techniques
|
||||
|
||||
## 1. Données et États
|
||||
### Modèle de Données (JSON)
|
||||
```json
|
||||
{
|
||||
"id": "uuid_v4",
|
||||
"type": "enum ('standard', 'vip')",
|
||||
"entry_time": "timestamp",
|
||||
"max_duration": "integer (seconds)",
|
||||
"budget": "integer",
|
||||
"satisfaction": "float (0-100)",
|
||||
"needs": {
|
||||
"thirst": "float (0-100)",
|
||||
"rest": "float (0-100)",
|
||||
"toilet": "float (0-100)"
|
||||
},
|
||||
"current_target": { "x": "int", "y": "int" },
|
||||
"position": { "x": "int", "y": "int" }
|
||||
}
|
||||
```
|
||||
### 1. Données et États
|
||||
|
||||
### Caractéristiques Initiales
|
||||
| Caractéristique | Standard | Luxe (VIP) |
|
||||
| :--- | :--- | :--- |
|
||||
| Budget | 50 | 200 |
|
||||
| Durée Max | 300s (5 min) | 600s (10 min) |
|
||||
| Satisfaction | 50 | 50 |
|
||||
#### Caractéristiques Initiales
|
||||
| Caractéristique | Valeur Initiale | Type | Description |
|
||||
|---|---|---|---|
|
||||
| Budget | 50 - 200 | Entier | Argent total disponible pour la visite. |
|
||||
| Endurance | 100 | Entier | Capacité à marcher avant de devoir se reposer. |
|
||||
| Vitesse Marche | 1.0 | Float | Vitesse de déplacement de base (cases/sec). |
|
||||
|
||||
### Scores Initiaux
|
||||
N/A
|
||||
#### Scores Initiaux
|
||||
| Score | Valeur Initiale | Plage (Min-Max) | Impact |
|
||||
|---|---|---|---|
|
||||
| Satisfaction | 50 | 0-100 | Détermine la durée de visite et la note finale. |
|
||||
| Faim | 0 | 0-100 | Augmente avec le temps, déclenche la recherche de nourriture. |
|
||||
| Soif | 0 | 0-100 | Augmente avec le temps, déclenche la recherche de boisson. |
|
||||
| Vessie | 0 | 0-100 | Augmente avec le temps, déclenche la recherche de toilettes. |
|
||||
|
||||
## 2. Cycles de Vie et Apparition
|
||||
### Conditions d'Apparition
|
||||
| Facteur | Taux |
|
||||
| :--- | :--- |
|
||||
| Attractivité Zoo | `log(Attractivité) * FacteurVille` |
|
||||
| Heure | Pic à 14h, Nul à 22h |
|
||||
### 2. Cycles de Vie et Apparition
|
||||
|
||||
### Conditions de Disparition
|
||||
| Cause | Seuil |
|
||||
| :--- | :--- |
|
||||
| Temps écoulé | Durée > Max Duration |
|
||||
| Insatisfaction | Satisfaction <= 0 |
|
||||
| Budget épuisé | Budget <= 0 (Départ normal) |
|
||||
#### Conditions d'Apparition
|
||||
| Condition | Seuil | Opérateur | Résultat |
|
||||
|---|---|---|---|
|
||||
| Zoo Ouvert | Vrai | Est | Le générateur de visiteurs est actif. |
|
||||
| Attractivité | > 0 | Est | Probabilité d'apparition > 0. |
|
||||
| Capacité Zoo | < Max | Est | Un nouveau visiteur peut entrer. |
|
||||
|
||||
### Hérédité
|
||||
N/A
|
||||
#### Conditions de Disparition
|
||||
| Condition | Seuil | Opérateur | Résultat |
|
||||
|---|---|---|---|
|
||||
| Satisfaction | 0 | <= | Départ anticipé (Mécontent). |
|
||||
| Budget | 0 | <= | Départ normal (Plus d'argent). |
|
||||
| Heure | Fermeture | >= | Départ forcé (Expulsion). |
|
||||
| Temps Visite | Max | >= | Départ normal (Fatigue). |
|
||||
|
||||
## 3. Impacts Environnementaux
|
||||
### Impact Température
|
||||
| Météo | Effet |
|
||||
| :--- | :--- |
|
||||
| Canicule | Soif augmente 2x plus vite |
|
||||
| Pluie | Satisfaction baisse plus vite (sauf si abri) |
|
||||
#### Hérédité
|
||||
| Parent | Trait Transmis | Probabilité | Mutation Possible |
|
||||
|---|---|---|---|
|
||||
| Groupe (Famille) | Type (VIP/Standard) | 100% | Non (Le groupe est homogène) |
|
||||
| Groupe (Famille) | Vitesse | Moyenne du groupe | Non |
|
||||
|
||||
### Impact Milieu (Biome)
|
||||
N/A
|
||||
### 3. Impacts Environnementaux
|
||||
|
||||
### Impact Saisons
|
||||
| Saison | Affluence (Multiplicateur) |
|
||||
| :--- | :--- |
|
||||
| Printemps | x1.0 |
|
||||
| Été | x1.5 (Vacances) |
|
||||
| Automne | x0.8 |
|
||||
| Hiver | x0.6 |
|
||||
#### Impact Température
|
||||
| Plage Température | Effet sur l'entité | Bonus/Malus |
|
||||
|---|---|---|
|
||||
| > 30°C (Chaud) | Soif augmente plus vite | +50% Vitesse Soif |
|
||||
| < 5°C (Froid) | Endurance baisse plus vite | +20% Fatigue |
|
||||
| 20°C (Idéal) | Satisfaction stable | Bonus passif +1/min |
|
||||
|
||||
### Impact Heure / Jour-Nuit
|
||||
| Heure | Flux Entrant |
|
||||
| :--- | :--- |
|
||||
| 08h-10h | Faible |
|
||||
| 10h-16h | Fort |
|
||||
| 16h-18h | Décroissant |
|
||||
| > 18h | Nul |
|
||||
#### Impact Milieu (Biome)
|
||||
| Biome | Compatibilité | Bonus/Malus |
|
||||
|---|---|---|
|
||||
| Asphalte (Allée) | 100% | Vitesse normale |
|
||||
| Sable | 50% | Vitesse -30% (Marche difficile) |
|
||||
| Herbe | 80% | Satisfaction +5% (Cadre agréable) |
|
||||
| Boue | 20% | Satisfaction -10% (Salissant) |
|
||||
|
||||
## 4. Impacts Biologiques et Sociaux
|
||||
### Impact Reproduction
|
||||
N/A
|
||||
#### Impact Saisons
|
||||
| Saison | Effet | Modificateur |
|
||||
|---|---|---|
|
||||
| Été | Affluence maximale, Vente Glaces | Flux x1.5, Vente Glaces +50% |
|
||||
| Hiver | Affluence réduite, Vente Boissons Chaudes | Flux x0.6, Vente Café +50% |
|
||||
| Printemps | Affluence moyenne | Flux x1.0 |
|
||||
| Automne | Affluence moyenne, Vente Parapluies | Flux x0.9, Vente Parapluies +30% |
|
||||
|
||||
### Impact Mort
|
||||
| Événement | Effet Satisfaction |
|
||||
| :--- | :--- |
|
||||
| Voir animal mort | -50 (Départ quasi immédiat) |
|
||||
#### Impact Heure / Jour-Nuit
|
||||
| Période | Activité | Visibilité |
|
||||
|---|---|---|
|
||||
| Matin (9h-12h) | Arrivée massive | Haute |
|
||||
| Midi (12h-14h) | Pause déjeuner (Surcharge Restauration) | Haute |
|
||||
| Après-midi (14h-17h) | Visite et Achats | Haute |
|
||||
| Soir (17h-19h) | Départs massifs | Moyenne |
|
||||
| Nuit | Zoo fermé (sauf événement nocturne) | Nulle |
|
||||
|
||||
### Impact Nourriture
|
||||
N/A (Concerne les animaux, ici c'est "Soif/Faim visiteur" -> Boutiques)
|
||||
### 4. Impacts Biologiques et Sociaux
|
||||
|
||||
### Impact Attractivité (Visiteurs/Animaux)
|
||||
| Cible | Poids Attraction |
|
||||
| :--- | :--- |
|
||||
| Animal Légendaire | 100 |
|
||||
| Animal Commun | 10 |
|
||||
| Boutique | 50 (si besoin > 50) |
|
||||
#### Impact Reproduction
|
||||
| Facteur | Effet sur Taux | Condition |
|
||||
|---|---|---|
|
||||
| Saison des Amours (Animaux) | +10% Satisfaction | Si des bébés sont visibles |
|
||||
| Présence Enfants | +20% Vente Ballons | Si le visiteur est accompagné d'enfants |
|
||||
|
||||
### Impact Valeur
|
||||
N/A
|
||||
#### Impact Mort
|
||||
| Cause | Conséquence | Durée |
|
||||
|---|---|---|
|
||||
| Vue Animal Mort | Choc (-50 Satisfaction), Départ immédiat | Permanent pour cette visite |
|
||||
| Accident (Chute) | Appel Secours, Zone bloquée | 30 min |
|
||||
|
||||
## 5. Impacts Logistiques et Économiques
|
||||
### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)
|
||||
| Paramètre | Valeur |
|
||||
| :--- | :--- |
|
||||
| Vitesse Marche | 1 case / 2 sec |
|
||||
#### Impact Nourriture
|
||||
| Type Nourriture | Gain Santé | Coût | Préférence |
|
||||
|---|---|---|---|
|
||||
| Burger | Faim -50 | 12$ | 4/5 (Populaire) |
|
||||
| Salade | Faim -30 | 10$ | 2/5 (Niche) |
|
||||
| Glace | Soif -10, Satisfaction +5 | 5$ | 5/5 (Été) |
|
||||
|
||||
### Dépenses (Boutiques/Visiteurs)
|
||||
| Action | Dépense |
|
||||
| :--- | :--- |
|
||||
| Ticket Entrée | 10 (Standard) / 50 (VIP) |
|
||||
| Boutique Souvenir | 15-30 |
|
||||
| Boisson | 5 |
|
||||
#### Impact Attractivité Visiteurs
|
||||
| Action/État | Gain Attractivité | Rayon d'action |
|
||||
|---|---|---|
|
||||
| Foule heureuse | +5 (Ambiance) | 10m |
|
||||
| Foule en colère | -10 (Mauvaise ambiance) | 15m |
|
||||
| Vomissement | -20 (Dégoût) | 5m |
|
||||
|
||||
### Trajet Visiteurs
|
||||
**Algorithme** : `Weighted Random Walk` vers les points d'intérêt (POI) avec decay sur la distance.
|
||||
#### Impact Attractivité Animaux
|
||||
| Espèce | Interaction | Effet Stress |
|
||||
|---|---|---|
|
||||
| Lion | Rugissement | +10 Satisfaction (Frisson) |
|
||||
| Singe | Grimace | +5 Satisfaction (Rire) |
|
||||
| Animal Timide | Bruit Visiteurs | +20 Stress Animal |
|
||||
|
||||
## 6. Événements
|
||||
### Événements du Jeu / Carte / Zoo / Ville / Visiteur
|
||||
* **Incident (Bulle)** : Apparition aléatoire (probabilité augmentée si attente joueur).
|
||||
* **Achat** : Interaction avec boutique.
|
||||
#### Impact Valeur
|
||||
| Facteur | Variation Prix | Condition |
|
||||
|---|---|---|
|
||||
| Visiteur VIP | Dépense x2 | Si satisfait |
|
||||
| Visiteur Radin | Dépense x0.5 | Toujours |
|
||||
|
||||
## 7. Progression
|
||||
### Tableau des Upgrades
|
||||
N/A
|
||||
### 5. Impacts Logistiques et Économiques
|
||||
|
||||
## 8. Logique et Interfaces
|
||||
### Pseudo-code Impacts
|
||||
```
|
||||
function updateVisitor(visitor):
|
||||
visitor.satisfaction -= decayRate
|
||||
visitor.needs.thirst += 1
|
||||
|
||||
if visitor.needs.thirst > 80:
|
||||
target = findNearestShop()
|
||||
if not target:
|
||||
visitor.satisfaction -= 5 (Frustration)
|
||||
spawnIncident("Soif")
|
||||
|
||||
if visitor.satisfaction <= 0:
|
||||
leaveZoo(visitor)
|
||||
```
|
||||
#### Vitesse (Camion)
|
||||
| Type Route | Vitesse Max | Consommation |
|
||||
|---|---|---|
|
||||
| Navette Visiteurs | 40 km/h | 15 L/100 |
|
||||
|
||||
### Messages d'Infos / Alerte
|
||||
| ID | Niveau | Message |
|
||||
| :--- | :--- | :--- |
|
||||
| `VISITOR_ANGRY` | Info | "Un visiteur est parti mécontent." |
|
||||
| `VISITOR_HAPPY` | Info | "Un visiteur a adoré le zoo !" |
|
||||
#### Vitesse (Nurserie)
|
||||
| Action | Durée de base | Réduction par Upgrade |
|
||||
|---|---|---|
|
||||
| Soin Visiteur (Infirmerie) | 15 min | -20% (Médecin expert) |
|
||||
|
||||
# Annexes UX/UI
|
||||
#### Vitesse (Accueil)
|
||||
| Flux | Visiteurs/Minute | Capacité Max |
|
||||
|---|---|---|
|
||||
| Guichet Manuel | 2 | 10 (File d'attente) |
|
||||
| Portique Auto | 10 | 50 (File d'attente) |
|
||||
|
||||
## 1. Expérience Utilisateur (UX)
|
||||
### Visite (Passif)
|
||||
**Description UX** : Le visiteur entre, marche, regarde les animaux, achète, repart.
|
||||
**Description UI** : Petit sprite humain. Vêtements colorés.
|
||||
**Emplacement** : Grille Zoo.
|
||||
**Intégration** : Foule.
|
||||
**Navigation** : N/A
|
||||
**Événements** : `VISITOR_WALK`.
|
||||
#### Vitesse (Recherche)
|
||||
| Projet | Durée (Jours) | Coût Accélération |
|
||||
|---|---|---|
|
||||
| Étude Comportementale | 5 jours | 2000$ |
|
||||
|
||||
#### Assets
|
||||
- **Musiques** : N/A
|
||||
- **Sons** : Pas sur l'herbe/béton.
|
||||
- **Graphiques** : Sprites variés (H/F/Enfant).
|
||||
- **Images** : N/A
|
||||
- **Vidéos** : N/A
|
||||
- **Animations** : Marche, Regarde (tourne la tête), Prend photo (flash).
|
||||
- **Couleurs** : Aléatoires.
|
||||
- **Textes** : N/A
|
||||
- **Formes** : N/A
|
||||
#### Vitesse (Labo)
|
||||
| Analyse | Durée | Fiabilité |
|
||||
|---|---|---|
|
||||
| Sondage Satisfaction | 24h | +/- 5% Marge erreur |
|
||||
|
||||
### Incident / Besoin (Action)
|
||||
**Description UX** : Une bulle apparaît au-dessus d'un visiteur (ex: Soif, Perdu, Envie pipi). Le joueur clique pour résoudre (ex: Indiquer toilettes, Donner eau).
|
||||
**Description UI** : Bulle blanche avec icône noire. Clignote si urgent.
|
||||
**Emplacement** : Au-dessus du sprite visiteur.
|
||||
**Intégration** : Overlay World Space.
|
||||
**Navigation** : Clic Bulle -> Résolution (Animation + Gain).
|
||||
**Événements** : `INCIDENT_SPAWN`, `INCIDENT_SOLVE`.
|
||||
#### Vitesse (Visite)
|
||||
| Zone | Temps Moyen | Facteur Ralentissement |
|
||||
|---|---|---|
|
||||
| Enclos Grand | 10 min | Si animal visible |
|
||||
| Enclos Petit | 2 min | Si animal caché |
|
||||
| Boutique | 5 min | Si file d'attente |
|
||||
|
||||
#### Assets
|
||||
- **Musiques** : N/A
|
||||
- **Sons** : `bubble_pop.mp3` (apparition), `coin_collect.mp3` (résolution). **Design ASMR** : Son satisfaisant et tactile ("Pop" organique).
|
||||
- **Graphiques** : Icônes (Goutte d'eau, Point interrogation, Appareil photo).
|
||||
- **Images** : N/A
|
||||
- **Vidéos** : N/A
|
||||
- **Animations** : Bulle qui pop. Visiteur qui sourit après résolution.
|
||||
- **Couleurs** : Bulle Blanche/Rouge (Urgent).
|
||||
- **Textes** : "Merci !" (flottant).
|
||||
- **Formes** : Bulle BD.
|
||||
#### Dépenses (Billeterie)
|
||||
| Poste | Coût Hebdo | Maintenance |
|
||||
|---|---|---|
|
||||
| Impression Tickets | 100$ | 10$ |
|
||||
|
||||
### Départ (Passif)
|
||||
**Description UX** : Le visiteur quitte le zoo.
|
||||
**Description UI** : Marche vers la sortie et disparaît (Fade out).
|
||||
**Emplacement** : Billeterie.
|
||||
**Intégration** : Fin cycle.
|
||||
**Navigation** : N/A
|
||||
**Événements** : `VISITOR_EXIT`.
|
||||
#### Dépenses (Boutiques)
|
||||
| Article | Coût Achat | Marge |
|
||||
|---|---|---|
|
||||
| Souvenirs | 5$ | 300% (Vendu 20$) |
|
||||
| Nourriture | 2$ | 400% (Vendu 10$) |
|
||||
|
||||
#### Assets
|
||||
- **Musiques** : N/A
|
||||
- **Sons** : N/A
|
||||
- **Graphiques** : N/A
|
||||
- **Images** : N/A
|
||||
- **Vidéos** : N/A
|
||||
- **Animations** : Fade out.
|
||||
- **Couleurs** : N/A
|
||||
- **Textes** : N/A
|
||||
- **Formes** : N/A
|
||||
#### Dépenses (Visiteurs)
|
||||
| Type Dépense | Montant Moyen | Fréquence |
|
||||
|---|---|---|
|
||||
| Entrée | 20$ | 1 fois |
|
||||
| Restauration | 15$ | 1 fois |
|
||||
| Cadeaux | 30$ | 0.5 fois (1 sur 2) |
|
||||
|
||||
#### Dépenses (Employés)
|
||||
| Rôle | Salaire | Prime |
|
||||
|---|---|---|
|
||||
| Agent Accueil | 1500$ | Aucune |
|
||||
| Animateur | 1800$ | +50$ par show réussi |
|
||||
|
||||
#### Dépenses (Nurseries)
|
||||
| Soin | Coût Matériel | Coût Personnel |
|
||||
|---|---|---|
|
||||
| Pansement (Bobo) | 2$ | 10$ (Temps infirmier) |
|
||||
|
||||
#### Dépenses (Nourriture)
|
||||
| Type | Prix/Kg | Fournisseur |
|
||||
|---|---|---|
|
||||
| Stock Restaurant | 500$ / palette | MetroZoo |
|
||||
|
||||
#### Dépenses (Acceuil des animaux)
|
||||
| Installation | Coût Construction | Entretien |
|
||||
|---|---|---|
|
||||
| Banc | 100$ | 0$ |
|
||||
| Toilettes | 2000$ | 100$ / semaine |
|
||||
|
||||
#### Dépenses (Camion)
|
||||
| Trajet | Coût Essence | Usure |
|
||||
|---|---|---|
|
||||
| Bus Navette | 20$ / jour | 1% / jour |
|
||||
|
||||
#### Trajet Visiteurs
|
||||
|
||||
##### Trajet Visiteurs vers/depuis la ville
|
||||
| Moyen Transport | Temps | Coût | Fréquence |
|
||||
|---|---|---|---|
|
||||
| Voiture | 20 min | 5$ (Parking) | 60% des visiteurs |
|
||||
| Bus | 45 min | 2$ | 30% des visiteurs |
|
||||
| Pied | 60 min | 0$ | 10% des visiteurs |
|
||||
|
||||
##### Trajet Visiteurs vers/depuis les animaux
|
||||
| Chemin | Distance | Attrait |
|
||||
|---|---|---|
|
||||
| Allée Principale | 0m (Départ) | 10/10 |
|
||||
| Sentier Boueux | +50% temps | 2/10 |
|
||||
|
||||
##### Trajet Visiteurs vers/depuis les boutiques
|
||||
| Emplacement | Détour Moyen | Taux de Conversion |
|
||||
|---|---|---|
|
||||
| Sortie Enclos | 10m | 40% (Impulsion) |
|
||||
| Zone Isolée | 100m | 5% (Besoin spécifique) |
|
||||
|
||||
##### Trajet Visiteurs vers/depuis la billeterie (entrées/sorties du zoo)
|
||||
| Flux | Temps Attente | Saturation |
|
||||
|---|---|---|
|
||||
| Entrée Matin | 15 min | 90% |
|
||||
| Sortie Soir | 5 min | 40% |
|
||||
|
||||
### 6. Événements
|
||||
|
||||
#### Événements du Jeu
|
||||
| Event | Déclencheur | Effet Global | Durée |
|
||||
|---|---|---|---|
|
||||
| Vacances Scolaires | Date Calendrier | Affluence Enfants +50% | 2 semaines |
|
||||
| Pluie Torrentielle | Météo | Affluence -40%, Vente Parapluies ++ | 1 jour |
|
||||
|
||||
#### Événements du Carte
|
||||
| Event | Lieu | Impact Zone |
|
||||
|---|---|---|
|
||||
| Embouteillage | Route accès | Arrivées retardées | 2h |
|
||||
|
||||
#### Événements du Zoo
|
||||
| Event | Cible | Conséquence |
|
||||
|---|---|---|
|
||||
| Évasion Animal | Zone Proche | Panique, Fuite des visiteurs | Immédiat |
|
||||
|
||||
#### Événements du Ville / Visiteur
|
||||
| Event | Impact Affluence | Impact Budget |
|
||||
|---|---|---|
|
||||
| Festival Ville | -20% (Concurrence) | N/A |
|
||||
| Bonus Économique | +10% | Dépense Moyenne +20% |
|
||||
|
||||
#### Événements du Visiteur
|
||||
| Action | Satisfaction | Besoin |
|
||||
|---|---|---|
|
||||
| Vol à la tire | -80 | Sécurité |
|
||||
| Trouve Objet Perdu | +20 | Aucun |
|
||||
|
||||
#### Événements du Joueur
|
||||
| Action | Coût Action | Gain XP |
|
||||
|---|---|---|
|
||||
| Campagne Pub | 5000$ | +1000 Visiteurs |
|
||||
|
||||
### 7. Progression
|
||||
|
||||
#### Tableau des Upgrades
|
||||
| Niveau | Coût | Prérequis | Bonus Débloqué |
|
||||
|---|---|---|---|
|
||||
| Carte Membre | 10,000$ | Réputation 200 | Fidélisation +10% |
|
||||
| Bus Gratuit | 25,000$ | Parking Niv 2 | Affluence Pauvre +30% |
|
||||
|
||||
### 8. Logique et Interfaces
|
||||
|
||||
#### Pseudo-code Impacts
|
||||
| Algorithme | Entrées | Logique Simplifiée | Sortie |
|
||||
|---|---|---|---|
|
||||
| Calcul Satisfaction | État Zoo, Besoins | `Sat = (AnimauxVu * 10) - (Faim + Soif + Fatigue)/3` | Score 0-100 |
|
||||
| Décision Achat | Budget, Besoin, Prix | `Si Besoin > 50 ET Budget > Prix Alors Acheter` | Booléen |
|
||||
|
||||
#### Messages d'Infos / Alerte
|
||||
| Type | Message | Condition | Priorité |
|
||||
|---|---|---|---|
|
||||
| Info | "Un visiteur VIP est arrivé." | Spawn VIP | 2 |
|
||||
| Warn | "Les visiteurs se plaignent de la saleté." | Propreté < 30% | 4 |
|
||||
| Error | "Un visiteur est blessé !" | Accident | 5 |
|
||||
|
||||
## Annexes UX/UI
|
||||
|
||||
### 1. Expérience Utilisateur (UX)
|
||||
|
||||
#### Description UX
|
||||
| Étape Utilisateur | Action Attendue | Feedback Système |
|
||||
|---|---|---|
|
||||
| Observation | Zoom sur visiteur | Affichage info-bulle nom/état |
|
||||
| Plainte | Clic sur bulle rouge | Ouverture fenêtre résolution problème |
|
||||
|
||||
#### Description UI
|
||||
| Élément | Type (Bouton/Panel) | Contenu | État par défaut |
|
||||
|---|---|---|---|
|
||||
| Bulle Pensée | Icône Flottante | Image (Burger, WC...) | Caché |
|
||||
| Jauge Satisfaction | Barre Progression | Vert -> Rouge | Visible (si sélectionné) |
|
||||
|
||||
#### Emplacement
|
||||
| Élément | Position | Ancrage | Z-Index |
|
||||
|---|---|---|---|
|
||||
| Bulle | Au-dessus tête | World Space | 50 |
|
||||
| Panel Info | Bas Gauche | Bottom-Left | 100 |
|
||||
|
||||
#### Intégration
|
||||
| Composant Parent | Contraintes | Responsive |
|
||||
|---|---|---|
|
||||
| World Canvas | Suis la caméra | Oui |
|
||||
|
||||
#### Navigation
|
||||
| De l'écran | Vers l'écran | Transition | Trigger |
|
||||
|---|---|---|---|
|
||||
| Jeu Principal | Vue Visiteur | Focus Caméra | Double Clic |
|
||||
|
||||
#### Événements
|
||||
| Input Utilisateur | Action Système | Son | Animation |
|
||||
|---|---|---|---|
|
||||
| Clic Visiteur | Sélectionne | `select_pop.mp3` | Highlight |
|
||||
|
||||
#### Assets Skinables
|
||||
|
||||
##### Musiques
|
||||
| Piste | Contexte | Loop | Volume |
|
||||
|---|---|---|---|
|
||||
| `crowd_mumble.mp3` | Zoom éloigné | Oui | 30% |
|
||||
| `park_ambience.mp3` | Zoom proche | Oui | 50% |
|
||||
|
||||
##### Sons
|
||||
| SFX | Trigger | Priorité |
|
||||
|---|---|---|
|
||||
| `footsteps_gravel.mp3` | Marche | Basse |
|
||||
| `cash_register.mp3` | Achat | Moyenne |
|
||||
|
||||
##### Graphiques
|
||||
| Asset | Format | Résolution |
|
||||
|---|---|---|
|
||||
| `visitor_sheet.png` | Spritesheet | 1024x1024 |
|
||||
| `bubble_icons.png` | Atlas | 512x512 |
|
||||
|
||||
##### Images
|
||||
| Image | Usage | Alt Text |
|
||||
|---|---|---|
|
||||
| `face_happy.png` | UI Satisfaction | "Visage Souriant" |
|
||||
| `face_angry.png` | UI Satisfaction | "Visage Colérique" |
|
||||
|
||||
##### Vidéos
|
||||
| Clip | Usage | Durée |
|
||||
|---|---|---|
|
||||
| N/A | N/A | N/A |
|
||||
|
||||
##### Animations
|
||||
| Nom | Cible | Durée | Type (CSS/JS) |
|
||||
|---|---|---|---|
|
||||
| `walk_cycle` | Sprite Visiteur | 1s (boucle) | Sprite Anim |
|
||||
| `eat_anim` | Sprite Visiteur | 2s | Sprite Anim |
|
||||
|
||||
##### Couleurs
|
||||
| Code Hex | Usage | Sémantique |
|
||||
|---|---|---|
|
||||
| #00FF00 | Jauge Sat | Bon |
|
||||
| #FF0000 | Jauge Sat | Mauvais |
|
||||
|
||||
##### Textes
|
||||
| Clé i18n | Valeur FR | Valeur EN |
|
||||
|---|---|---|
|
||||
| `VISITOR_NAME_1` | Jean Dupont | John Doe |
|
||||
| `STATE_HUNGRY` | A faim | Hungry |
|
||||
|
||||
##### Formes
|
||||
| Forme | Usage | Style Bordure |
|
||||
|---|---|---|
|
||||
| Rond | Avatar | Solid White 2px |
|
||||
|
||||
Reference in New Issue
Block a user