Before you start
A coding agent, browser and three phrases verified by a fluent speaker or trusted source.
Why this lesson exists
The original project is a 3D language-learning RPG whose build path adds the 3D environment only after the lesson works as plain text. This lab makes the language work first, before any voice or 3D.
Do the exercise
Set your boundary
Keep lesson data separate from the scene. Start with one location and a single question before adding voice or 3D polish.
Write one scenario
Write one scenario: enter a hotel and say hello. Use three phrases checked by a fluent speaker or a trusted source.
Store the lesson as data
Store the target phrase, translation, hint and accepted variants as data, separate from the scene.
Build a tap-to-continue version
Build a tap-to-continue version first, with a text answer as well. A wrong answer shows the hint and allows a retry.
Next sessions, not today
- Recorded audio Add recorded example audio from a fluent speaker or a trusted source.
- Speech recognition Add speech recognition and confidence feedback. Keep tap and text working for anyone without a microphone.
- 3D environment Add a 3D environment only after the lesson works as plain text.
A prompt to adapt
Replace the bracketed parts with your own details.
Help me build one playable language encounter for [target language] in a new browser practice folder. First version only: one location and a single question, with lesson data kept separate from the scene and a tap or text answer. No recorded audio, speech recognition or 3D yet. List the setup commands before changing any files. Then work in three checkpoints and, after each, tell me how to check it: 1. One scenario: a learner enters a hotel and says hello. 2. The target phrase, translation, hint and accepted variants stored as data I can review without reading rendering code. 3. A tap-to-continue version where a wrong answer shows the hint and allows a retry, and a missing answer is handled. Use these phrases, checked by a fluent speaker or a trusted source: [three phrases with translations].
Once it runs, paste your code and ask:
Review this language encounter for accessibility. It must work for a learner with no microphone, slow reading speed and intermittent internet, and give useful feedback on a wrong or missing answer. List each gap and the fix.
Run this experiment
Test correct, incorrect and missing answers. Deny microphone access and finish the encounter using tap or text. Then ask a new transfer question.
Check your result
Use evidence from your output. A confident explanation from the AI is not enough.
If it isn’t working
Do not confuse speech-to-text success with pronunciation assessment. Verify both game state and learning separately.
Optional. Progress stays in this browser.
Where this came from
Public project repository ↗. The practice lesson is an adaptation, not a verbatim transcript. About the sources.
Prepared September 2026. Tools and interfaces change; use current official setup instructions. Session lengths are estimates.
patrickz