feat(platform/P1): 配对码跨设备 + 认领打磨 + 键盘语音双套资产(两 agent 并行 + 集成收口)
配对码与认领(B): - POST /api/pair/start|join:6 位码 10 分钟单次有效、仅存内存零泄露面、5 连错 per-IP 封锁 10 分钟;join=新设备档案按桶 LWW 并入老档案+token 改绑(复用 claim-merge);日志脱敏 - 大厅:生成配对码(speechSynthesis 逐位朗读+aria-live+重听)/从其他设备转入(one-time-code 输入框)/从本机移除/401 过期自愈引导/aria 补全/玩家名可听化 - api-smoke 12/12(配对全流程/频控/封锁/过期自愈/移除/digitsToCn)+ CDP 真浏览器 E2E 22/22 键盘语音双套资产(A,路线 a): - 164 变体句(8 游戏 grep 实测,超出调研预估 153:含轻触/点两下/按住变体)×2 性别=328 生成 656 文件 36.9 分钟;触屏主资产零字节改动(PCM 逐样本比对后还原) - 引擎 _candidates 三跳路由 key→gender→平铺(inputMode 跟随);缓存键 mode|gender|id;engine-input 新增 K9 路由断言(72 条) - check_all_assets 增 key 列(两性别一致且 ⊆ 主集)8 游戏全绿;voice_text.json 增 __key__ 表;live control.mjs key 会话对照键盘措辞验收(集成) - voice-ids 文档:8 游戏键盘变体小节由 KEY_LINES 程序化生成(与台词表逐字断言一致);补齐 storyline/escape/simon 三个历史缺失文档;design README 增 new8 索引 - mock 适配:playtest persona 加 maxTouchPoints=1 保持触屏链断言语义零改动 回归:12 套件全绿(8 playtest + guide 122 + engine-voice 19 + engine-input 72 + api-smoke 12/12) 同批入库:批次 2/3 已完稿设计文档(17-abyss/18-detective/19-cipher 全套,20-22 在途)
This commit is contained in:
@@ -179,3 +179,41 @@
|
||||
通关链 = `settle_win_1 → settle_win_2 → meta_gold_X(同上)→ unlock 段 → settle_again`;
|
||||
上滑局面复述链 = `st_floor_N → st_hp_X → st_gold_X(band1 且金>0 时为 gold_some)→ st_face_X → st_threat_X`。
|
||||
主设计触发逻辑对照 [16-dungeon.md](16-dungeon.md) §4-§11;资产规模核对见其 §9。
|
||||
---
|
||||
|
||||
## 键盘变体(key,P1 输入平权路线 a,20 句)
|
||||
|
||||
「生效输入模式=键盘」(settings.input=key,或 auto 且键盘在跟/纯桌面初始判定,
|
||||
web/engine/gesture.js inputMode())时,引擎 voice 候选链前置加载
|
||||
`web/dungeon/audio/voice/<gender>/key/<id>.{ogg,m4a}`,变体缺失回退主资产——触屏措辞零改动。
|
||||
>
|
||||
> 措辞规范(02-input-parity.md §4.3 路线 a + P1 裁定):向左滑→按左方向键(四向同理,
|
||||
> WASD 不进台词);单击/轻触屏幕→按空格;双击→按回车;按住/长按→按住空格;
|
||||
> 复合短语(左右滑→左右方向键、滑动→方向键)按语义等价展开;只改操作词,其余
|
||||
> 内容一字不动,不新增「重」类多音字。本表与 `tools/gen_voice_dual.py` 的
|
||||
> `KEY_LINES` 逐字一致(两表一致铁律:改一处必改另一处)。
|
||||
> 资产:×2 性别 = 20×2 条、×2 格式 = 20×4 文件;管线 `gen_voice_dual.py --only-variants`
|
||||
> 生成 → `--convert` 落盘,终检 `tools/check_all_assets.py`(key 两性别一致且 ⊆ 主集)。
|
||||
|
||||
| id | 键盘台词全文(触屏原句见本表上方对应 id) |
|
||||
|---|---|
|
||||
| `sys_continue_ask` | 检测到探窟记录。按空格继续,按右方向键重新开始。 |
|
||||
| `tut_d0` | 先学会用耳朵看。按空格,发出声波脉冲。 |
|
||||
| `tut_walk` | 按住空格不放,你就往前走。 |
|
||||
| `tut_turn` | 按左右方向键,可以转身。 |
|
||||
| `tut_replay` | 按回车,再发一次脉冲,不要钱。 |
|
||||
| `tut_status` | 按上方向键,随时听自己的状态。 |
|
||||
| `tut_menu` | 按下方向键,打开菜单。 |
|
||||
| `tut_parry` | 听到它的动静,按回车格挡。 |
|
||||
| `tut_attack` | 现在按空格,挥拳打它。 |
|
||||
| `tut_flee_hold` | 想逃跑,按住空格别松手。 |
|
||||
| `tut_stairs_on` | 楼梯就在脚下。按空格,下潜。 |
|
||||
| `tut_skip` | 已跳过教学。按空格发脉冲,先听听四周。 |
|
||||
| `sys_menu` | 菜单。按空格切换,按回车确认。 |
|
||||
| `help_explore` | 按空格发脉冲,按住空格前进,左右方向键转身。按回车再听,上方向键查状态,下方向键开菜单。 |
|
||||
| `help_battle` | 敌人前摇声响时按回车格挡,按空格挥击。打不过就按住空格逃跑。 |
|
||||
| `die_adv_1` | 下次,前摇声响时就按回车。 |
|
||||
| `die_adv_2` | 打不过,就按住空格逃跑。 |
|
||||
| `gd_pulse` | 按空格发脉冲,听听四周。 |
|
||||
| `gd_turn` | 轮到你了。按空格挥击。 |
|
||||
| `settle_again` | 按空格,再探一次。 |
|
||||
|
||||
Reference in New Issue
Block a user