Enrichissement exhaustif des specs : Vue Isométrique et Design

**Motivations:**
- Aligner toute la documentation technique avec la nouvelle direction artistique isométrique (Réf IMG_20260303_170253).
- Faciliter l'implémentation en ajoutant les contraintes techniques liées à la 2.5D (Z-index, Sprites 4 directions).

**Root causes:**
- Besoin de cohérence visuelle et technique sur l'ensemble du projet.

**Correctifs:**
- N/A

**Evolutions:**
- Ajout systématique de la section "Direction Artistique & Vue" dans `Annexes UX/UI` de tous les fichiers.
- Enrichissement des modèles JSON avec coordonnées isométriques (`iso_x`, `iso_y`, `z_index`).
- Précision des interactions (clic, survol) adaptées à la grille losange.
- Conservation stricte de la structure existante (aucun titre supprimé).

**Pages affectées:**
- docs/specs/*
This commit is contained in:
2026-03-05 02:10:32 +01:00
parent 1d3352455e
commit e92c1355d0
74 changed files with 1519 additions and 550 deletions

View File

@@ -3,6 +3,7 @@
## Construction
- Sur une case vide de type "Terrain", le joueur peut acheter un bâtiment.
- Le coût dépend du type de bâtiment.
- **Pré-requis** : Certaines cases peuvent nécessiter un déblayage (rochers, arbres) avant construction.
## Types Constructibles
- Nurserie
@@ -10,12 +11,22 @@
- (Les autres bâtiments comme Billeterie/Recherche sont souvent uniques et upgradables, mais on peut imaginer en construire d'autres si le design le permet).
## Upgrade de Case (Terrain)
- **Changement de Milieu** : Payer pour changer la couleur (Biome) d'une case.
- **Changement de Température** : Payer pour installer un régulateur thermique sur une case.
- **Changement de Milieu (Terraforming)** : Payer pour changer la couleur (Biome) d'une case.
- **Changement de Température** : Payer pour installer un régulateur thermique sur une case (invisible ou petit objet technique).
# Annexes Techniques
## 1. Données et États
### Modèle de Données (Modification Case)
```json
{
"tile_id": "x_y_coords",
"action": "terraform",
"target_biome": "savanna",
"cost": 500,
"duration_ms": 2000
}
```
Voir `case_zoo.md` et `achat_upgrade_generique.md`.
## 7. Progression
@@ -23,8 +34,8 @@ Voir `case_zoo.md` et `achat_upgrade_generique.md`.
**Changement de Milieu** :
| Niveau | Coût | Précision | Temps |
| :--- | :--- | :--- | :--- |
| 1 | 500 | Changement vers biome adjacent | 0s |
| 7 | 5000 | Changement vers n'importe quel biome | 0s |
| 1 | 500 | Changement vers biome adjacent uniquement | 5s |
| 7 | 5000 | Changement vers n'importe quel biome (Terraformation avancée) | 2s |
**Régulateur Thermique** :
| Niveau | Coût | Plage Réglage | Temps |
@@ -32,8 +43,38 @@ Voir `case_zoo.md` et `achat_upgrade_generique.md`.
| 1 | 200 | +/- 5°C | 0s |
| 7 | 2000 | +/- 50°C | 0s |
## 8. Logique et Interfaces
### Algorithme de Terraformation
```python
def terraform_tile(tile, target_biome, player):
# Vérifier adjacence (si niveau bas)
if player.terraform_level < 7:
neighbors = get_neighbors(tile)
if target_biome not in [n.biome for n in neighbors]:
return error("BIOME_NOT_ADJACENT", "Vous devez étendre un biome existant.")
if player.money < get_terraform_cost(target_biome):
return error("NO_MONEY")
player.money -= get_terraform_cost(target_biome)
tile.biome = target_biome
update_visuals(tile)
check_animal_compatibility(tile) # Alerte si un animal est dessus
return success()
```
# 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)
### Modification Terrain (Action)
**Description UX** : Le joueur sélectionne une case et choisit "Modifier Biome" ou "Température".
@@ -54,3 +95,8 @@ Voir `case_zoo.md` et `achat_upgrade_generique.md`.
- **Couleurs** : Vert, Jaune, Blanc.
- **Textes** : "Coût : X".
- **Formes** : Curseur Pinceau.
### Vue Isométrique
- **Grid Overlay** : Lors de l'édition, afficher la grille en surbrillance pour bien délimiter les cases.
- **Feedback Visuel** : La case "saute" légèrement ou émet de la poussière lors du changement de biome.
- **Bords** : Gérer les transitions douces (blends) entre deux cases de biomes différents pour éviter l'effet damier trop strict (sauf si style voxel strict).