Files
SoundGame/research/new8/bridge/round1/live-player.md
T
xsl 4b39ae2e49 feat(new8/batch3-4): cipher/teahouse/keeper/bridge 全套交付——new8 八款全部可交付收官
四泳道并行全流水线(资产→开发→测试→玩家迭代闭环),双双 R1-R2 连续达标裁定可交付:
- cipher《暗码》223 断言:摩尔斯解码嵌叙事/四结局矩阵/暴露度逐NIGHT验算/三层兜底;R2 三修(链首标记音/预警震/结局计数句+4句补录)4/4 全满分档
- teahouse《深夜茶馆》205 断言:泡茶时机窗/经济逐晚对账/多晚弧线;连续 2 轮 4/4 愿意玩 P0=0
- keeper《守塔人》257 断言:时空签名教学-兑现/插叙触发回返/trust×truth 档位/4结局;R2 F1/F2 坐实(震型豁免/首播跳句锁)4/4
- bridge《星环舰长》336 断言:巡检节奏逐毫秒/危机×系统态矩阵/仲裁7场景/忠诚差分/评级验算;R1 当场修F1-F4、R2 F5 菜单顺延保护 4/4 上行

公共:index.html 四卡片+profiles.js 四桶+check_all_assets 登记(预接线)、00-program 八款进度账收账、
gen_voice_dual 四游戏段、README/HANDOVER 阵容更新(11 款)、voice_text.json 四游戏键、mureka 台账(累计$1.26/$2.00)

验证:四游戏 playtest 223/205/257/336 全绿 + guide 122/122 + 全项目 15 游戏资产终检绿
遗留:keeper 三代人声滤波人耳试听(最高优先,ASR 对滤波句失明)、bridge 音频 32MB 超软指引 2MB(压缩候选)
2026-09-14 05:48:13 +08:00

