Files
xsl ee5d4d2544 feat(playbook): 26 号交互手册全量落地——剩余 12 款深度重构 + 语音全量重制
storyline/escape/simon 首批之后的推广收官:15 款全部按 26 号模式运行
(发言权/回执/三档提示/迷茫接管/手势阶梯/断点复述),旧「双击重听/格挡/
菜单确认」等反模式口径全线废除,开场零规则念白(首句即动手)。

游戏层(12 款):rpg(格挡=前摇窗口内再单击)/ rhythm / space / radio /
dungeon / abyss / detective / cipher / teahouse / keeper / bridge /
hunt(联机切片):
- 每款 game.js 接引擎六模块 + makeInputPipeline(doubleTapWindow:0);
  四向玩法类 swipeCore + 长按帮助;双击是玩法的(space 护盾 / hunt
  旋风斩)按手势阶梯阶段 3 分档恢复双击窗口(doubletapCore)
- 每款 playtest 重写:玩法断言 + §6.2 乱点机器人(无声操作 / 被动
  原句重复 / 打断失败 = 0);15 款 3900+ 断言全绿
- 12 份 docs/design/26-apply-*.md 施工单 + tools/voice_lines_26/
  台词清单 + voice-ids 文档同步 + 转写会话剧本按新口径重写

引擎层(web/engine/,6 处修复):pipeline 增 doubletapCore;novice
teachLine 带 voice/ 前缀(此前教学句被静默丢弃);confusion.record
前置到新手门(锁定手势的乱点也计信号);InvalidHints 播完恢复解释前
状态(根治孤儿 BUSY);WaitPoint takeover(2) 台账去重;台账只在
speak 真正播出时登记。遗留引擎债登记 roadmap §3.1。

语音资产:台词表合并(新增 ~250 系统句 / 改 ~50 旧口径 / 删 ~110
废止句;合并器 tools/merge_voice_lines_26.py + 引用校验器
tools/validate_voice_refs.py),GPU 重录 1536 wav → 4204 ogg/m4a
落地,check_all_assets + validate_voice_refs 双绿;键盘变体同步扩表。

大厅/文档:15 款统一新交互口径(「新交互」徽标退役);README /
HANDOVER / rpg README 旧口径修正;roadmap P0-P3 置完成。
2026-10-02 12:33:20 +08:00

