Commit Graph

10 Commits

Author SHA1 Message Date
4beb1b2ed9 feat: Phase 3 Lore & Contenu — L'Odyssée d'un têtard
Lore Bible (canon narratif complet) + Engine Design (séparation moteur/univers).

4 nouvelles zones (Ruisseau Miroir, Marais des Murmures, Torrent Brisé, Source du Courant)
dans la chaîne d'unlock après desert (niv 16-25+).

Module NPC complet (entity, service, controller) — 8 PNJ avec dialogues évolutifs
par palier de niveau : Gorn (niv 1-15), Pierre-Mémoire (niv 16+), Mira, Vell,
La Batracienne, Le Forgeron, Le Marchand.

20 monstres lore-friendly, 12 matériaux, 15 items (dont Bâton de Gorn légendaire).

17 quêtes narratives (4 arcs ch.9-12) avec textes acceptText/completeText
qui racontent l'Odyssée. Nouveau type story_event pour les moments narratifs purs.
3 quêtes répétables optionnelles.

Seed runner : npm run seed:odyssee

Tout est additif — zéro impact sur le contenu existant niv 1-15.
2026-03-25 00:52:14 +01:00
dd2a025c74 feat: quest page restructurée — combat/métiers/dailies/arcs séparés
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 33s
Frontend: 4 sections distinctes sur la page quêtes:
  - Quêtes actives (3 slots combat uniquement)
  - Quêtes de combat (stagger: max 3 affichées, "+N après celles-ci")
  - 🔨 Métiers (forge/craft — hors pool, toujours disponibles)
  - 🔄 Dailies (répétables en fond)

Backend: craft/forge quests ne comptent plus dans le MAX_ACTIVE_QUESTS.
2026-03-24 19:11:29 +01:00
d77666c4cf feat: zone field sur Quest — filtre zone direct, plus besoin de passer par l'arc
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 32s
2026-03-24 19:05:27 +01:00
287774ecd0 fix: kill_any quests respect zone — égouts ne complète plus les quêtes désert
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 33s
2026-03-24 19:02:43 +01:00
9aadc326e1 feat: arc quests accept from arc panel + side quests only in available
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 35s
Arc panel: boutons Accepter/Réclamer directement sur chaque quête d'arc,
progress affiché (3/5), arcs lockés avec 🔒 et opacity réduite.
Quêtes disponibles: seulement les secondaires (pas les arcs).
Quêtes d'arc abandonnées: ré-acceptables depuis le panel arc.
Zone locking respecté dans getArcs (zoneUnlocked flag).
2026-03-24 18:31:42 +01:00
810ad5ee64 fix: quests respect zone locking + level ordering fixes
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 35s
Quêtes d'arcs filtrées par zones débloquées — pas de quête Égouts
visible tant que l'arc Marais n'est pas complété.
Gardien des marais: level 5→4. Dératisation: level 4→5.
Exterminateur: description corrigée (kill_any x30, pas "chaque espèce").
2026-03-24 18:27:36 +01:00
95fcf325dc fix: quest available filtering + 6 side quests level 2-4
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 36s
Fix: getAvailable filtre maintenant les quêtes active/completed (pas juste
claimed). Plus de doublons dailies, plus d'internal server error.

6 quêtes secondaires pour combler le gap level 2-5:
  Chasseur de champignons (lv2, 150 XP), La menace rampante (lv3, 180 XP),
  Guerrier éprouvé (lv2, 250 XP), Collecteur de trophées (lv3, 500 XP),
  Exterminateur (lv4, 400 XP), Première forge (lv2, 120 XP).
2026-03-24 18:08:49 +01:00
9fac9e123b feat: repeatable quests hors pool 3 slots + section tâches quotidiennes
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 32s
Répétables ne comptent plus dans le MAX_ACTIVE_QUESTS (3).
Frontend: section séparée "Tâches quotidiennes" en grille 3 colonnes,
quêtes narratives en haut avec les slots limités.
Prépare le terrain pour le hub village (forgeron, taverne, etc.).
2026-03-24 16:57:57 +01:00
af247a1c6b fix: quest progression (events after tx), abandon quest, endurance display
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 34s
- Events (achievement/community/quest) émis APRÈS la transaction combat
  au lieu de dedans — corrige les quêtes qui ne progressaient pas
- POST /api/quests/abandon/:id — abandonner une quête active
- Frontend: bouton "Abandonner" sur les quêtes actives non complétées
- Fix endurance display (enduranceCurrent field mapping)
- Types Character mis à jour (xpToNextLevel, activeTitle, enduranceCurrent)
2026-03-24 16:52:48 +01:00
7651f3d8aa feat(sprint5): quest system + arcs + rebalance endurance/damage/xp
All checks were successful
CI/CD — Build & Deploy / Build & Deploy (push) Successful in 33s
Quest system:
  4 entities (quest_arcs, quests, player_quests, player_quest_arcs)
  Arc "Les Marais du Têtard" (4 quêtes narratives)
  3 quêtes standalone répétables (chasse/forge/craft)
  5 achievements liés (quests_completed + quest_arc_completed)
  Event-driven: combat/forge/craft/loot émettent quest.progress
  API: available, active, completed, accept, claim, arcs

Rebalance:
  Endurance coût combat 10→5, regen 6min→3min (20/h), repos 20→10
  Dégâts joueur +3 base (plus de combats de 13 tours au level 1)
  Défaite endurance penalty 50→25
  XP monstres réduite (25→8 Têtard, 130→50 Golem) — quêtes = source principale
2026-03-24 16:34:37 +01:00