mirror of
https://github.com/deunix-educ/aventuriers-des-mots.git
synced 2026-10-13 02:11:58 +02:00
b0d11eb83137a179aace1a9b4eff3467b0ff01b7
Investigating a manual bug report ("typing petits as the correction
for petit doesn't validate"): both a direct test of
sentence_correction.tscn and a full exercise_host integration test
(mission_02_pont_des_phrases) tap the faulty token, type its exact
expected correction, and submit -- both pass, confirming the
validator and the scene wiring correctly accept "petits" when the
word is tapped once and the correction is typed before pressing
Valider.
Caught along the way: a first draft of the direct-scene test used a
lambda connected to answer_submitted to capture its parameters into
outer local variables -- GDScript closures capture locals by value
at creation time, so reassigning them inside the lambda never
reaches the outer scope. Switched to GUT's
assert_signal_emitted_with_parameters, the supported way to inspect
signal arguments in a test.
No fix applied yet: these tests confirm the intended interaction
works, but don't rule out a real fragility noticed while reading the
code -- toggling a token off deletes its LineEdit (and whatever was
typed in it) immediately, so an accidental second tap on the same
word silently discards the correction. Needs the user's exact click
sequence to confirm before changing behavior.
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 : premier prototype jouable (périmètre du §15 du cahier des charges) — démarrage, profils, carte à trois lieux, trois types d'exercices, sauvegardes, exports Linux/Windows. Contenu pédagogique encore minimal (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/ |
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%