102 lines
7.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# voice_lines_26 · 《盲航》(space)26 号对齐改造台词清单
> 设计单正文见 docs/design/04-space-rebuild.md 附录 C;交互权威 26 号手册。
> 本文件是 **R6 改造(26 号深度重构)的台词增量清单**,管线路径 `tools/gen_voice_dual.py`
> 的 `SPACE_LINES`(变量名 `_SPC`,两表一致铁律:本清单并入 SPACE_LINES 时逐字照抄)。
>
> 写作口径(00 §3 / 26 §4.8):指令 ≤12 字;`_short` 档 ≤6 字只留动作;叙事 ≤25 字;
> 我在哪 ≤20 字;肯定 ≤4 字;每句标类别(critical / content / hint / feedback),
> `critical` 须 <3s。多音字规避:全表无「重听」(一律「重新听」),无「撞着/着陆」类。
>
> 未引入的通用句:`sys_first_tap`(开场第一句 = D1 指令「听,左边有陨石。向左滑。」,
> §4.10 第一句就让玩家拨一颗)、`sys_unlock_up`(up 是玩法闪避方向,阶段 1 教的是
> 长按帮助 → `lp_teach`)、`sys_unlock_dt`(阶段 3 以后双击 = 护盾而非重听,教学用
> `feat_shield`)。`sys_unlock_down` 引入(结算后下滑 = 菜单,与 storyline 同文案)。
>
> 键盘变体:仅「新增/修改」中含操作词的句子需要;未改动句子(hit_*、protect_*、
> drill_retry_*、second_run_ask 等)的既有 key 变体维持不动,不重复列出。
## 一、新增(18 句)
| 行 | 类别 | 用途 |
|---|---|---|
| `("hint_tap", _SPC, "单击。")` | hint | settle / reopen / ask 等待点 `_short` 档 |
| `("d_short_left", _SPC, "向左滑。")` | hint | d1 等待点 `_short`;迷茫 L2 限定方向 |
| `("d_short_right", _SPC, "向右滑。")` | hint | d2 等待点 `_short`;迷茫 L2 |
| `("d_short_up", _SPC, "向上滑。")` | hint | d3 等待点 `_short`;迷茫 L2 |
| `("d_short_down", _SPC, "向下滑。")` | hint | d4 等待点 `_short`;迷茫 L2 |
| `("hint_swipe", _SPC, "向声音那边滑。")` | hint | 迷茫 L1 短句;演练等待点单击首次解释 |
| `("inv_tap", _SPC, "现在只要滑。")` | feedback | 对局未解锁加速时单击的首次解释(04 §0.3) |
| `("inv_whiff", _SPC, "现在没有这边的陨石。")` | feedback | 挥空首次解释(04 §0.7) |
| `("miss", _SPC, "没拨到。声音一响就滑。")` | feedback | 演练没出手归因(禁止说「慢了」) |
| `("lp_run", _SPC, "引擎舱。躲开呼啸。向声音那边滑。")` | hint | 长按 = 我在哪(位置→目标→动作,≤20 字) |
| `("lp_teach", _SPC, "想知道在哪,按住屏幕。")` | content | 第一次成功闪避后教长按帮助(阶段 1,马上能用) |
| `("sys_turn_teach", _SPC, "听到这个声音,就是轮到你了。")` | content | 教「轮到你」状态(与 storyline 同文案) |
| `("sys_say_again", _SPC, "再说一遍:")` | hint | 主动重听前缀(全项目一句) |
| `("sys_unlock_down", _SPC, "向下滑,可以打开菜单。")` | content | 阶段 2 解锁教学(第一局结束,挂结算链尾) |
| `("sys_demo", _SPC, "听我做一次。")` | hint | 迷茫 L3 / 演示通过 |
| `("sys_now_you", _SPC, "现在你来。")` | hint | L3 演示后把话轮交回 |
| `("resume_ask", _SPC, "上次飞到一半。单击继续,右滑重开。")` | hint | 断点复述询问(reopen 等待点 `_full`) |
| `("resume_recap", _SPC, "你在航道上。躲开呼啸。向声音那边滑。")` | content | 续玩复述句(04 §0.9,count-in 前播) |
## 二、修改(9 句;id 不变重录)
| 行 | 类别 | 修改理由 |
|---|---|---|
| `("drill_left", _SPC, "听,左边有陨石。向左滑。")` | critical | 04 §0.5 d1 `_full`;删「把它拨开」压进指令字数(≤12) |
| `("drill_right", _SPC, "这次在右边。")` | critical | 04 §0.5 d2 `_full`:方位先行,动作由 `_short` 档说 |
| `("drill_up", _SPC, "上面,向上滑。")` | critical | 04 §0.5 d3 `_full` |
| `("drill_down", _SPC, "下面,向下滑。")` | critical | 04 §0.5 d4 `_full` |
| `("feat_boost", _SPC, "点一下,加速。现在试试。")` | content | 04 §4:解锁后一句教学(原保护期第 20s 插课句废止) |
| `("feat_shield", _SPC, "双击,展开护盾。现在试试。")` | content | 04 §4:护盾单独一课(原第 45s 插课句废止) |
| `("help_recap", _SPC, "听到哪边来,就向哪边滑。按住屏幕问路。")` | hint | 删「单击加速,双击护盾」——新手期两者都不存在 |
| `("menu_main", _SPC, "菜单。左右滑切换,单击确认。")` | content | 00 §5.4 菜单约定(旧「单击切换,双击确认」废止) |
| `("restart_hint", _SPC, "单击,再飞一次。")` | critical | 结算承诺段;「下滑回大厅」改由 sys_unlock_down 教学 |
## 三、删除(10 句;资产与生成表条目一并清理)
| id | 原文 | 删除理由(04 号 §8 废止清单) |
|---|---|---|
| `drill_welcome` | 欢迎登上盲航。你只有一双耳朵。 | D0 零操作欢迎删除(§4.10 第一句就让玩家拨一颗) |
| `drill_rule` | 陨石来了,会有声音告诉你方位。 | 同上;规则说明由指令句自带 |
| `drill_skip` | 跳过演练,直接出发。 | 演练是四步一练的快流程,不再提供下滑跳过 |
| `skip_hint` | 单击可跳过旁白。 | 开场零操作旁白已删;跳句是手势宪法自带能力 |
| `paused` | 已暂停。 | 对局中不再开菜单(下滑永远是闪避);菜单从结算呼出 |
| `settings_hint` | 音色、语速、背景音乐,请回大厅修改。 | 菜单帮助只留 help_recap 一句(一次只说一件事) |
| `feat_boost_done` | 感觉到了吗?加速的时候,陨石撞不上你。 | 加速激活以 boost 音即反馈(§4.2 silent-ok) |
| `gd_hit_hint` | 被撞了。听方位,同向滑动就能拨开。 | 向导层让位 Floor:hit_<dir> 已含方位 + 正确动作 |
| `gd_last_life` | 这是最后一次机会,撑住。 | hit_last「船体只剩最后一次了」已覆盖(避免双句说一事) |
| ~~`second_run_ask`~~(保留) | 上滑重新听演练,单击直接出发。 | 勘误:保留不删(回访者重听演练入口;无废止口径) |
## 四、键盘变体(02-input-parity §4.3 路线 a:只改操作词,其余一字不动)
新增/修改句中含操作词的变体(未列出者 = 主句无操作词,落回主资产):
```
("hint_tap", "按空格。")
("d_short_left", "按左方向键。")
("d_short_right", "按右方向键。")
("d_short_up", "按上方向键。")
("d_short_down", "按下方向键。")
("hint_swipe", "朝声音那边按方向键。")
("inv_tap", "现在只要按方向键。")
("miss", "没拨到。声音一响就按。")
("lp_run", "引擎舱。躲开呼啸。朝声音那边按方向键。")
("lp_teach", "想知道在哪,按住空格。")
("drill_left", "听,左边有陨石。按左方向键。")
("feat_boost", "按空格,加速。现在试试。")
("feat_shield", "按回车,展开护盾。现在试试。")
("help_recap", "听到哪边来,就按哪边方向键。按住空格问路。")
("menu_main", "菜单。左右方向键切换,按空格确认。")
("restart_hint", "按空格,再飞一次。")
("resume_ask", "上次飞到一半。按空格继续,按右方向键重开。")
("sys_unlock_down", "按下方向键,可以打开菜单。")
```
键盘变体移除:`drill_right` / `drill_up` / `drill_down`(修改后主句不含操作词,
「按左/右/上/下方向键」动作提示由 `d_short_*` 变体承担);`feat_boost` 旧变体
「试试按空格,引擎会短促加速…」随主句重录覆盖。
无变体(主句无操作词):`inv_whiff`、`sys_demo`、`sys_now_you`、`sys_turn_teach`、
`sys_say_again`、`resume_recap`。