- 新增 web/ 纯音频 HTML5 平台:共享引擎(手势/WebAudio 三层/设置/震动)、 Node 零依赖服务器(静态 + 注册登录 + 进度存档 API) - 游戏:剑与声(RPG 新作)、声命线、暗室(重设计)、音序回响(重设计)、 节拍行者(跟随领奏重构)、盲航(同向闪避重构);声东击西删除 - 全局功能:男声/女声双套 TTS 资产、三档语速、BGM 音量三档、 震动反馈语言(10 种震型)、服务器进度同步 - 资产:899 ogg + 899 m4a(Qwen3-TTS 双性别语音、Stable Audio 3 音效、 Mureka BGM 4+3 首),终检零缺失 - 文档:docs/design/ 13 篇设计审查文档、docs/audio/ 资产管线、 web/server/README.md API 文档
15 KiB
15 KiB
R2 语音 id 清单:escape《暗室》/ simon《音序回响》
给开发:本文件是两款游戏重设计的最终语音资产清单。
✦= 新增 id,●= 保留 id(文本不变或微调,全部按新 instruct 重录),✗= 删除 id(文件已从 voice/male|female/ 移除,代码不得再引用)。 所有 id 在audio/voice/male/与audio/voice/female/下成对存在(.ogg + .m4a)。 生成规范(00 文档 §3):每游戏同一 speaker 常量 + 同一 instruct 常量;instruct 不含语速词(语速由引擎 playbackRate 控制);一句一文件,禁止拼接。
音色与 instruct 常量
| 游戏 | 目录 | speaker | instruct(本游戏全部 id 共用) |
|---|---|---|---|
| escape | male | Uncle_Fu | 低沉平稳的男声,冷静、克制,带一点神秘感 |
| escape | female | Serena | 沉稳平静的女声,冷静、克制,带一点神秘感 |
| simon | male | Uncle_Fu | 平静、清晰,像一个耐心的游戏主持人 |
| simon | female | Serena | 平静、清晰,像一个耐心的游戏主持人 |
一、escape《暗室》(共 74 id)
1. 开场引导 GUIDE(G0–G7,✦ 全部新增)
| id | 台词 | 对应设计步骤 |
|---|---|---|
| g0_intro ✦ | 黑暗。你在废弃的地下设施里醒来,什么都想不起来。你必须找到出路。 | G0(单击继续) |
| g1_move ✦ | 先活动一下。朝任意方向滑一下,走一小步。 | G1 |
| g1_done ✦ | 很好,你迈出了第一步。 | G1 反馈 |
| g2_wall ✦ | 这个房间不大,四面都是墙。再滑两下,试试碰碰墙。 | G2 |
| g3_left ✦ | 跟着我指的路走。向左滑。 | G3 |
| g4_down ✦ | 对。再向下滑。 | G3 反馈 + G4 指令(同一句) |
| g5_inspect ✦ | 听到水声了吗?单击一下,仔细检查这个房间。 | G5 |
| g5_key ✦ | 你摸到了一把钥匙! | G5 反馈(谜题链第一环) |
| g6_doubletap ✦ | 钥匙能开锁。双击,是把物品用出去的用法。现在,双击试试。 | G6 |
| g6_done ✦ | 对,就是这样。接下来,靠你自己了。 | G6 反馈 |
| g7_goal ✦ | 找到能用这把钥匙打开的东西。需要帮助时,在原地双击。 | G7 → PLAY |
2. 引导纠错与跳过(✦)
| id | 台词 | 用途 |
|---|---|---|
| guide_wrong_up ✦ | 不是这个方向。向上滑。 | 做错方向纠正(4 向各一) |
| guide_wrong_down ✦ | 不是这个方向。向下滑。 | 同上 |
| guide_wrong_left ✦ | 不是这个方向。向左滑。 | 同上 |
| guide_wrong_right ✦ | 不是这个方向。向右滑。 | 同上 |
| guide_wrong_gesture ✦ | 不是这个操作。照我说的做。 | 手势类型错误(该滑动了却点按等) |
| guide_blunt_up ✦ | 手指贴着屏幕,向上推一下。 | 同一步错 3 次的直白重述(4 向各一) |
| guide_blunt_down ✦ | 手指贴着屏幕,向下推一下。 | 同上 |
| guide_blunt_left ✦ | 手指贴着屏幕,向左推一下。 | 同上 |
| guide_blunt_right ✦ | 手指贴着屏幕,向右推一下。 | 同上 |
| guide_offpath ✦ | 先跟我走。 | 引导期间偏离脚本路线的温和拦回 |
| guide_skip ✦ | 跳过引导,直接开始自由探索。 | 引导期间下滑跳过确认 |
| reopen_prompt ✦ | 上滑,重新听一遍引导。单击,直接开始。 | 二周目开场(已完成过引导) |
3. 卡关三级提示(✦ 12 句 + 前置句 + 导航句 4 句)
L1/L2 每阶段自动播一次;L3 = stuck_<阶段>_3 + 按当前位置算路链播 nav_*(两句以内)。
| id | 台词 | 级别/阶段 |
|---|---|---|
| stuck_ask ✦ | 需要帮助吗? | L1 前置句(播完接 L1 内容) |
| stuck_key_1 ✦ | 铁锈味最重的地方,值得仔细看看。 | L1·找钥匙 |
| stuck_key_2 ✦ | 去西南角的储物间,单击检查,找到钥匙。 | L2·找钥匙(双击兜底也播这条) |
| stuck_key_3 ✦ | 跟我说的方向走,去西南角的储物间。 | L3·找钥匙(后接 nav_* 链) |
| stuck_cabinet_1 ✦ | 钥匙就在你身上。它能打开某一把锁。 | L1·开铁柜 |
| stuck_cabinet_2 ✦ | 去东边的铁柜房,双击,用钥匙打开铁柜。 | L2·开铁柜 |
| stuck_cabinet_3 ✦ | 跟我说的方向走,去铁柜所在的房间。 | L3·开铁柜 |
| stuck_box_1 ✦ | 保险丝属于电箱。有电流声的地方,就有电箱。 | L1·修电箱 |
| stuck_box_2 ✦ | 去西北角的电箱房,双击,把保险丝装进电箱。 | L2·修电箱 |
| stuck_box_3 ✦ | 跟我说的方向走,去电箱所在的房间。 | L3·修电箱 |
| stuck_gate_1 ✦ | 电已经通了。该去找那扇铁门了。 | L1·开大门 |
| stuck_gate_2 ✦ | 去东南角的大门,双击,打开它,离开这里。 | L2·开大门 |
| stuck_gate_3 ✦ | 跟我说的方向走,去大门所在的房间。 | L3·开大门 |
| nav_up ✦ | 向上滑。 | L3 导航词(算路链播,可两句连读) |
| nav_down ✦ | 向下滑。 | 同上 |
| nav_left ✦ | 向左滑。 | 同上 |
| nav_right ✦ | 向右滑。 | 同上 |
4. 房间描述(✦ 首次进入关键房间时播,配合环境音)
| id | 台词 | 房间 |
|---|---|---|
| room_storage ✦ | 一间储物间。货架上堆满杂物,角落里传来水滴声。 | 储物间 (0,2),环境音 amb_storage |
| room_cabinet ✦ | 这个房间里,立着一个铁柜。 | 铁柜房 (2,1),amb_cabinet |
| room_power ✦ | 这个房间的墙上,有一只电箱。 | 电箱房 (0,0),amb_power |
| room_gate ✦ | 面前,是一扇沉重的铁门。 | 大门 (2,2),amb_gate / 通电后 amb_gate_live |
5. 用时播报(✦ 4 段整句,替代全部数字拼接)
| id | 台词 | 区间(供代码映射) |
|---|---|---|
| time_band1 ✦ | 你逃出来了,用时不到两分钟。了不起! | t < 120s |
| time_band2 ✦ | 你逃出来了,用时不到五分钟。 | 120s ≤ t < 300s |
| time_band3 ✦ | 你逃出来了,用时不到十分钟。 | 300s ≤ t < 600s |
| time_band4 ✦ | 你逃出来了,用时超过十分钟。 | t ≥ 600s |
6. 保留 id(● 文本不变,按新 instruct 双性别重录)
| id | 台词 |
|---|---|
| wall ● | 那边是墙,换个方向。(新文本;引导 G2 与 PLAY 撞墙共用,每次撞墙都播) |
| start_room ● | 你站在设施中央的房间里。滑动移动,单击检查,双击使用物品。(新文本;跳过引导后的 PLAY 开场) |
| found_key ● | 你蹲下身在储物架的角落里摸索,指尖碰到一个冰凉的金属物件——是一把钥匙!钥匙到手了。 |
| inspect_cabinet_locked ● | 这个房间里立着一个铁柜,柜门上挂着一把锁。也许,有什么钥匙能打开它。 |
| unlock_cabinet ● | 钥匙插进锁孔,缓缓转动。咔哒一声,柜门开了。柜子深处,躺着一枚保险丝。保险丝到手了。 |
| inspect_box_dead ● | 墙上是一只电箱,箱盖敞开着,里面的保险丝座空空如也。没有电,这里的大门永远打不开。 |
| box_fixed ● | 电箱运转正常,电流的嗡鸣声平稳而持续。 |
| fix_box ● | 你把保险丝用力按进卡座。火花一闪,嗡鸣声响起——头顶的线路恢复供电了! |
| inspect_gate ● | 面前是一扇沉重的铁门。门边的电子锁一片漆黑,没有任何反应。它需要电力。 |
| inspect_gate_ready ● | 电子锁的指示灯亮了,发出微弱的绿光。大门已经通电。双击,打开它,离开这里。 |
| escape ● | 你扳动开关。电机轰鸣,沉重的铁门缓缓升起,刺眼的光线涌了进来。你眯起眼睛,向前迈出了第一步。自由了。你逃出来了。 |
| use_fail ● | 这里没有用得上东西的地方。换个房间试试,或者先单击检查一下周围。 |
| inv_empty ● | 你摸了摸身上,什么也没有。 |
| inv_key ● | 你身上带着一把钥匙。 |
| inv_fuse ● | 你身上带着一枚保险丝。 |
| inv_both ● | 你身上带着一把钥匙和一枚保险丝。 |
| replay ● | 黑暗再次合拢。你回到了中央的房间。这一次,你会更快。 |
| again ● | 单击屏幕,再来一次。下滑,打开菜单。(新文本;ENDING 提示) |
| empty_1 ● | 房间里空空荡荡,只有你自己的回声。 |
| empty_2 ● | 你伸出手,摸到的只有冰冷粗糙的墙壁。 |
| empty_3 ● | 除了远处的水滴声,这里什么都没有。 |
7. 菜单与帮助(✦)
| id | 台词 | 用途 |
|---|---|---|
| help_ops ✦ | 滑动,在房间之间移动。单击,检查房间,或者重听房间的声音。双击,使用物品,或者查看背包。 | 菜单「重听帮助」/ 兜底说明 |
| menu_open ✦ | 菜单。 | 菜单打开播报第一项前 |
| menu_restart ✦ | 重新开始。 | 菜单选项 |
| menu_home ✦ | 回大厅。 | 菜单选项(保存并回大厅) |
| menu_back ✦ | 返回游戏。 | 菜单选项 |
8. escape 删除清单(✗ 文件已移除,代码禁止引用)
- 数字拼接链(14):
n0 n1 n2 n3 n4 n5 n6 n7 n8 n9 nshi unit_min unit_sec time_prefix→ 由time_band1..4替代 - 旧开场(2):
intro tutorial→ 由 GUIDE(g0–g7)替代 - 旧四级提示(4):
hint_key hint_cabinet hint_box hint_gate→ 由stuck_*三级提示替代 - 平铺目录
audio/voice/下的 escape 旧文件全部移除(引擎已切 gender 目录)
二、simon《音序回响》(共 68 id)
1. 交互式教学(✦ T0–T7;T8 即 round_01)
| id | 台词 | 用途 |
|---|---|---|
| t0_welcome ✦ | 欢迎来到音序回响。先认识六种声音。 | T0(与下句链播) |
| t0_goal ✦ | 我会演奏一串声音,请你记住顺序,原样复现。 | T0 第二句 |
| t1_up ✦ | 向上滑,是这个声音。 | T1(播完接 tone_up,再接 t_try) |
| t2_down ✦ | 向下滑,是这个声音。 | T2 |
| t3_left ✦ | 向左滑,是这个声音。 | T3 |
| t4_right ✦ | 向右滑,是这个声音。 | T4 |
| t5_tap ✦ | 单击,是这个声音。 | T5 |
| t6_double ✦ | 双击,是这个声音。 | T6 |
| t_try ✦ | 你试试。 | T1–T6 共用,等待玩家做该手势 |
| t_ok ✦ | 对了。 | 做对,进下一个 |
| t_wrong_up ✦ | 不是这个,向上滑试试。 | 做错纠正(6 手势各一) |
| t_wrong_down ✦ | 不是这个,向下滑试试。 | 同上 |
| t_wrong_left ✦ | 不是这个,向左滑试试。 | 同上 |
| t_wrong_right ✦ | 不是这个,向右滑试试。 | 同上 |
| t_wrong_tap ✦ | 不是这个,单击试试。 | 同上 |
| t_wrong_double ✦ | 不是这个,双击试试。 | 同上 |
| t_blunt_up ✦ | 手指贴着屏幕,向上推一下。 | 同一手势错 3 次的直白版(6 手势各一) |
| t_blunt_down ✦ | 手指贴着屏幕,向下推一下。 | 同上 |
| t_blunt_left ✦ | 手指贴着屏幕,向左推一下。 | 同上 |
| t_blunt_right ✦ | 手指贴着屏幕,向右推一下。 | 同上 |
| t_blunt_tap ✦ | 用指尖,轻轻点一下屏幕。 | 同上 |
| t_blunt_double ✦ | 用指尖,快速点两下屏幕。 | 同上 |
| t7_ready ✦ | 六种声音都记住了。后面的序列,会越来越长。 | T7(与下句链播) |
| t7_retry ✦ | 答错可以消耗机会重听。双击,可以随时重听。 | T7 第二句 |
| t_skip ✦ | 跳过教学,直接开始。 | 教学期间下滑跳过确认 |
2. 轮次播报(✦ 21 句整句)
| id | 台词 |
|---|---|
| round_01 … round_20 ✦ | 第一轮,听好了。/第二轮,听好了。/第三轮,听好了。/第四轮,听好了。/第五轮,听好了。/第六轮,听好了。/第七轮,听好了。/第八轮,听好了。/第九轮,听好了。/第十轮,听好了。/第十一轮,听好了。/第十二轮,听好了。/第十三轮,听好了。/第十四轮,听好了。/第十五轮,听好了。/第十六轮,听好了。/第十七轮,听好了。/第十八轮,听好了。/第十九轮,听好了。/第二十轮,听好了。 |
| round_more ✦ | 新的一轮,听好了。 |
3. 成绩播报(✦ 6 段整句)
| id | 台词 | 区间(供代码映射,score=完成轮数) |
|---|---|---|
| score_band1 ✦ | 一轮都没坚持下来。别灰心。 | score = 0 |
| score_band2 ✦ | 你坚持了三轮以内。 | 1–3 |
| score_band3 ✦ | 你坚持了五轮左右。 | 4–6 |
| score_band4 ✦ | 你坚持了将近十轮。 | 7–9 |
| score_band5 ✦ | 你坚持了十轮以上,很厉害。 | 10–14 |
| score_band6 ✦ | 你坚持了十五轮以上,大师级! | ≥ 15 |
4. 流程句(✦/●)
| id | 台词 | 用途 |
|---|---|---|
| your_turn ● | 轮到你了。 | 第 1 轮复现阶段(之后轮次仅震动) |
| chances_out ✦ | 重听机会用完了,小心。 | 机会归 0 时提示 |
| retry_use ✦ | 错了。用一次机会,再听一遍。 | 答错且有机会(自动重播序列) |
| relisten ✦ | 再听一遍。 | 输入阶段双击主动重听(耗机会) |
| replay ● | 单击屏幕,再来一局。 | 结算 |
| rules_prompt ✦ | 上滑,重听规则。下滑,打开菜单。 | 结算/非输入阶段提示 |
| rules ✦ | 上行音,向上滑。下行音,向下滑。左边的音,向左滑。右边的音,向右滑。一声轻响,单击。两声轻响,双击。 | 规则重听句(上滑) |
| gameover ● | 游戏结束。 | 答错且无机会(sfx/gameover 之后链播成绩) |
5. 反馈短句(● 文本不变重录)
| id | 台词 | 用途 |
|---|---|---|
| correct ● | 答对了! | 整轮复现成功(每 4 轮播一次,其余仅震动) |
| wrong ● | 错了。 | 答错(retry_use 已含"错了",此句供无机会外的即时反馈,可选) |
| chance_plus ✦ | 机会加一。 | 每过 4 轮机会 +1 |
| new_record ● | 新纪录! | 破纪录 |
6. 菜单(✦)
| id | 台词 |
|---|---|
| menu_open ✦ | 菜单。 |
| menu_restart ✦ | 重新开始。 |
| menu_home ✦ | 回大厅。 |
| menu_back ✦ | 返回游戏。 |
7. simon 删除清单(✗ 文件已移除,代码禁止引用)
- 数字拼接件(14):
di lun num_shi num_0 num_1 num_2 num_3 num_4 num_5 num_6 num_7 num_8 num_9 score_pre best_pre→ 由round_*/score_band*整句替代 - 旧教学连播(9):
intro teach_up teach_down teach_left teach_right teach_tap teach_doubletap teach_end listen→ 由交互式教学t*_*替代 - sfx(3):
sfx/correct sfx/wrong sfx/newrecord已删除(反馈改震动);sfx/gameover与 6 个tone_*保留 - 平铺目录
audio/voice/下的 simon 旧文件全部移除
三、escape 环境音(sfx,非语音)
| id | 状态 | 内容 |
|---|---|---|
| amb_drip | 保留 | 起点 (1,1):单一滴水 |
| amb_wind | 保留 | 空房轮换:风声弱化版 |
| amb_hum | 保留 | 空房轮换:远处嗡鸣弱化版 |
| amb_storage ✦ | 新增 | 储物间:滴水 + 金属杂物轻响 |
| amb_cabinet ✦ | 新增 | 铁柜房:嗡鸣 + 铁皮共振 |
| amb_power ✦ | 新增 | 电箱房:电流嗡鸣 + 偶尔火花 |
| amb_gate ✦ | 新增 | 大门:风声 + 门外空旷感 |
| amb_gate_live ✦ | 新增 | 大门通电后:风声 + 电流声 |
| ui_deny ✗ | 删除 | 反馈提示音退役(改震动) |