Files
builazoo/docs/specs/nourisseur.md
2026-03-05 03:39:33 +01:00

15 KiB
Raw Blame History

Nourisseur

1. Définition

Employé chargé de l'approvisionnement en nourriture des enclos. Il remplit les mangeoires vides et s'assure que les animaux n'ont pas faim. Achetable avec des pièces.

2. Fonctions

  • Remplissage : Détecte les mangeoires vides et va les remplir.
  • Qualité : Peut (avec amélioration) fournir une nourriture de meilleure qualité (+santé).
  • Automatisation : Évite au joueur de devoir cliquer manuellement pour nourrir (si mécanique manuelle existe).

3. Icone

  • Représentation : Seau ou Sac de graines.
  • Couleur dominante : Marron et Orange.

4. Interactions

  • Recrutement : Menu "Employés", coût en pièces.
  • Gestion : Définir des priorités (ex: nourrir les bébés en premier).

5. Annexes Techniques

Données (JSON)

{
  "employee_id": "feeder_02",
  "type": "nourisseur",
  "name": "Bob",
  "salary": 30,
  "hire_cost": 300,
  "stats": {
    "capacity": 50, // Quantité de nourriture transportable
    "speed": 1.2
  },
  "current_task": "moving_to_enclosure_12",
  "iso_x": "integer",
  "iso_y": "integer",
  "z_index": "integer"
}

Règles Métier

  • Les animaux affamés perdent de la santé et du bonheur.
  • Le nourisseur doit retourner au stock (bâtiment de service) pour se ravitailler.

6. Annexes UX/UI

  • Visuel Carte : Personnage avec une brouette ou un sac sur le dos.
  • Animation : Verse de la nourriture dans l'auge.
  • Alerte : Icône "Faim" rouge clignotante si le nourisseur est débordé.

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.

Définition

Champ Valeur
Entité Employé “Nourisseur”
Rôle Approvisionner les mangeoires, éviter la faim, appliquer (si présent) la nourriture spéciale ciblée.
Logistique Transport capacité stats.capacity, ravitaillement depuis stock.
Vue Isométrique 2.5D, sprite 4 directions, sélection base-sprite.

Fonctions (tableau détaillé)

Fonction Déclencheur Entrées Sorties Règles Observabilité
Détection auge vide Tick nourisseur enclos, jauges auge liste tâches Priorité bébés > adultes Event FEEDER_SCAN
Remplissage Arrivée en enclos stock, capacity auge + Consomme stock global, clamp max auge Event FEEDER_FILL_START/END
Ravitaillement stock capacity=0 stock bâtiment capacity reset Retour “service stock” obligatoire Event FEEDER_RESTOCK
Qualité nourriture upgrade niveau/skill santé + Bonus si nourriture premium active Event FEEDER_PREMIUM_APPLIED

Icone de base

Élément Spécification
Représentation Seau / sac de graines
Couleur dominante Marron / orange
Variantes icon_feeder_bucket.png, icon_feeder_bag.png
États Badge “en route” (flèche), “débordé” (rouge), “capacity vide” (0)

Interactions (tableau détaillé)

Interaction Type Préconditions Étapes UI Résultat Erreurs / Messages
Recruter Action coins ≥ hire_cost Menu Employés → Nourisseur → Confirmer entité créée INSUFFICIENT_FUNDS, EMPLOYEE_CAP_REACHED
Définir priorités Action - panel nourisseur → priorités ordre tâches -
Assigner zone/enclos Action cible valide “Assigner” → clic couverture INVALID_TARGET
Forcer nourrir Action enclos sélectionné bouton “Nourrir maintenant” tâche top priorité NO_FEEDER_AVAILABLE, OUT_OF_FOOD_STOCK
Inspecter stock Consultation - panel stock quantités -

Annexes Techniques

1. Données et États (tableau détaillé)

