- engine/guide.js 运行时合成8个签名earcon(方法论L2硬参数),off档零定时器,插播queue不顶对白 - settings: guide三档(full/standard/off默认full) + 语速2.2视障档;audio: isVoicePlaying()/setRateBoostEnabled() 清两个已知问题 - 6游戏按schemes§2接线: storyline看门狗+无效手势纠错、simon免扣重听看门狗、escape turn cue+提前卡关提示、rhythm gd_answer/gd_miss+结算看门狗+快进豁免、space首撞指令提示+结算看门狗、rpg格挡纠错+60s催促+状态签名 - 大厅设置面板+向导文档(14-guide-layer.md)+00-global-ux §6;R5台词表补4条一致性 - 试玩转写含向导事件;6 playtest(guide=off断言零改动)+guide.test(34断言)+资产终检全绿
盲航(SPACE)
太空盲飞躲避,纯音频游戏。飞船自动前进,你只有一双耳朵。
玩法
- 陨石从四个方位逼近,听声辨位:
- 左 / 右声道 的呼啸 = 左 / 右侧来袭
- 上方高频呼啸 = 上方来袭,下方低频轰隆 = 下方来袭
- 警报声越响越急,陨石越近。朝来袭方向的同向滑动把陨石拨开 (左来左滑、右来右滑、上来上滑、下来下滑)——零推理,反射直达。
- 被撞击 3 次坠毁(前 60 秒保护期内撞击不掉血,训练护盾吸收并语音讲解方位); 结算播报存活时间与躲避数分档整句;保护期后陨石越快越密(120 秒爬满)。
- 躲过 10 / 25 / 50 / 100 颗有里程碑播报;破纪录有"新纪录!"播报。
- 旁白播放中单击 = 跳过本句(语音链跳下一句);按住不放 = 旁白加速播放 (引擎内置,不变调)。首局演练开场会提示一次。
- 状态音乐:对局 = 引擎轰鸣 BGM;菜单/坠毁结算 = 轻 pad(
bgm/menu),状态切换即换曲。
教学流程(首次进入)
交互式演练 D0-D5:一句一练——旁白先说完,再来一颗 4.5 秒慢速演练陨石 (撞了不掉血),四个方向各练一次。做错不惩罚,当场重教;同一步失败 2 次 自动带过。旁白播放中下滑 = 跳过演练;第二次进游戏会询问"上滑重听演练, 单击直接出发"。
开局后第 20 秒引入单击加速、第 45 秒引入双击护盾(暂停刷怪各教一次, 8 秒没操作自动继续,机制之后照常生效)。第 60 秒保护期结束,难度开始爬坡。
手势
| 手势 | 作用 |
|---|---|
| 上 / 下 / 左 / 右滑 | 同向闪避:把对应方位来的陨石拨开(撞击前 1.5s 内有效) |
| 单击 | 旁白在播 = 跳过本句;否则 = 引擎短促加速 ~1.8s,增益期间冲过空隙(规避单击 300ms 判定延迟,持续增益非即时判定);第 20s 解锁 |
| 双击 | 展开护盾 6s,挡下一次撞击;之后 30s 充能冷却,充能完毕有语音提示;第 45s 解锁 |
| 下滑 | 无下方陨石悬置时呼出菜单(有下方陨石时下滑永远是闪避) |
| 单击(结算后) | 跳过结算播报;播报结束后 = 再飞一次 |
| 下滑(结算后) | 回大厅 |
菜单
下滑呼出(模态,暂停刷怪)→ 单击循环切换选项(播选项名)→ 双击确认 → 上滑 = 帮助(操作要点 + 设置引导),下滑或"继续飞行"关闭菜单。 选项:继续飞行 / 回大厅 / 重新听教学要点。
运行
python3 -m http.server 8106 --directory /home/ubuntu/SoundGame/web
# 浏览器打开 http://localhost:8106/space/ ,建议戴耳机
测试
/home/ubuntu/SoundGame/tools/node/bin/node test/playtest.mjs
# 无头试玩:虚拟时钟 + mock 浏览器环境,跑 13 号文档 §5/§7 全部关键路径与边界断言