mirror of
https://github.com/deunix-educ/aventuriers-des-mots.git
synced 2026-10-13 02:11:58 +02:00
2fe455f5d12a5e4a352cc8f32119c21491e34510
scripts/correction/: AnswerValidator (multiple choice, sentence correction via tap-the-faulty-word + retype) and DictationAnalyzer build the CorrectionResult structure from cahier des charges §6. Dictation analysis aligns words with WordAligner (Wagner-Fischer edit distance) before any character comparison, so an omitted or added word doesn't cascade into false errors on every following word. TextNormalizer handles non-breaking spaces, typographic apostrophes, and decomposed-vs-composed French accented characters via an explicit table (GDScript has no built-in NFC/NFD normalization). Error classification follows the data annotations only (rule_id present -> grammatical, absent -> unclassified), never a runtime linguistic guess. scripts/pedagogy/: DifficultyManager (per-skill difficulty from recent results), AttemptFlow (3-attempt graduated aid: hint, then explanation, then reveal, matching exercise-lifecycle.md's second gap), and ReviewScheduler (the five mastery states from §9, with session-counted spaced review intervals [1, 3, 6, 12] rather than wall-clock dates, since a family device's clock isn't trustworthy). All of it is pure: no scene tree, no clock or RNG read directly, every effectful input (session number, attempt outcome) is a parameter. 65 headless tests across both layers, including the word-omission-doesn't-cascade regression and the full decouverte -> acquise -> a_reviser -> acquise path. 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%