mirror of
https://github.com/deunix-educ/aventuriers-des-mots.git
synced 2026-10-13 02:11:58 +02:00
493a8617d748375099a8a7803e300939d56ac1e8
Wires every autoload up to a real UI: boot -> profile select/create -> world map (three mission markers, positioned from data, not hardcoded pixels) -> mission intro (narrative from data/missions/, a new data type with its own schema) -> rule panel -> exercise host -> one of the three exercise type scenes -> feedback panel -> reward screen -> back to the map. exercise_host is the only piece with real orchestration logic: picks exercises via ExerciseEngine (now fully implemented, validating at load like make validate-data does), validates answers through the pure AnswerValidator/DictationAnalyzer, escalates aid over 3 attempts via AttemptFlow, feeds DifficultyManager so adaptive difficulty is actually wired in rather than dead code, and records every attempt through ProgressManager. Every exercise-type scene (multiple_choice, sentence_correction, dictation) only emits its answer by signal, per the architecture invariant. All child-facing text now comes from data/localization/fr.json via UIText, not hardcoded in scripts or scenes. Getting that right required extending SchemaValidator to support "additionalProperties" as a schema (dynamic keys), which also closed a real gap: save.skills was previously unvalidated against SkillState's actual shape. 16 new headless tests, including two integration tests that instance exercise_host.tscn directly and drive it by emitting child-scene signals, stopping short of the final scene transition (which would tear down the test runner's own tree). Everything that needs a screen -- layout at different sizes, touch, virtual keyboard, actual audio playback (no .ogg files exist yet) -- is listed in the new docs/testing/manual-checklist.md instead of claimed as verified. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Les Aventuriers des mots
Jeu éducatif de français pour les CE1-CE2 (7-9 ans) : une aventure 2D hors ligne, avec une carte à explorer, un personnage guide, et des exercices de grammaire, d'orthographe et de dictées.
Projet open source, en développement. Statut actuel : squelette technique (voir docs/specs/decisions.md pour les décisions de cadrage et docs/specs/cahier-des-charges.md pour la spécification complète).
Pile technique
- Godot 4.6 (GDScript typé)
- Exercices et contenu pédagogique en données JSON, validées au chargement
- Tests headless (GUT), lint/format GDScript (gdtoolkit)
Démarrer
make setup # installe Godot (pinné), GUT et gdtoolkit en local, rien n'est commité
make run # lance le jeu
Commandes
| Commande | Effet |
|---|---|
make setup |
installe l'outillage (lint, tests, modèles d'export) |
make run |
lance le jeu |
make lint / make format |
analyse statique et formatage GDScript |
make validate-data |
valide les JSON de data/ |
make test |
tests headless |
make check |
lint + validate-data + test, à passer avant chaque commit |
make export-linux / make export-windows |
exports dans build/ (à partir de l'étape export) |
Structure
autoload/: modules globaux (gestion du jeu, profils, progression, exercices, sauvegardes, audio, réglages)scenes/: scènes Godot, autonomes et communiquant par signauxscripts/: logique pure (correction, pédagogie) et chargement des donnéesdata/: contenu pédagogique en JSON, validé contre des schémasassets/: graphismes et audio (provisoires à ce stade, voirassets/CREDITS.md)tests/: tests headless (GUT)docs/specs/: cahier des charges et décisions de cadrage
Licence
Code et contenu sous GNU Affero General Public License v3.
Description
Les Aventuriers des mots
Jeu éducatif de français du CE1 au CM2 (7-11 ans) : une aventure 2D hors ligne, avec une carte à explorer, un personnage guide, et des exercices de grammaire, d'orthographe et de dictées.
Projet open source, en développement. Statut actuel : version 0.9.2, jouable hors ligne sur Linux, Android et dans un navigateur (versions testées à la main), avec des exports Windows, macOS et ChromeOS non encore testés sur matériel — profils, sauvegardes (avec export et restauration dans l'espace adulte), étoiles et collection d'objets, sons et musique, réglages (volumes, taille du texte, animations), tableau de progrès pour l'adulte, trois types d'exercices (choix multiple, correction de phrase, dictée), CE1, CE2, CM1 et CM2 en trois tableaux chacun (homophones, verbes, orthographe des mots), 111 missions. Contenu pédagogique entièrement en brouillon (draft, à valider) et voix des dictées provisoires (voir assets/CREDITS.md ; voir docs/specs/decisions.md pour les décisions de cadrage et docs/specs/cahier-des-charges.md pour la spécification complète).
Languages
GDScript
86.9%
Python
7.3%
Shell
4.3%
Makefile
1.5%