# Spécifications : Bot (Profil d'Absence) ## Définition Intelligence Artificielle qui gère un zoo. Peut être un concurrent permanent ou le remplaçant du joueur en cas d'absence. ## Profils d'Absence (50 Archétypes) Le joueur choisit un profil pour gérer son zoo quand il est hors ligne. Sélection hiérarchique : **Famille** > **Spécialisation**. ### Familles 1. **Les Conservateurs** : Priorité survie, achat nourriture, pas d'expansion. 2. **Les Éleveurs** : Priorité reproduction, optimisation placements. 3. **Les Commerçants** : Priorité achat/vente, spéculation. 4. **Les Expansionnistes** : Priorité agrandissement terrain/bâtiments. 5. **Les Scientifiques** : Priorité recherche et école. ## Fonctionnement - **Cycle** : Agit à chaque tick serveur ou selon sa fréquence définie. - **Ressources** : Utilise les ressources du zoo (pièces) selon les seuils du profil. - **Indicateurs** : Visible sur la carte du monde (Pièces, Parcelle). # Annexes Techniques ## 1. Données et États ### Modèle de Données (JSON) ```json { "id": "integer", "family": "enum", "name": "string", "logic": { "buy_food_threshold": "float (0-1)", "sell_animal_threshold": "float (price factor)", "expand_map_priority": "int (0-10)", "research_priority": "int (0-10)" } } ``` ### Caractéristiques Initiales N/A ### Scores Initiaux N/A ## 2. Cycles de Vie et Apparition ### Conditions d'Apparition Activation par joueur (déconnexion) ou Spawn serveur (Bot permanent). ### Conditions de Disparition Connexion joueur. ### Hérédité N/A ## 3. Impacts Environnementaux ### Impact Température N/A ### Impact Milieu (Biome) N/A ### Impact Saisons N/A ### Impact Heure / Jour-Nuit N/A ## 4. Impacts Biologiques et Sociaux ### Impact Reproduction N/A ### Impact Mort N/A ### Impact Nourriture N/A ### Impact Attractivité (Visiteurs/Animaux) N/A ### Impact Valeur N/A ## 5. Impacts Logistiques et Économiques ### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite) **Fréquence Action** : 1 action toutes les 5 à 60 minutes (selon profil). ### Dépenses (Boutiques/Visiteurs) N/A ### Trajet Visiteurs N/A ## 6. Événements ### Événements du Jeu / Carte / Zoo / Ville / Visiteur * **Action Bot** : Achat/Vente automatisé. ## 7. Progression ### Tableau des Upgrades N/A ## 8. Logique et Interfaces ### Pseudo-code Impacts ``` function runBotLogic(bot, zoo): if zoo.foodStock < bot.logic.buy_food_threshold: buyFood(zoo) return if bot.family == 'BREEDER': optimizePairs(zoo) if bot.family == 'TRADER': checkMarketArbitrage(zoo) ``` ### Messages d'Infos / Alerte | ID | Niveau | Message | | :--- | :--- | :--- | | `BOT_ACTIVE` | Info | "Le mode automatique est activé." | # Annexes UX/UI ## 1. Expérience Utilisateur (UX) ### Sélection du Profil (Configuration) **Description UX** : Le joueur choisit comment son zoo sera géré en son absence. **Description UI** : Interface à deux niveaux. 1. Choix Famille (5 grosses cartes illustrées). 2. Choix Spécialisation (Liste déroulante ou grille de sous-profils). **Emplacement** : Profil Joueur -> Onglet Absence. **Intégration** : Modal dédiée. **Navigation** : Clic Famille -> Clic Spécialisation -> Valider. **Événements** : `SELECT_BOT_PROFILE`. #### Assets - **Musiques** : N/A - **Sons** : `card_flip.mp3`. - **Graphiques** : Illustrations des familles (ex: Conservateur avec bouclier, Commerçant avec bourse). - **Images** : Portraits Bots. - **Vidéos** : N/A - **Animations** : Flip de carte au choix. - **Couleurs** : Code couleur par famille (Vert=Conservateur, Jaune=Commerçant, etc.). - **Textes** : Titres et Descriptions courtes. - **Formes** : Cartes rectangulaires. ### Feedback Activité (Passif) **Description UX** : Le joueur revient et voit ce que le bot a fait. **Description UI** : Rapport de connexion ("Pendant votre absence, le bot a : Vendu 2 lapins, Acheté 100 nourriture"). **Emplacement** : Écran de connexion (Popup). **Intégration** : Bloquant au démarrage. **Navigation** : Lire -> Fermer. **Événements** : `SHOW_REPORT`. #### Assets - **Musiques** : N/A - **Sons** : `notification.mp3`. - **Graphiques** : Icône Robot. - **Images** : N/A - **Vidéos** : N/A - **Animations** : N/A - **Couleurs** : Gris/Métal. - **Textes** : Liste des actions. - **Formes** : Liste à puces.