# Spécifications : Boutique ## Définition Bâtiment commercial générant des revenus passifs grâce aux visiteurs. ## Fonctionnalités - **Vente** : Vend des produits (souvenirs, nourriture, boissons) aux visiteurs. - **Attraction** : Attire les visiteurs sur sa case. - **Rétention** : Augmente la durée de visite (satisfaction besoins). ## Niveaux d'Amélioration (7 niveaux) - **Coût** : Progressif par palier. - **Effet** : Augmente le revenu par visiteur et la capacité d'accueil simultanée. - **Ratio** : 1 unité couvre 5 visiteurs simultanés max. # Annexes Techniques ## 1. Données et États ### Modèle de Données (JSON) ```json { "id": "uuid", "type": "shop", "level": "integer (1-7)", "position": { "x": "int", "y": "int" }, "stats": { "revenue_total": "integer", "visitors_served": "integer" }, "iso_x": "integer", "iso_y": "integer", "z_index": "integer" } ``` ### Caractéristiques Initiales | Caractéristique | Valeur Initiale (Niv 1) | | :--- | :--- | | Revenu / Visiteur | 15 pièces | | Capacité | 5 visiteurs | | Attractivité | 10 | ### Scores Initiaux **Stock** : 100 unités. **Popularité** : 10/100. ## 2. Cycles de Vie et Apparition ### Conditions d'Apparition Construction par le joueur sur case vide. ### Conditions de Disparition Destruction par le joueur (Remboursement 50%). ### Hérédité **Franchise** : Coût construction -10% si 5 boutiques identiques déjà posées (Économie d'échelle). ## 3. Impacts Environnementaux ### Impact Température **Canicule** : Vente Eau x3. Vente Chocolat -50%. **Froid** : Vente Chocolat x3. Vente Glaces -80%. ### Impact Milieu (Biome) **Thème** : +10% ventes si le skin boutique correspond au biome (ex: Cabane en bois en Forêt). ### Impact Saisons | Saison | Modificateur Ventes | | :--- | :--- | | Été | +20% (Boissons/Glaces) | | Hiver | +10% (Chocolat chaud/Cadeaux) | | Automne | +5% (Parapluies) | | Printemps | Standard | ### Impact Heure / Jour-Nuit | Heure | Fréquentation | | :--- | :--- | | 12h-14h | Pic (Repas - Food) | | 16h-18h | Pic (Souvenirs avant départ - Gifts) | | Nuit | Fermé (0 Ventes) | ## 4. Impacts Biologiques et Sociaux ### Impact Reproduction **Merchandising** : Vente peluche "Espèce du moment" x2 lors d'une naissance rare. ### Impact Mort **Deuil** : Ventes -20% dans les boutiques proches d'une mort récente (Ambiance triste). ### Impact Nourriture **Concurrence** : Si Stand Nourriture proche (< 3 cases), ventes Food partagées (-10% chacun). ### Impact Attractivité (Visiteurs/Animaux) | Niveau | Rayon Attraction | | :--- | :--- | | 1 | 2 cases | | 7 | 10 cases (Centre commercial) | ### Impact Valeur **Revente** : 50% de l'investissement initial + upgrades. ## 5. Impacts Logistiques et Économiques ### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite) **Vitesse Service** : 1 visiteur / 5 secondes (Niv 1) -> 1 visiteur / 1 seconde (Niv 7 - Caisses auto). ### Dépenses (Boutiques/Visiteurs) Génère du revenu. Coût réapprovisionnement : 10% du CA (automatique). ### Trajet Visiteurs Point d'intérêt majeur pour le pathfinding (Poids 50). Arrêt obligatoire si besoin > 80. ## 6. Événements ### Événements du Jeu / Carte / Zoo / Ville / Visiteur * **Vente** : Gain de pièces. * **File d'attente** : Si Capacité atteinte, visiteurs frustrés. * **Rupture Stock** : Si stock géré, fermeture temporaire. ## 7. Progression ### Tableau des Upgrades | Niveau | Coût (Pièces) | Revenu/Visiteur | Capacité | Temps Construction | | :--- | :--- | :--- | :--- | :--- | | 1 | 100 | 15 | 5 | 0s | | 2 | 150 | 20 | 8 | 0s | | 3 | 225 | 25 | 12 | 0s | | 4 | 340 | 35 | 18 | 0s | | 5 | 510 | 50 | 25 | 0s | | 6 | 765 | 70 | 35 | 0s | | 7 | 1150 | 100 | 50 | 0s | ## 8. Logique et Interfaces ### Pseudo-code Impacts ``` function processShop(shop, visitors): queue = visitors.filter(v => v.target == shop) served = min(queue.length, shop.capacity) for i in 0..served: revenue = shop.baseRevenue * seasonMod player.addCoins(revenue) visitors[i].satisfaction += 5 visitors[i].needs.thirst = 0 ``` ### Messages d'Infos / Alerte | ID | Niveau | Message | | :--- | :--- | :--- | | `SHOP_FULL` | Warning | "Boutique pleine ! Des clients partent." | | `SHOP_PROMO` | Info | "Soldes lancées ! Affluence +20%." | # 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) ### Vente (Passif) **Description UX** : Les visiteurs entrent dans la boutique, y restent quelques secondes, puis ressortent. Des pièces volent vers le compteur. **Description UI** : Animation de porte qui s'ouvre/ferme. Popups "+15" au-dessus du toit. **Emplacement** : Case Boutique. **Intégration** : Automatique. **Navigation** : Auto (Comportement). **Événements** : `SALE_MADE`. #### Assets - **Musiques** : Musique d'ambiance "Supermarché" (Muzak). - **Sons** : `coin_jingle.mp3` (volume bas, pas trop répétitif). - **Graphiques** : Sprite Boutique (différents skins selon type : Burger, Cadeaux). - **Images** : Icônes Produits (Burger, Peluche, Ballon). - **Vidéos** : Pub télévisée miniature sur l'écran de la boutique (détail). - **Animations** : Pièce dorée qui monte et disparaît. - **Couleurs** : Or #FFD700. - **Textes** : "+XX". - **Formes** : Bulle de dialogue rectangulaire. ### Consultation Stats (Consultation) **Description UX** : Le joueur clique pour voir combien la boutique a rapporté. **Description UI** : **Bottom Sheet** simple avec "Revenus totaux" et "Clients servis". **Emplacement** : Case Boutique. **Intégration** : Standard. **Navigation** : Clic -> Modal. **Événements** : `OPEN_SHOP`. #### Assets - **Musiques** : Jingle "Caisse" (court). - **Sons** : `ui_open.mp3` - **Graphiques** : Graphique en barres simple. - **Images** : Icône Caisse. - **Vidéos** : Graphique animé des ventes (barres qui montent). - **Animations** : Barres qui montent progressivement. - **Couleurs** : Vert (Profit). - **Textes** : Chiffres clés. - **Formes** : Rectangle arrondi. ### Construction (Action) **Description UX** : Le joueur choisit "Boutique" dans le menu construction et la place sur la grille. **Description UI** : Fantôme du bâtiment vert/rouge selon validité. **Alternative** : Tap to Select -> Tap to Place. **Emplacement** : Menu Construction -> Grille. **Intégration** : Mode construction global. **Navigation** : Clic Menu -> Drag/Click Grille. **Événements** : `BUILD_SHOP`. #### Assets - **Musiques** : Bruit de chantier (marteau, scie). - **Sons** : `construction_hammer.mp3`. - **Graphiques** : Sprite Fantôme semi-transparent. - **Images** : Plan bleu (Blueprint) au sol. - **Vidéos** : Time-lapse construction (accéléré). - **Animations** : Petit effet de poussière à la pose. - **Couleurs** : Bleu (Blueprint). - **Textes** : "Construction...". - **Formes** : Grille de placement.