67 lines
8.7 KiB
Markdown
Raw 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.
# 《星环舰长》全拟真试玩报告 — R1 双局(认真新手 + 乱按压力)
## 基本信息
- 对象:`web/bridge/` @ localhost:8001,真头 Chromium + SenseVoice ASR 全拟真(mix.webm/events.jsonl/verdicts.json 落盘在 `web/harness/live/out/bridge-20260913180309`(局 A)与 `bridge-20260913183130`(局 B))。
- 局 A(认真新手):`voice=female, speed=normal, bgm=normal, guide=full`。录音窗 ~15.5 分钟(驱动停顿约 4-5 分钟,净玩 ≈11 分钟)。D0 巡检跟练(四状态音 2.4s 节奏实测逐毫秒的精确)→ S1 求救(错过 20s 窗→超时默认结局真话链)→ S2 陨石(超时≡硬闯)→ 修理护盾/引擎两级逐笔 → S3 海盗(超时)→ S4 辐射(超时+方位受殃落护盾实证)→ **评级 B**(score=8+1+0+0+1=10 账目可复算,功勋 7=4+3+0)。
- 局 B(乱按压力):`voice=female, speed=normal, guide=standard`。录音窗 ~15 分钟。**中断复述链实证**(局 A 半途存档 → 重进 TITLE → st_hull→st_seg→recap_go→ROUTE,无异常时跳过异常句 ✓)→ 教学 D2 驰援**窗内下令成功**(res_reward→loy_aid→doc_aid 完整)→ 决策窗内**菜单冻结实证**(menu 期倒计时零推进,关闭后续走)→ S2 修理护盾(RP 跨档双向播)→ S3/S4 连超时 → **S4 余波双危机实证**(结算后 2s 第二波陨石,绝不叠加签名)→ 余波再超时 hull 归零 → **死亡链实证**(die_intro→die_meteor[lastHit=陨石余波]→die_adv_to[超时≥2]→rep_open→rate_d→merit_2→settle_hook,三问归因全真话)→ 链锁三记乱点全吞。
- 两局合计 214 个 voice 段:A 局 OK 87 / MISMATCH 8 / TRUNCATED 3;B 局 OK 59 / 未判 46 / TRUNCATED 6 / MISMATCH 5。未判 46 条为 ASR 管道积压(局 B 与转写轮同机抢 CPU 所致,测量局限);MISMATCH 集中在 ≤8 字短句(dir_* 方位句 4 条、evt_* 类型句)——混音背景下短切片 ASR 同音误识的已知限制,事件层 TRUNCATED/SILENCE 判定不受影响。
- 全程无卡死、无死锁、无语音叠语音、零页面错误;结算链锁、菜单冻结、超时默认结局、双危机 FIFO、死亡折算全部走通。
## 局 A 叙述(认真新手,female/normal/full)
开场:t=4.8 sys_new_patrol 被掐(**P1-1:开场句被教学链顶掉**,F1 已修)→ intro_1..5 + tut_d0 五句完整(sim 0.71-1.0)→ 标题乱划期 doubletap 重听 intro 链生效(R2 裁定路径)。
D0:t=66.1 上滑 → 巡检链**逐毫秒实证**:sys_engine_ok/shield/scan/weapon 四音分别起播于 66.5/68.9/71.3/73.7(间距 2400ms±50,SYN 资产节奏精确)→ tut_all_ok「四个音都稳」→ 账目段七句(舰体/段/资源/三船员档)齐播。→ t=91.8 账目段尾句 st_doc_2 被 S1 危机检测链顶断(**A1 顶断巡检链,设计内**,尾词丢失属可接受代价)。
S1 求救(t=94.8 起):签名 sig_distress+dir_bow 尾音 → evt_distress「断续三短」→ dir_stern → cr_decide → opt_aid 预览 → gd_decide(窗半程看门狗)→ **t=127.9 超时**(驱动 latency 错过 20s 窗)→ cr_timeout→loy_ignore→doc_ignore(医师失望,真话)→ evt_dock。学期零惩罚兑现: hull/RP 无伤。
S2 陨石(t=355 起,shield 已被磨损打伤):检测链完整 → 超时 ≡ 硬闯(shield dmg → hull−2 res_bad)→ 段末 sup_none「这个岗位,眼下没人顶上」(band<2,每局一次 ✓)→ DOCK 修理护盾(wrench→rep_ok→eng_fix,RP 4→2 跨档回播 st_rp_2 ✓ 双向)。
S3 海盗(t=634 起):engine 磨损受损(alm 脉冲在场)→ 超时 → res_bad hull−2 → **st_hull_3 危急档跨档播报** → loy_rad → DOCK 修引擎(RP 3→1 跨档 st_rp_1 ✓)。
S4 辐射(t=878 起):超时 → res_hurt(hull 2→1)→ res_rad → **sys_engine_dmg 受殃实证**(方位舰尾→引擎,intro_5「哪边先遭殃」承诺兑现)→ loy_rad → REPORT:rep_open→rate_b→merit_2→settle_hook 全链完整。单击返航。
## 局 B 叙述(乱按压力,female/normal/standard)
续玩复述:局 A 半途存档(B v1 被停)→ 本局 TITLE 播 sys_continue_ask → 单击 → **复述链 st_hull_1→st_seg_1→recap_go**(全好无异常,异常句正确跳过)→ 落当前段 ROUTE(§11 恢复语义实证)。
教学:t=75.8 tut_d0 → 乱按期 turn_tick(30s nudge)→ tut_d0 重教(60s rung)→ t=144 S1 求救检测链顶进 → D2 教学句 tut_decide+tut_aid 接决策窗 → **t≈190 窗内单击驰援成功**:pa_chime→warp→res_reward→st_rp_2(2→4 跨档)→loy_aid→doc_aid 全链完整(**窗内下令实证**)→ tut_after→tut_loyal。
菜单冻结实证:决策窗内下滑开菜单(sys_menu→settings_hint)→ 挂 14s 真实时间 → 关闭 → **倒计时续走未偷跑**,opt_aid 重播。期间观测到两处 P1(均当场修复,见问题清单 P1-2/P1-3)。
S2 陨石(rich 线):双磨损连打护盾 → 超时 hull−2 → st_hull_2 带伤档 → sup_none → DOCK 修护盾。S3 海盗:超时 hull−2 → st_hull_3。S4 辐射:超时 hull→1 + 受殃 engine dmg → **余波双危机**(t=867.9 第二波 sig_meteor,FIFO 顺延 2s 实证)→ 余波超时 hull 归零 → **弃舰死亡链**:die_intro→die_meteor→die_adv_to→rep_open→rate_d→merit_2→settle_hook( merit=4段+0+floor(7/3)=6 → merit_2 ✓ 折算真话)→ 链中 tap/left/doubletap 三连全吞(链锁实证)→ 单击返航。
## 问题清单
### P0(阻塞/卡死)
无。两局完整闭环(A 局评级 B 返航;B 局死亡链→返航);乱按、菜单三进三出、决策窗冻结、双危机、链锁乱点、续玩复述全部无死锁,零页面错误。
### P1(体验断裂:截断/假话/承诺不兑现)
1. **sys_new_patrol 开场句被教学链顶掉**(局 A t=4.8 TRUNCATED,起播即被掐,sim=0)。触发:`_startPatrol` 先播 sys_new_patrol 后同步进段,DRILL intro 链立即顶掉。
- 修法(F1 已落):`_startPatrol` 改 onDone 链——sys_new_patrol 落声后再 `_enterSeg(1)`。playtest 场景 2 已断言序。
2. **教学危机超时时 DRILL 悬挂**(局 A 实测坐实):求救超时(合法零损失路径)后 drill 停在 step1/2——drillDone 永不持久化(次局重进教学)、残留看门狗在后段空响、且 D2 的 90s 自动演示不可达(窗 20s≪90s,设计缺陷)。
- 修法(F2/R11 已落 + 文档 §15-R11 裁定):结算时 step≥2 → D3 常规收束;step≤1 → tut_done 直接收束→段末;收束期下滑跳过补 `_endSeg`(段计时已停,不补卡死)。playtest 新增 R11 超时收束断言。
3. **教学看门狗顶菜单**(局 B t=179.5 实测):菜单开着时 drill 自动演示照常开播,把菜单自己的语音链掐断(sys_menu_resume 只播「回到」二字)。
- 修法(F3 已落):`_drillTimers` 各 rung 加 R8 一致语义——菜单期顺延 2s 不丢失不顶撞。级联的 tour/选项句互掐随之消失。
4. **D0 武装竞态**:tut_d0 落声与 60s 重教 rung 竞态,armed 晚一拍时重教句抢先(局 A t=93.1 spurious tut_d0)。
- 修法(F4 已落):`_drillDoUp` 受理即 `armed=false`(与 `_drillOrderAid` 同型)。
### P2(可打磨)
- W1:dir_* 方位句 4 字过短,ASR 混音下系统性 MISMATCH(4 条)——人耳无碍(真机范畴),但转写审读打折;候选:方位句加半拍前缀音或并入类型句(动台词表, v2 候选)。
- W2:结算链/下令链顶 guide 语音(gd_dock 被 evt_resume 掐)——guide 层 queue 不顶游戏句是单向承诺,反向未约定;可给 guide 语音加「链播期延迟投递」(引擎级候选,维持观察)。
- W3:局 B 46 段未判为 ASR 积压(与 transcribe 轮同机竞争)——测量局限,已重跑干净;live 驱动 latency(10-30s)使 12s 窗内下令难以稳定复现,窗内成功已由 B 局 D2(20s 窗)+ playtest 全矩阵覆盖。
- W4:巡检账目段尾句被危机检测链顶断时丢尾词(A1 设计内)——可给被顶链加「半句落声宽限 300ms」(v2 候选)。
## 仪器协议备注
- live 驱动经 HTTP 逐拍进行;标记取在动作之前。局 A/B 的「错过窗口」均因驱动 latency(10-30s/拍),玩家动作可解释,不计游戏缺陷。
- 1.7x 会话未建成(control 对 speed 友好名不回写,保持 1.0)——speed 档由引擎 SoundTouch 承载,playtest/guide 已覆盖设置生效路径。
## 修复复核状态
F1-F4 已于 R1 当场修复并回归:playtest **332/332**、guide.test **122/122**、check_all_assets 全项目通过(bridge 338 ogg/m4a 配对、双性别 132 集合一致、key 10 ⊆ 主集)。R2 将重生成转写并真机复验 F1-F4。