Skip to content

flyxl/LanguageAstronauts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

时空语航员 · Language Astronauts

一款面向深圳小学的多教材英语功能游戏(Serious Game),支持:

  • 沪教牛津版(2024 新版 · 六三制一起)
  • 沪教版英语口语交际(经广东省中小学教材审定委员会 2025 年复审通过)

把枯燥的单词记忆与课文背诵,转化为「能核飞船 × 星际防御」的宇宙冒险, 并用艾宾浩斯遗忘曲线作为隐形刷怪机制,驱动孩子自发完成高频复习。

本仓库实现的是策划案中的第一期 MVP:极简 Web App,纯前端、0 服务器、0 广告、0 内购。

账号与教材

  • 多孩子账号:一部手机可创建多个孩子,各自取名;进度、复习队列、宠物等数据完全隔离。
  • 启动逻辑:无孩子 → 创建;多个孩子 → 先选择;一个孩子 → 自动进入其学习数据。
  • 教材绑定:创建孩子时选择教材 + 年级/学期;星图远征默认只显示当前学期,可点「更多学期」浏览其它册次。

玩法概览

  • 星图远征(推图):每个单元 = 一个星域。武器舱展示「攻击目标」(中文释义 / NPC 对话上半句), 选对即「发射激光炮」击中遗忘吞噬怪。
  • 多模态答题(系统随机切换,覆盖听说读写):
    • 🎯 弹药选择:看中文/听句子选英文导弹。
    • 🎧 听音辨词:隐藏文字,仅靠发音(自动朗读 + 可重播)选出单词。
    • ⌨️ 拼写填空:点击打乱的字母拼块拼出单词,难度更高、伤害加成 +30%。
    • 🎤 口语评测 / 角色扮演:用麦克风朗读 NPC 回应,基于语音识别打分, 发音标准度直接决定激光炮伤害值(GDD 设定;不支持识别的浏览器可「跳过朗读」普通发射)。
  • Combo 连击:连续答对触发暴击(伤害翻倍)+ 双倍战功,答错连击清零。
  • 双轨制通关:水晶碎片集满 30/30 本单元艾宾浩斯复习队列清零,才算「完美通关」。
  • 飞船护盾 HP:答错被怪兽反击扣血,HP 归零进入「睡眠充能模式」(天然防沉迷)。
  • 怪兽进化:Word 形态 → Dialogue 形态 → Reading BOSS 形态。
  • 红色警报突袭(隐形算法):后台艾宾浩斯队列到期时,伪装成「怪兽突袭」强行召唤复习, 绝不出现「你该复习了」等说教字眼。
  • 战功商店 / 星际花园:用战功🏅兑换宇航服皮肤,用水晶💎购买种子并浇水培育外星植物(留存系统)。
  • 学情数据:家长端可视化预览(接触语言点数、掌握度、正确率、易错词、待清剿怪兽数)。

艾宾浩斯记忆层级(自用加速版)

层级 冷却 游戏内表现
Level 1 10 秒 浅层警报:小偷怪偷取碎片
Level 2 30 秒 中层突袭:怪物进化,攻击护盾
Level 3 2 分钟 领地保卫战
Level 4 5 分钟 星域大 BOSS 逆袭

答错 → 该项层级直接重置回 Level 1 并高频重刷,直到牢固掌握。 (运营版冷却建议改为 5 分钟 / 30 分钟 / 12 小时 / 1·2·7 天,见 js/ebbinghaus.js 注释。)

技术栈

  • HTML5 + Tailwind CSS(CDN)+ Animate.css(CDN)+ 原生 JavaScript
  • 存储:LocalStorage(无数据库、无后端)
  • 音效:WebAudio 合成;发音:浏览器内置 SpeechSynthesis(点击 🔊 朗读)
  • 可「添加到主屏幕」获得类原生 App 体验(含 manifest.webmanifest

目录结构

index.html              入口
manifest.webmanifest    PWA 清单(添加到主屏幕)
css/style.css           太空主题样式与动画
js/
  data.js               沪教牛津 2024 课程素材库
  data-kouyu.js         沪教版英语口语交际课程素材库(自动生成)
  catalog.js            教材注册表与课程查询
  storage.js            LocalStorage 存档(v4 多孩子)
  ebbinghaus.js         艾宾浩斯复习队列引擎
  audio.js              音效与英文朗读
  game.js               核心战斗引擎
  ui.js                 全部界面与交互
  main.js               启动与后台复习轮询
scripts/
  generate-kouyu-data.js  从牛津版生成口语交际课程数据

本地运行

# 任意静态服务器即可
python3 -m http.server 8799
# 浏览器打开 http://localhost:8799

或直接部署到 GitHub Pages / Vercel。

课程素材说明

沪教牛津版(js/data.js

已对齐 2024 版《义务教育教科书·英语》目录:

  • 1A、2A、2B、5A、5B、6A、6B:12 单元/册(模块结构)
  • 1B:6 单元;3A、3B、4A、4B:8 单元/册(Big Question 结构)

沪教版英语口语交际(js/data-kouyu.js

  • 1–2 年级:6 单元/册(Big Question 结构)
  • 3–6 年级:8 单元/册;单元标题与 2024 新版一致
  • scripts/generate-kouyu-data.js 生成,1A 为独立口语内容,其余年级基于牛津版改编

词汇与对话整理自公开单词表,建议用课本 Word list 校对。

存档迁移

旧版 v3 单用户存档会在首次加载时自动迁移为 v4 多孩子格式(默认创建一个「小航员」账号)。

About

时空语航员 Language Astronauts · 沪教牛津深圳版小学英语功能游戏

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors