openthebox/proposals_2.md
Samuel Bouchet 7b3a3d5a58 Implement proposals.md + proposals_2.md: adaptive UX, early-game feedback, TUI default
- Adaptive welcome message based on progression (50/200/500 boxes thresholds)
- Raw inventory display before InventoryPanel unlock (plain text list)
- Terminal.Gui as default mode (--classic flag for old sequential renderer)
- Early-game box counter before StatsPanel unlock
- Encouraging messages in empty ResourcePanel and locked panel placeholders
- Wider inventory name column (28 chars), cookie detail/consume, box teaser
- Richer StatsPanel with items discovered and play time
2026-03-14 09:33:47 +01:00

4.4 KiB

Propositions d'améliorations du rendu (Round 2)

Basé sur l'analyse des captures PlaythroughCapture et InventoryRenderCapture.

1. Compteur de boîtes ouvertes visible en early-game

Constat : Avant le déblocage du StatsPanel (souvent box ~18-26), le joueur n'a aucune indication de sa progression. Les 10-20 premières boîtes se jouent sans aucun feedback visuel du nombre de boîtes ouvertes.

Solution : Afficher un simple compteur Boxes opened: N dans le BasicRenderer et dans les premiers niveaux du SpectreRenderer (avant StatsPanel), directement dans ShowGameState().

2. Panneau de ressources vide au déblocage

Constat : Quand le ResourcePanel se débloque, il affiche "No resources visible yet." car aucune ressource n'est encore visible. C'est décevant comme premier contact avec un nouveau panneau.

Solution : À la place d'un message vide, afficher un message encourageant comme "Resources will appear as you discover them..." et éventuellement ajouter une première ressource visible automatiquement au déblocage du panneau.

3. Troncature des noms d'objets dans l'inventaire

Constat : Les noms longs comme "Potion de Santé Moyenne" sont tronqués en "Potion de Santé Moyen." dans le tableau de l'inventaire. Les colonnes sont trop étroites pour certains noms localisés en français.

Solution : Élargir la colonne Nom dans l'InventoryPanel ou implémenter un algorithme de troncature plus intelligent qui préserve les mots significatifs.

4. Détail des boîtes dans le panneau de détail

Constat : Quand un objet de type "Box" est sélectionné dans l'inventaire, le panneau de détail affiche la description de la boîte mais pas sa rareté colorée ni un indice sur son contenu potentiel.

Solution : Ajouter dans le panneau de détail des boîtes un indicateur de rareté et un texte teaser sur le type de loot possible (ex: "May contain meta items", "Fashion and style await").

Constat : Les Fortune Cookie dans l'inventaire n'ont pas de détail interactif. Leur catégorie est Cookie mais le panneau de détail est générique.

Solution : Ajouter un détail spécifique pour les cookies montrant un aperçu du type "Crack open for wisdom..." et permettre de les consommer via Enter pour révéler un message de fortune.

6. Panneau de stats trop spartiate en early-game

Constat : Quand le StatsPanel se débloque, il n'affiche que "Boxes opened: N" sans aucune autre stat visible. C'est fonctionnel mais peu engageant.

Solution : Ajouter des informations supplémentaires dans le StatsPanel : nombre total d'objets dans l'inventaire, nombre de types d'objets uniques découverts, et le temps de jeu.

7. Texte encourageant dans les panneaux verrouillés

Constat : Dans le mode séquentiel (avant FullLayout), les panneaux non encore débloqués ne sont pas visibles. Dans le FullLayout, les panneaux verrouillés affichent "[dim]???[/]" comme contenu placeholder.

Solution : Remplacer les placeholders "???" par des messages thématiques et encourageants (ex: "Keep opening boxes to unlock this panel...") qui changent selon le panneau.

8. Catégorie d'objet affichée comme icône illisible

Constat : La colonne catégorie dans l'inventaire affiche des icônes emoji (📦, 🧪, etc.) qui se rendent en "??" dans les captures plain text et peuvent être illisibles selon le terminal.

Solution : Proposer un fallback ASCII pour les icônes de catégorie quand les couleurs étendues ne sont pas disponibles, et s'assurer que le mode compact utilise des abréviations textuelles (BOX, CSM, MAT, etc.).

9. Détail matériau trop minimal

Constat : Le panneau de détail des matériaux affiche uniquement "Bronze (Lingot)" sans contexte. Le joueur ne sait pas à quoi sert ce matériau.

Solution : Ajouter dans le détail des matériaux la liste des recettes de crafting connues qui utilisent ce matériau, ou au minimum un texte indiquant "Used in crafting" si des workstations sont débloqués.

10. Adventure token sans indication d'aventure

Constat : Les tokens d'aventure (comme les badges) sont dans l'inventaire mais leur panneau de détail ne montre pas clairement quelle aventure ils débloquent ou permettent.

Solution : Améliorer le détail des adventure tokens pour afficher le nom de l'aventure associée et son statut (locked/unlocked/completed).