15b · 《不眠频率》(radio) 语音台词表(voice ids,录音依据)
26 号对齐(资产清单,不是交互宪法)
- 交互与新手手势以 26-audio-interaction-playbook.md 和对应游戏正文为准。
- 本表仍是 TTS id 事实源的登记副本(生成以
tools/gen_voice_dual.py 为准)。含「双击重听 / 双击使用 / 双击格挡 / 单击循环菜单」的句子 停用或按游戏正文重录。
- 写作:指令 ≤12 字,短句档 ≤6 字,叙事 ≤25 字;每句标
critical / content / hint / feedback。游戏主动提示不得原样重复;重听前加「再说一遍:」。
- 键盘变体:新手期回车当空格(单击)。删除「按回车=重听」类旧口径,或仅在阶段 3 解锁双击后启用。
- 共用新句见 14-guide-layer.md §7(
sys_first_tap 等)。各游戏 _full / _short 在游戏正文设计单里点名,补进本表后再进生成脚本。
给音频总监的录制说明
- 双性别组(主播 HOST + 导播/系统 PROD,103 句):落
web/radio/audio/voice/female|male/<id>.{ogg,m4a},两性别 id 集合完全一致。
- HOST(主播=玩家):female =
Serena,instruct 常量 温暖清晰的年轻女声,深夜电台主播,沉稳亲切,不甜腻;male = Uncle_Fu,instruct 常量 低沉温和的中年男声,深夜电台主播,沉稳亲切,有磁性。
- PROD(导播/系统音/向导 gd_*):female =
Vivian,instruct 常量 贴近耳机的低语女声,年轻电台导播,冷静克制;male = Dylan,instruct 常量 贴近耳机的低语男声,年轻电台导播,冷静克制。
- 区分度设计:主播(播音腔,对外广播)与导播(贴耳低语,只进你耳机)共用 speaker 池但不同 speaker 配对——female 侧主播 Serena / 导播 Vivian、male 侧主播 Uncle_Fu / 导播 Dylan,同场景高频对话的两者永不同 speaker。
- NPC 平铺组(29 句):单音色、不做双性别,平铺落
web/radio/audio/voice/<id>.{ogg,m4a}(引擎平铺回退命中),转码时按 §通话滤波 加带通。NPC 共 5 人(≤5 约束),同一角色 speaker+instruct 恒定,区分度风险逐个标注:
| 角色 |
speaker |
instruct 常量 |
区分度风险 |
| 老周(75 岁走丢老人) |
Uncle_Fu |
苍老沙哑的男声,七十五岁,疲惫害怕,带着雨夜的颤抖 |
中:与 male 主播同 speaker,靠年龄感 instruct + 电话滤波(500-2800Hz)区分,请试听确认 |
| 小鹿(想退票的年轻人) |
Serena |
年轻女声,倔强,带着哭腔,疲惫 |
中:与 female 主播同 speaker,靠哭腔 instruct + 电话滤波区分,请试听确认 |
| 糖糖(失眠的孩子) |
Vivian |
稚嫩童声,八岁小女孩,困倦,胆怯 |
低:与 female 导播同 speaker,童声 vs 成年低语,且从不同场 |
| 陈姐(争吵的夫妻·妻) |
Vivian |
疲惫沙哑的中年女声,四十五岁,强撑着平静 |
低:与糖糖/导播同 speaker 不同 instruct,三者从不同场,请试听确认 |
| 老韩(雨夜司机) |
Eric |
沙哑粗犷的中年男声,货车司机,困倦强撑 |
低:male 侧唯一 Eric |
- 通话滤波(转码侧):NPC 全部走带通(参数见 15-radio.md §6.2:老周 500-2800 / 小鹿 400-3400 / 糖糖 450-3000 / 陈姐 420-3100 / 老韩 300-3400,均 + 轻压缩);HOST/PROD 不滤波。试听不可读的句子回退未滤波原声(宁窄勿脏)。
- 称呼规则:来电者对主播的称呼一律中性(「主播」「您」),全表禁用「闺女/小哥/叔叔/阿姨/大姐头」类性别化称呼(主播性别随用户设置变化);「大姐/姑娘」仅可作来电者的自称或被导播描述。
- 数字规避:序号/口碑全部分档整句(prog_c1..c5、rep_*);句内数字(十一点半、三公里、四十分钟前)写死在整句里,禁止运行时拼接。
- 禁语速词:instruct 不含任何语速描述(引擎 SoundTouch 变速);NPC 句靠短句+逗号停顿实现「语速放缓」听感。
- 管线:
tools/gen_voice_dual.py 照录(SPEAKERS 表需新增 radio 行);多音字自查见文末注记。
G0 组 · 系统/向导/状态(PROD 双性别 ×24)
| id |
台词全文 |
触发 |
gd_brief |
单击继续节目。请选择的时候,向左或向右滑。 |
开场链最前(full 档,F8 先例) |
gd_continue |
单击屏幕,继续。 |
叙事链末静默看门狗第 1 级(full 25s / standard 13s) |
gd_again |
还在吗?单击继续。 |
看门狗第 2 级(50s / 30s),新句不逐字重播 |
gd_invalid |
这个手势,直播间里用不上。 |
无效手势(error 震,idle-only,同局限次) |
gd_ring1 |
热线在闪。单击,接听。 |
RING 静默 10s(第 1 级) |
gd_ring2 |
灯还亮着,听众在等。单击,接听。 |
RING 静默 25s(第 2 级,必须与第 1 级不同句) |
sys_help |
单击继续,双击重新听。上滑听状态,下滑开菜单。请选择时,左右滑。 |
上滑帮助 / 菜单内上滑 |
sys_menu |
菜单。单击切换选项,双击确认。 |
下滑呼出模态菜单 |
sys_menu_resume |
回到直播。 |
菜单项 |
sys_menu_restart |
重新开始今晚。 |
菜单项 |
sys_menu_lobby |
保存并回大厅。 |
菜单项(确认后跳转前播) |
sys_settings |
音色、语速、背景音乐,请回大厅修改。 |
菜单内设置提示 |
sys_skip |
想跳过这句,单击就行。 |
开场每局一次(skip_hint 先例) |
sys_continue_ask |
检测到你的夜班记录。单击继续上次,右滑开始新的夜晚。 |
有存档进游戏 |
sys_new_night |
新的夜晚,开始了。 |
新夜班开始 / 菜单重开 |
sys_saved |
进度已保存。 |
存档写入后 |
prog_c1 |
现在是今晚第一通电话。 |
上滑状态链(按当前通号选播) |
prog_c2 |
现在是今晚第二通电话。 |
同上 |
prog_c3 |
现在是今晚第三通电话。 |
同上 |
prog_c4 |
现在是今晚第四通电话。 |
同上 |
prog_c5 |
现在是今晚第五通电话。 |
同上 |
rep_high |
今晚的口碑,在听众里立住了。 |
口碑跨入 ≥5 档(BRIDGE 被动播报) |
rep_mid |
今晚的口碑,不好不坏。 |
口碑回落 1-4 档 |
rep_low |
今晚的口碑,还没立起来。 |
口碑 ≤0 档(零起步语义,R2 F2 改词:rep=0 开播前不再读成「砸了」;附 warning 震动) |
G1 组 · 开场(双性别 ×4)
| id |
声部 |
台词全文 |
触发 |
b_open |
主播 |
午夜零点,红灯亮起。欢迎回到《今夜不眠》。 |
INTRO(配 sfx/onair_sting) |
b_rain |
主播 |
雨下了一整晚。热线灯,马上就要亮了。 |
INTRO |
b_rule |
导播 |
台里的规矩就一条:先接住人,再接电话。 |
INTRO(一句规矩,P4) |
b_goal |
导播 |
今晚五通电话。说什么话,由你决定。 |
INTRO,随后第一声铃 |
C1 组 · 第一通·老周(走丢的老人)(双性别 13 + 老周平铺 7 = 20)
| id |
声部 |
台词全文 |
触发 |
z1_ring_in |
导播 |
一线来电。七十多岁,雨夜,走丢了。 |
接听后线路引入(配 line_connect) |
z1_a |
老周 |
主播……我,我找不到回家的路了。 |
通话主干 |
z1_b |
老周 |
雨太大了。我本来,只想买副老花镜。 |
通话主干(垫 amb_rain_city) |
p1 |
导播 |
老人在发抖。向左滑,陪他哼那首老歌。向右滑,冷静问他路口的路牌。 |
抉择提示(播完即可选) |
z1_song |
主播 |
大爷别急,这首歌我也会。咱们一句一句来。 |
p1 左(称呼「大爷」指对方,中性合规) |
z1_songo |
老周 |
对,对!路口修车铺,天天放这首! |
p1 左·反应(正反馈:声音稳住) |
z1_sdone |
导播 |
他稳住了。老歌,比路牌管用。 |
p1 左·收 |
z1_ask |
主播 |
大爷,路口有什么招牌?念一个给我听听。 |
p1 右 |
z1_asko |
老周 |
招牌……雨糊住了,我眼花,看不清啊…… |
p1 右·反应(慌) |
z1_adone |
导播 |
他慌了。先接住情绪,再走流程。 |
p1 右·收(即时纠偏,非归因) |
p2 |
导播 |
雨声更密了。向左滑,留在原地陪他等巡逻队。向右滑,转接派出所。 |
抉择提示 |
z1_stay |
主播 |
哪儿也不去。我陪你,这首歌还长着呢。 |
p2 左 |
z1_stayo |
老周 |
好,好。有人说话,我就不怕了。 |
p2 左·反应 |
z1_staye |
导播 |
十五分钟后,巡逻灯停在路口。全城听见老人笑了。 |
p2 左·收(数字整句内嵌) |
z1_pol |
主播 |
大爷,我把您转给派出所,他们马上就到。 |
p2 右(p1=左 时) |
z1_polo |
老周 |
好,好。谢谢你啊,谢谢。 |
p2 右·反应 |
z1_pole |
导播 |
转接完成,地址报得清。干净利落。 |
p2 右·收(p1=左 时) |
z1_bad |
老周 |
说不清……我真是,说不清了…… |
p2 右(仅 p1=右 时,替代 z1_polo/z1_pole 前段) |
z1_bade |
导播 |
地址没报清就转接,雨又大。这通砸了。先稳人,再办事。 |
归因句(真话律:指向玩家实际两连选) |
z1_ok1 |
导播 |
就这么接。记住这个手感。 |
首通成功收尾确认(全局一次,成功后无其他教学) |
C2 组 · 第二通·小鹿(想退票的年轻人)(双性别 6 + 小鹿平铺 4 = 10)
| id |
声部 |
台词全文 |
触发 |
l1_in |
导播 |
二线来电。姑娘,声音很轻,像怕吵到谁。 |
接听引入(「姑娘」描述来电者,合规) |
l1_a |
小鹿 |
主播,退票窗口十一点半就关了。我站这儿半小时了。 |
通话主干(垫 amb_station) |
l1_b |
小鹿 |
票是回去看我妈的。可我试镜又黄了,两手空空…… |
通话主干 |
p3 |
导播 |
向左滑,告诉她这趟车值得上。向右滑,把选择还给她。 |
抉择提示 |
l1_go |
主播 |
你妈等的不是奖杯,是你进门喊的那声妈。 |
p3 左 |
l1_goo |
小鹿 |
呜……嗯。不退了,我现在就去检票。谢谢您。 |
p3 左·反应 |
l1_goe |
导播 |
二线收工。这句话,值一个头条。 |
p3 左·收 |
l1_free |
主播 |
退不退,都是你的自由。夜还长,慢慢想。 |
p3 右 |
l1_freeo |
小鹿 |
嗯……我再想想。窗口要关了,我先过去了。 |
p3 右·反应 |
l1_freee |
导播 |
她走了。没上车,也没退票。年轻人的夜,长了点。 |
p3 右·收 |
C3 组 · 第三通·糖糖(失眠的孩子)(双性别 10 + 糖糖平铺 6 = 16)
| id |
声部 |
台词全文 |
触发 |
k1_in |
导播 |
三线来电。听呼吸,是个小孩。 |
接听引入 |
k1_a |
糖糖 |
喂……有人吗?我睡不着。 |
通话主干(垫 amb_kid_room) |
k1_b |
糖糖 |
家里灯关了。可是楼下,一直有声音。 |
通话主干(配 sfx/arg_muffled 线索音) |
p4 |
导播 |
向左滑,唱一段摇篮曲哄她睡。向右滑,轻轻问她怎么了。 |
抉择提示 |
k1_lull |
主播 |
闭上眼睛。风把云朵盖在被子上,月亮替你值夜班。 |
p4 左(错过线索路线) |
k1_lullo |
糖糖 |
月亮也睡了……那我也睡。 |
p4 左·反应 |
k1_lulle |
导播 |
睡着了。可你没听见,她在怕什么。 |
p4 左·收(诚实复盘,非惩罚) |
k1_ask |
主播 |
睡不着的时候,心里是不是装着事?说给我听听。 |
p4 右(置 heardArgument=true) |
k1_asko |
糖糖 |
爸爸妈妈摔门了。是不是……我做错了什么呀。 |
p4 右·反应 |
p5 |
导播 |
孩子的声音在抖。向左滑,告诉她这不是她的错。向右滑,答应她明天都会好。 |
抉择提示(仅 p4=右 可达) |
k1_truth |
主播 |
糖糖,记住,大人的事,不是小孩的错。一个字都不是。 |
p5 左 |
k1_trutho |
糖糖 |
嗯……那我睡了。他们明天,会一起给我切蛋糕吗? |
p5 左·反应 |
k1_truthe |
导播 |
蛋糕。记下来——四线的来电,可能跟这个家有关。 |
p5 左·收(flag 预告) |
k1_lie |
主播 |
睡吧。明天一睁眼,什么都会好起来的。 |
p5 右(善意谎言) |
k1_lieo |
糖糖 |
真的吗?拉钩。晚安…… |
p5 右·反应 |
k1_liee |
导播 |
你许了个兑不了的现。孩子睡了,谎留下了。 |
p5 右·收(诚实复盘) |
C4 组 · 第四通·陈姐(争吵的夫妻)(双性别 13 + 陈姐平铺 7 = 20)
| id |
声部 |
台词全文 |
触发 |
w1_in |
导播 |
四线来电。户外风声大,是位大姐。 |
接听引入(垫 amb_street_rain) |
w1_a |
陈姐 |
主播,我就想找个人说说。我家那口子,今晚要出远门的活儿。 |
通话主干 |
w1_b |
陈姐 |
明天孩子生日!蛋糕都订好了,他人要今晚走! |
通话主干 |
p6 |
导播 |
摔门声你听见了。向左滑,替孩子给她带句话。向右滑,劝她回家把话说开。 |
抉择提示(固定文本,两条件路线共用) |
w1_say |
主播 |
四十分钟前,有个孩子问我们:爸妈摔门,是不是她的错。 |
p6 左·条件 heardArgument=true |
w1_sayo |
陈姐 |
什么?她还没睡?这么晚了,她还醒着? |
w1_say·反应 |
w1_saye |
导播 |
她攥着电话,很久没出声。风都停了。 |
w1_say·收 |
w1_say2 |
主播 |
今天有位小朋友,还在等爸妈回家切蛋糕。 |
p6 左·条件 heardArgument=false |
w1_say2o |
陈姐 |
蛋糕……是他订的。他嘴上不说,心里都记着。 |
w1_say2·反应 |
w1_say2e |
导播 |
话递到了。就差最后一脚。 |
w1_say2·收 |
p7 |
导播 |
她的呼吸平了。向左滑,留在直播里,让全城等这个门铃。向右滑,换垫乐,私下陪她说完。 |
抉择提示(仅 p6=左 可达) |
w1_air |
主播 |
陈姐,别挂。让他接电话——全城都在听。 |
p7 左(留在直播) |
w1_airo |
陈姐 |
喂!回来吧!蛋糕要化了,孩子等着呢! |
p7 左·反应(对电话那头喊) |
w1_aire |
导播 |
电话那头,传来跑步声。今晚的高光时刻。 |
p7 左·收 |
w1_priv |
主播 |
这里只有我们俩了。想说就说,想哭就哭。 |
p7 右(换垫乐私聊) |
w1_privq |
陈姐 |
呜……其实他订完蛋糕就跟我道歉了。是我,把门摔得太响。 |
p7 右·反应 |
w1_prive |
导播 |
灯牌是你亲手关的,故事还是完整的。稳。 |
p7 右·收 |
w1_home |
主播 |
吵架隔着电话吵不赢。回家吧,蛋糕别放到坏了。 |
p6 右(本通结束,无 p7) |
w1_homeo |
陈姐 |
嗯……我这就往回走。谢谢你,听我瞎嚷嚷。 |
p6 右·反应 |
w1_homee |
导播 |
她往回走了。成不成,看他们自己的了。 |
p6 右·收 |
C5 组 · 第五通·老韩(雨夜司机·高潮)(双性别 8 + 老韩平铺 5 = 13)
| id |
声部 |
台词全文 |
触发 |
h1_in |
导播 |
五线来电。引擎声没停过——他在开车! |
接听引入(垫 amb_cab) |
h1_a |
老韩 |
主播,别挂。陪我说话,我的眼皮,沉得很。 |
通话主干 |
h1_b |
老韩 |
跑完这趟,闺女的学费就齐了。雨刷都快刮不动了。 |
通话主干(「闺女」指其女儿,合规) |
p8 |
导播 |
方向盘比话筒危险。向左滑,陪他聊聊闺女。向右滑,让他立刻进服务区。 |
抉择提示 |
h1_talk |
主播 |
说说她。开学第一天,她跟你说的头一句话,是什么? |
p8 左 |
h1_talko |
老韩 |
她说,爸,我在学校给你赚了朵小红花。哈哈,哈哈…… |
p8 左·反应 |
h1_danger |
导播 |
车道偏了——听! |
危机拍(前 2s 起 brake_screech 渐强 + danger 签名同窗) |
h1_dango |
老韩 |
嘶——好险!前车急刹,我擦着护栏过去了。彻底醒了! |
危机拍·化解 |
h1_talke |
导播 |
吓醒的,也算醒。这一趟,聊到家。 |
p8 左·收 |
h1_stop |
主播 |
听我的,前面三公里有服务区。学费急,命更急。 |
p8 右 |
h1_stopo |
老韩 |
行,听你的。进了服务区,我给你们放首歌听。 |
p8 右·反应 |
h1_stope |
导播 |
他下了高速。单子黄了,人齐了。 |
p8 右·收 |
h1_echo |
导播 |
对了。头通电话那位大爷,就是这片被巡逻队找到的。这城市的夜,是接着的。 |
插播回响(条件 bond_zhou=true,queue) |
D9 组 · 签收抉择(心结)(双性别 6)
| id |
声部 |
台词全文 |
触发 |
g9_in |
导播 |
五线收工。垫乐起——零点档,还剩最后一段。 |
C5 后 BRIDGE→签收(配 bgm/bridge) |
p9 |
导播 |
留言机红灯在闪,是老主播三年前没播完的那句晚安。向左滑,替他播出去。向右滑,照常收播。 |
抉择提示(39 字,全表最长句) |
d9_face |
主播 |
师父,三年了。这句晚安,我替您播。各位,晚安。 |
p9 左(knot=解;配 tape_static) |
d9_facee |
导播 |
带子里其实只有电流声。但空着的那一秒,你说满了。 |
p9 左·收(老主播不配音,电流声留白) |
d9_avoid |
主播 |
各位,今晚到这里。明晚零点,今夜不眠,不见不散。 |
p9 右 |
d9_avoide |
导播 |
留言机的红灯,又多亮了一夜。 |
p9 右·收(开环钩子) |
EP 组 · 结局与尾声回响(双性别 19;结局 8 + 回响 11)
| id |
声部 |
台词全文 |
触发 |
e1_a |
主播 |
天亮了,热线灯还亮着。你们的晚安,是这座城市的心跳。 |
结局 e1(rep≥5 且直面)主句 |
e1_b |
主播 |
这把话筒,我总算接得住了。明晚零点,接着不眠。 |
e1 收(钩子) |
e2_a |
主播 |
今晚的热线烧得发烫。全城的失眠者,都被接住了。 |
结局 e2(rep≥5 且回避)主句 |
e2_b |
主播 |
只是路过留言机的时候,你还是没敢看它。红灯灭得很慢。 |
e2 收(钩子) |
e3_a |
主播 |
口碑掉了一夜。可那句迟到三年的晚安,今晚说出去了。 |
结局 e3(rep<5 且直面)主句 |
e3_b |
主播 |
一个人的频道,也是频道。师父,收到了吗? |
e3 收(钩子) |
e4_a |
主播 |
今夜不眠,静音收播。有的夜班,谁也接不住谁。 |
结局 e4(rep<5 且回避)主句 |
e4_b |
主播 |
留言机还在闪。你没看它,它也没怪你。明晚再说吧。 |
e4 收(钩子;含 e4 复盘,不另配归因句) |
ep_lead |
导播 |
收播了。导播间替你记了一笔账——今晚的人都怎样了。 |
结局链后尾声引入 |
ep_zhou_ok |
导播 |
老周:孙子替他买了老花镜。回信说,谢谢那首歌。 |
尾声(bond_zhou=1) |
ep_zhou_no |
导播 |
老周在便利店屋檐下坐到天亮。没出事,也没人听见他的歌。 |
尾声(bond_zhou=0) |
ep_deer_ok |
导播 |
小鹿上车了。她妈后来打电话说,那声妈,比奖杯值钱。 |
尾声(bond_deer=1) |
ep_deer_no |
导播 |
小鹿退了票。检票口的灯,记得那趟没上成的车。 |
尾声(bond_deer=0) |
ep_kid_ok |
导播 |
糖糖家的门,这个月没再摔过。她说这是主播魔法。 |
尾声(bond_kid=1) |
ep_kid_no |
导播 |
糖糖后来又打来过一次。还是那句:楼下在吵。 |
尾声(bond_kid=0) |
ep_wife_ok |
导播 |
陈姐家切了蛋糕。那句「回来吧」,是我这晚听过最好的声音。 |
尾声(bond_wife=1) |
ep_wife_no |
导播 |
陈姐在公车站坐到了末班车。那通电话,成了没寄出的信。 |
尾声(bond_wife=0) |
ep_han_ok |
导播 |
老韩到家了。后视镜上,多了朵小红花。 |
尾声(bond_han=1) |
ep_han_no |
导播 |
老韩在服务区睡了一觉。学费齐了,那首歌没放成。 |
尾声(bond_han=0) |
合计:132 句(GPU 预算 ≤170 ✓)
- 双性别 103 句(HOST 21 + PROD 82)×2 性别 = 206 文件;
- NPC 平铺 29 句(老周 7 / 小鹿 4 / 糖糖 6 / 陈姐 7 / 老韩 5)= 29 文件;
- 合计 235 条音频 ×2 格式(ogg+m4a)= 470 文件。
- 每结局专属台词齐备:e1/e2/e3/e4 各 2 句(ep 组前 8 行)+ 尾声回响 11 句共用。
- 每局实走抉择 8-9 个(p5 仅 p4=右、p7 仅 p6=左 可达),抉择提示 p1..p9 共 9 个。
多音字 / 发音风险自查注记
| 风险词 |
处理 |
| 重听 |
全表写「重新听」(sys_help),无「重听」字样 |
| 切(qiē/qiè) |
「切垫乐」写「换垫乐」(p7);「切蛋糕」「切了蛋糕」为正确常用读法,保留 |
| 挣(zhēng/zhèng) |
「挣钱」写「赚了朵小红花」(h1_talko) |
| 巷(xiàng/hàng) |
全表不用「巷」,写「路口」 |
| 答录机(dā lù jī) |
全表用「留言机」,规避 |
| 颤(chàn) |
台词侧用「发抖」(z1_a 触发/语境、instruct 描述不受影响,instruct 不进语音) |
| 哄(hōng/hǒng) |
「哄她睡」为 hǒng 常用读法,保留,试听确认 |
| 宿/血/露/降/率/传(zhuàn 义) |
全表未使用 |
| 了(le/liǎo)、还(hái/huán)、得(de/děi) |
常规句式常见读法,逐句人工试听项(z1_staye「听见了」、l1_goe 等) |
| 数字 |
句内数字全部写死(十一点半/十五分钟/三公里/四十分钟前/零点),序号用分档整句(prog_c1..c5) |
台词侧自查
- 单句 ≤40 字:全表最长 = p9(37 字),次长 sys_help(26 字)✓;NPC 句平均 ≤18 字(P4 语速感靠短句+逗号,不用 instruct 语速词)✓。
- NPC ≤5 人、speaker+instruct 恒定、区分度风险逐个标注 ✓。
- 称呼合规:来电者对主播只用「主播/您/谢谢你」,性别化称呼仅指向来电者自身或第三方 ✓。
- 每个结局(e1..e4)专属主句+钩子各 2 句齐备,尾声救/错过双线齐备 ✓。
- 归因真话律:负向收尾句(z1_bade/k1_lulle/k1_liee/ep_*_no/e4_b)全部指向玩家实际选择,无假归因句 ✓。
- 向导 gd_* 6 句(gd_brief/gd_continue/gd_again/gd_invalid/gd_ring1/gd_ring2)符合 14 号 §6 台词规范(一句一义、无重复句式、单句 ≤15 字)✓。
键盘变体(key,P1 输入平权路线 a,18 句)
「生效输入模式=键盘」(settings.input=key,或 auto 且键盘在跟/纯桌面初始判定,
web/engine/gesture.js inputMode())时,引擎 voice 候选链前置加载
web/radio/audio/voice/<gender>/key/<id>.{ogg,m4a},变体缺失回退主资产——触屏措辞零改动。
措辞规范(02-input-parity.md §4.3 路线 a + P1 裁定):向左滑→按左方向键(四向同理,
WASD 不进台词);单击/轻触屏幕→按空格;双击→按回车;按住/长按→按住空格;
复合短语(左右滑→左右方向键、滑动→方向键)按语义等价展开;只改操作词,其余
内容一字不动,不新增「重」类多音字。本表与 tools/gen_voice_dual.py 的
KEY_LINES 逐字一致(两表一致铁律:改一处必改另一处)。
资产:×2 性别 = 18×2 条、×2 格式 = 18×4 文件;管线 gen_voice_dual.py --only-variants
生成 → --convert 落盘,终检 tools/check_all_assets.py(key 两性别一致且 ⊆ 主集)。
| id |
键盘台词全文(触屏原句见本表上方对应 id) |
gd_brief |
按空格继续节目。请选择的时候,按左或右方向键。 |
gd_continue |
按空格,继续。 |
gd_again |
还在吗?按空格继续。 |
gd_ring1 |
热线在闪。按空格,接听。 |
gd_ring2 |
灯还亮着,听众在等。按空格,接听。 |
sys_help |
按空格继续,按回车重新听。按上方向键听状态,按下方向键开菜单。请选择时,左右方向键。 |
sys_menu |
菜单。按空格切换选项,按回车确认。 |
sys_skip |
想跳过这句,按空格就行。 |
sys_continue_ask |
检测到你的夜班记录。按空格继续上次,按右方向键开始新的夜晚。 |
p1 |
老人在发抖。按左方向键,陪他哼那首老歌。按右方向键,冷静问他路口的路牌。 |
p2 |
雨声更密了。按左方向键,留在原地陪他等巡逻队。按右方向键,转接派出所。 |
p3 |
按左方向键,告诉她这趟车值得上。按右方向键,把选择还给她。 |
p4 |
按左方向键,唱一段摇篮曲哄她睡。按右方向键,轻轻问她怎么了。 |
p5 |
孩子的声音在抖。按左方向键,告诉她这不是她的错。按右方向键,答应她明天都会好。 |
p6 |
摔门声你听见了。按左方向键,替孩子给她带句话。按右方向键,劝她回家把话说开。 |
p7 |
她的呼吸平了。按左方向键,留在直播里,让全城等这个门铃。按右方向键,换垫乐,私下陪她说完。 |
p8 |
方向盘比话筒危险。按左方向键,陪他聊聊闺女。按右方向键,让他立刻进服务区。 |
p9 |
留言机红灯在闪,是老主播三年前没播完的那句晚安。按左方向键,替他播出去。按右方向键,照常收播。 |
R4 · 26 号深度重构(设计单 26-apply-radio.md;施工台词清单 tools/voice_lines_26/radio.md)
交互权威 26 号手册。本轮开场第一句改 critical 指令「点一下屏幕。」(b_rule/gd_brief
规矩念白废除)、等待点三档提示统一 sys_hint_* / 主动重听「再说一遍:」前缀、
手势阶梯三阶段教学句、菜单改左右滑换项 + 单击确认(00 §5.4)、旧「双击重听 /
单击循环菜单」口径全部废止。增量清单原文 = tools/voice_lines_26/radio.md
(生成并表时逐字并入 tools/gen_voice_dual.py RADIO_PROD_LINES,两表一致铁律;
web/harness/voice_text.json radio 主表已同步,149 条)。类别:critical / content /
hint / feedback。系统/交互层句子全部走 PROD 导播组(与既有 sys_skip 一致)。
新增(25 句 × 双性别,PROD 组;其中 4 条由引擎播出但资产照落本目录):
| id |
台词全文 |
类别 |
触发 |
sys_first_tap |
点一下屏幕。 |
critical |
冷启动第一句(≤3s,不可打断) |
sys_first_tap_short |
点一下。 |
hint |
intro 等待点 _short 档 |
sys_ring_teach |
热线灯亮了。点一下,接听。 |
content |
RING 状态声首现教学(全局一次) |
sys_turn_teach |
听到这个声音,就是轮到你了。 |
content |
「轮到你」状态声首现教学(挂 z1_a 链尾,全局一次;与 storyline 同文案) |
sys_praise |
对。 |
feedback |
首抉择链头肯定句(原则 11,≤4 字) |
sys_hint_continue_full |
单击,继续。 |
hint |
continue 等待点 full 档 |
sys_hint_continue_short |
单击。 |
hint |
continue/settle 等待点 _short 档 |
sys_hint_choice_short |
左右滑,选。 |
hint |
choice 等待点 _short 档 |
sys_hint_ring_short |
点一下,接听。 |
hint |
ring 等待点 _short 档(18s) |
sys_hint_again_full |
单击,重新开始。 |
hint |
settle 等待点 full 档 / 结算滑动解释句 |
sys_hint_menu_short |
左右滑,点一下。 |
hint |
menu 等待点 _short 档 |
sys_only_choice |
现在,只要左右滑。 |
hint |
迷茫 L2 抉择点缩小选择 |
sys_demo_continue |
听我做一次。 |
hint |
迷茫 L3 演示前缀(intro/ring/continue) |
sys_demo_choice |
左右滑,都可以。现在你来。 |
hint |
迷茫 L3 抉择点演示(不替玩家选) |
sys_say_again |
再说一遍: |
hint |
主动重听前缀(engine/hints.js 播出,全项目一句) |
sys_unlock_up |
想知道自己在哪,就向上滑。 |
content |
手势阶梯阶段 1 教学句(挂首抉择后链尾;engine/novice.js teachLine 播出) |
sys_unlock_down |
向下滑,可以打开菜单。 |
content |
阶段 2 教学句(挂首局结局链尾;engine/novice.js) |
sys_unlock_dt |
没听清,就双击,再听一遍。 |
content |
阶段 3 教学句(engine/novice.js) |
menu_help |
左右滑换项,点一下确认。 |
content |
菜单说明(menu 等待点 full 档 + 菜单内上滑重听) |
status_choice |
正在抉择。左右滑。 |
hint |
抉择等待点上滑「我在哪」 |
inv_nosel |
现在不用选。单击继续。 |
feedback |
非抉择点滑动首次解释(原则 7) |
inv_ring |
现在不用选。点一下,接听。 |
feedback |
RING 滑动首次解释 |
inv_generic |
这个操作用不上。单击继续。 |
feedback |
其余无效格子 / 新手期长按首次解释 |
inv_up_locked |
上滑还没解锁。先单击继续。 |
feedback |
up 未解锁首次解释 |
inv_down_locked |
菜单,玩完一局解锁。单击继续。 |
feedback |
down 未解锁首次解释 |
修改(2 句,id 不变重录):gd_ring1「热线在闪。点一下,接听。」(原「单击,接听」,
动作词与 sys_ring_teach 统一);sys_menu「菜单。左右滑换项,点一下确认。」(原
「单击切换选项,双击确认」= 旧菜单口径,00 §5.4 废止)。
删除(8 句):gd_brief / gd_continue / gd_again / gd_invalid / gd_ring2
(向导层让位三档提示 + inv_* 首次解释,原则 7/9)、sys_help(全局帮助溢出废止,
「双击重新听」旧口径)、b_rule(开场规矩念白,§4.10 零规则念白)、sys_saved
(「保存并回大厅」由 sys_menu_lobby 一句承担)。上方 G0 / G1 组表中对应行按本节
口径废止;合计 132 − 8 + 25 = 149 句(双性别 120 ×2 + NPC 29)。
键盘变体:新增 21 条 + sys_menu 重录(「菜单。左右方向键换项,按空格确认。」);
gd_ring1 变体沿用不重录(现变体不含「单击」字样);gd_brief / gd_continue /
gd_again / gd_ring2 / sys_help 变体随主句停用。多音字口径维持全表无「重听」
(一律「重新听」/「再听一遍」)。