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.
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.
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).
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").
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).
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.).
- 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)