Donnée / État Type Exemple Source Contraintes
employee_id string feeder_02 DB unique
type enum nourisseur DB constante
salary int 30 config coins/jour
hire_cost int 300 config one-shot
stats.capacity int 50 DB [10..200]
stats.speed float 1.2 DB déplacement
current_task string moving_to_enclosure_12 runtime debug
state enum `IDLE MOVING FILLING
carried_food int 0..capacity runtime décrémente
assigned_zone uuid/null null runtime null=global
grid object {x,y} runtime position
iso_x/iso_y int - rendu projection
z_index int - rendu profondeur
hitbox enum base_sprite rendu click base

Caractéristiques Initiales (tableau détaillé)

Caractéristique Valeur initiale Unité Notes
Capacité 50 unités transport
Vitesse 1.2 coef marche
Temps remplissage 1 min in-game par auge
Temps restock 2 min in-game au stock
Seuil faim critique 80 % déclenche urgence

Scores Initiaux (tableau détaillé)

Score Valeur initiale Plage Impact
Auges remplies/jour 0 0..∞ faim -
Ruptures évitées 0 0..∞ survie +
Coût nourrissage/jour 30 0..∞ dépenses employés

2. Cycles de Vie et Apparition (tableau détaillé)

Phase Déclencheur Entrées Sorties Invariants
Apparition embauche coins entité IDLE
Action auge vide stock auge + pas si stock=0
Restock capacity=0 stock bâtiment capacity reset chemin valide
Disparition licenciement (si prévu) - suppression stop tâches

Conditions d'Apparition (tableau détaillé)

Condition Seuil Opérateur Résultat
Achat coins ≥ hire_cost vrai création

Conditions de Disparition (tableau détaillé)

Condition Seuil Opérateur Résultat
Licenciement action joueur vrai suppression
Zoo supprimé - vrai suppression

Hérédité (tableau détaillé)

Élément Hérité Règle
Stats Oui persistées
Carried food Non remis à 0 au reset

3. Impacts Environnementaux

Impact Température (tableau détaillé)

Température Effet Condition
Extrême consommation + animaux mangent plus selon règles
Tempérée neutre -

Impact Milieu (Biome) (tableau détaillé)

Biome Effet Notes
Chemins déplacement + visiteurs attirés aux chemins
Sable/neige déplacement - ralentissement

Impact Saisons (tableau détaillé)

Saison Effet Modificateur
Hiver ration + +10% conso
Été eau/boisson + incidents soif visiteurs +

Impact Heure / Jour-Nuit (tableau détaillé)

Période Effet Règle
Matin repas 1 tâche batch
Soir repas 2 tâche batch
Nuit urgence uniquement si faim critique

4. Impacts Biologiques et Sociaux

Impact Reproduction (tableau détaillé)

Facteur Effet sur taux Condition
Faim basse + si animaux bien nourris

Impact Mort (tableau détaillé)

Cas Effet Condition
Stock 0 risque mort + faim extrême prolongée

Impact Nourriture (tableau détaillé)

Type Effet Condition
Standard neutre base
Spéciale buff selon nourriture_speciale.md

Impact Attractivité(Visiteurs (tableau détaillé)

État Effet Condition
Animaux actifs (pas affamés) satisfaction + enclos proches

Impact Attractivité Animaux) (tableau détaillé)

Action Effet animaux Condition
Nourrir stress - faim résolue

Impact Valeur (tableau détaillé)

Facteur Variation Condition
Animal bien nourri +5% vente animal

5. Impacts Logistiques et Économiques

Vitesse (Camion) (tableau détaillé)

Paramètre Effet Condition
Livraison nourriture +stock via camion/achat

Vitesse (Nurserie) (tableau détaillé)

Paramètre Effet Condition
Priorité bébés + si règle activée

Vitesse (Accueil) (tableau détaillé)

Paramètre Effet Condition
- aucun -

Vitesse (Recherche) (tableau détaillé)

Paramètre Effet Condition
Tech nutrition + réduit conso ou augmente qualité

Vitesse (Labo) (tableau détaillé)

Paramètre Effet Condition
- aucun -

Vitesse (Visite) (tableau détaillé)

Paramètre Effet Condition
Temps séjour + animaux visibles actifs

Dépenses (Billeterie) (tableau détaillé)

Poste Coût Unité Condition
- 0 - -

Dépenses (Boutiques) (tableau détaillé)

Poste Coût Unité Condition
Vente nourriture visiteurs revenu + coins canicule

Dépenses (Visiteurs) (tableau détaillé)

Poste Coût Unité Condition
Plainte faim remboursement coins si incidents

Dépenses (Employés) (tableau détaillé)

Poste Coût Unité Condition
Salaire 30 coins/jour actif

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
Lait/bébés +conso stock si bébés présents

Dépenses (Nourriture) (tableau détaillé)

Poste Coût Unité Condition
Achat nourriture variable coins menu achats

Dépenses (Acceuil des animaux) (tableau détaillé)

Poste Coût Unité Condition
Ration arrivée 5 coins accueil

Dépenses (Camion) (tableau détaillé)

Poste Coût Unité Condition
Transport nourriture 10 coins livraison

Trajet Visiteurs

Trajet Visiteurs vers/depuis la ville (tableau détaillé)
Source Destination Déclencheur Effet
Ville Zoo réputation nourisseur indirect
Trajet Visiteurs vers/depuis les animaux (tableau détaillé)
Source Destination Déclencheur Effet
Nourisseur Enclos auge vide déplacement sur chemins
Trajet Visiteurs vers/depuis les boutiques (tableau détaillé)
Source Destination Déclencheur Effet
Visiteur Boutique faim/soif achat
Trajet Visiteurs vers/depuis la billeterie (entrées/sorties du zoo) (tableau détaillé)
Source Destination Déclencheur Effet
Visiteur mécontent sortie incidents départ

6. Événements

Événements du Jeu (tableau détaillé)

Event Déclencheur Payload Effet
FEED_LOW auge < seuil enclosure_id warning
FEED_FILLED fin remplissage enclosure_id info

Événements du Carte (tableau détaillé)

Event Déclencheur Effet
FEEDER_MOVING tâche rendu déplacement

Événements du Zoo (tableau détaillé)

Event Déclencheur Effet
FOOD_STOCK_EMPTY stock=0 alerte

Événements du Ville / Visiteur (tableau détaillé)

Event Déclencheur Effet
VISITOR_BUY_FOOD faim/soif revenu

Événements du Visiteur (tableau détaillé)

Event Déclencheur Effet
VISITOR_COMPLAINT_HUNGER faim satisfaction -

Événements du Joueur (tableau détaillé)

Event Déclencheur Effet
PLAYER_FORCE_FEED bouton tâche urgente

7. Progression

Tableau des Upgrades (tableau détaillé)

Niveau Coût Effet Débloque
1 0 remplissage base -
2 1000 capacity +20 moins restocks
3 2500 speed +0.1 réactivité
4 5000 qualité + premium

8. Logique et Interfaces

Pseudo-code Impacts (tableau détaillé)

Fonction Entrées Sorties Notes
scan_empty_troughs enclos list priorités
fill_trough stock, carried trough clamp
restock stock building carried reset -

Messages d'Infos / Alerte (tableau détaillé)

ID Niveau Message Condition
OUT_OF_FOOD_STOCK Alerte "Stock de nourriture vide." stock=0
FEEDER_OVERLOADED Warning "Nourisseur débordé." trop tâches
FEED_FILLED Info "Mangeoire remplie." fin

Annexes UX/UI

1. Expérience Utilisateur (UX)

Description UX (tableau détaillé)

Parcours But Friction Réduction clics
Automatiser nourrissage éviter morts manque stock deep-link menu achats
Prioriser bébés survie réglages preset “bébés dabord”

Description UI (tableau détaillé)

Composant Contenu États
Panel nourisseur capacity, tâches moving/filling
Badge faim icône rouge clignote

Emplacement (tableau détaillé)

Zone UI Position Notes
HUD menu employés -
Enclos jauge auge overlay

Intégration (tableau détaillé)

Intégration Contrat Notes
Stock nourriture global pas de cache
Nourriture spéciale ciblée cf. spec

Navigation (tableau détaillé)

Action Chemin Résultat
Ouvrir panel clic nourisseur panel
Forcer nourrir clic enclos tâche

Événements (tableau détaillé)

Event UI Déclencheur Effet
OPEN_FEEDER_PANEL clic panel
CLICK_FORCE_FEED bouton urgence

Assets Skinables

Musiques (tableau détaillé)
Asset Usage Durée Notes
feeder_loop.mp3 ambiance loop discret
Sons (tableau détaillé)
Asset Usage Volume
pour_food.mp3 verse faible
ui_food_empty.mp3 stock 0 moyen
Graphiques (tableau détaillé)
Asset Usage Contraintes
feeder_sprite_[dir].png sprite 4 dirs
fx_grains.png FX overlay
Images (tableau détaillé)
Asset Usage
icon_feeder_bag.png icône
portrait_feeder.png panel
Vidéos (tableau détaillé)
Asset Usage Durée
feed_success.webm popup 0.8s
Animations (tableau détaillé)
Animation Déclencheur Notes
grains qui tombent filling loop
jauge auge + fin 0.4s
Couleurs (tableau détaillé)
Token Valeur Usage
feeder_primary #E67E22 UI
feeder_alert #E74C3C faim
Textes (tableau détaillé)
Clé FR EN
feeder.force Nourrir maintenant Feed now
food.empty Stock vide Empty stock
Formes (tableau détaillé)
Élément Forme Notes
Jauge auge barre lisible
Badge faim rond clignote