# 《围猎》10 人并发在线模拟 × 多 agent 设计迭代 — 研究计划 > 启动:2026-09-18 | 上级文档:[HANDOVER](../../HANDOVER.md) §7 MMORPG 路线、[23-hunt](../../docs/design/23-hunt.md) > 用户指令:开多个 agent(一个代表一个玩家),先模拟 10 个玩家同时在线玩《围猎》, > 再开多个 agent 根据模拟结果迭代游戏设计;过程中充分记录各种状态和数据; > 最终目的:做一款真正吸引人、玩家愿意玩的音频游戏。 ## 0. 方法论声明(为什么这么做) **目标**:验证并打磨《围猎》作为联机纯音频游戏的吸引力——不是「逻辑能跑通」 (服务器单测 hunt-sim.test.mjs 已覆盖),而是「真人玩起来是什么体验、愿不愿意再来一局」。 **两难与解法**:LLM agent 单次决策往返需数秒到数十秒,而《围猎》的近战窗是 eta≤4s、出击冷却 2.5s——让 LLM 字面意义地实时逐手势操作,测到的是 agent 网络延迟 而非游戏设计,数据会被系统性污染。因此采用项目既有方法论(new8 八款验证过的 「程序化拟人 driver + LLM 人设评审」,见 research/new8/00-program.md)的加强版: - **每个玩家 = 一个 LLM subagent**,其职责分三段: 1. **赛前(灵魂注入)**:读自己的人设卡 + 游戏背景,亲笔写下自己的「玩家大脑配置」 (反应延迟/方位混淆率/技能习惯/呼喊倾向/分心中断等 20+ 参数)与策略自述—— 这就是「这个人在真实房间里会怎么打」。 2. **赛中(身体执行)**:竞技场编排器用该配置驱动一个拟人玩家模型,通过**真实 WebSocket 协议**连上**真实服务器**,与其他 9 人同时在线打真实时长的对局 (教学局 + 快速局)。感知模型逐字节移植自真实客户端 game.js 的渲染规则 (loop ≤3 路 / 音量分档 / pan / 后半平面×0.6 / 喊话调度 / 语音时长全部对齐), 玩家模型只根据「耳朵能听到什么」做决策,方位要靠 pan 判读、会听错。 3. **局间与赛后(主观意志)**:每打完一局,玩家 agent 读自己的**感知转写** (这一局里耳朵听到了什么的逐秒记录),决定「再来一局 / 走人」并写即时感受; 全部打完后写结构化人设终评(状态感知/下一步明确性/愿意继续玩/P0/建议, 沿用 research/04-playtests/personas.md 格式)。 - **多个分析 agent** 在 Phase 2 分视角审全部记录(数值曲线/音频信息设计/协作动态/ 上手与留存),产出设计迭代清单;synthesis 裁定 P0/P1;实施后**同阵容复测对比**。 **这一架构里 LLM 的判断力用在它擅长的位置**(人格、策略、主观体验、去留决策、 设计分析),反射层交给校准过的程序(人类反应本来就是脊髓级别的)。 ## 1. 研究问题(评审 agent 逐一回答) | # | 问题 | 数据来源 | |---|---|---| | Q1 | 5 波难度曲线对不同水平玩家是否成立(首胜率/失守点/评级分布)? | 对局结果 + 逐波 breach | | Q2 | 8 方位 pan 判读的真实错误率:前后/斜对角/低音量档差多少?玩家学得会吗? | 感知模型的方位混淆账 | | Q3 | 音频信道拥挤(R1-R8):旁白播报掩蔽 loop 导致的漏怪有多少?警报可达性? | 转写中 voice 在播窗 vs breach 时刻对账 | | Q4 | 协作是否成立:呼喊-补位闭环真人会用吗?bot 队友的存在感/可信度? | callout 账 + 玩家终评 | | Q5 | FTUE:教学房时长/错误/卡点;二周目是否还愿意进? | 教学局转写 + 去留决策 | | Q6 | 留存钩子:打完一局想再来吗?什么时刻让人想走(败局/混乱/无聊)? | 局间去留 + 终评 | | Q7 | 玩法天花板:optimal 玩家与 novice 的差距是否「可追赶」(不是天赋锁死)? | 与 hunt-balance-scan 对照 | ## 2. 十张人设卡(P01-P10) > 蓝本来自 research/04-playtests/personas.md 的 P1-P4 四原型,为联机协作场景扩展为 10 人。 > 每位玩家 agent 拿到自己的一张卡。卡的「参数倾向」只是建议区间,agent 可在自己 > 判断下偏离(需在策略自述里说明理由)。 | # | 代号 | 原型 | 背景/场景 | 参数倾向 | |---|---|---|---|---| | P01 | 老鹰 | P1 视障资深 | 先天失明 15 年读屏,audiogames.net 老用户,Blind Drive 竞速榜玩家。安静书房,有线耳机,愿意深玩 | 反应快(react 0.6-0.9s)、方位判读准(斜向混淆 <8%)、技能/呼喊用得系统 | | P02 | 小鹿 | P2 大学生 | 20 岁,原神/明日方舟深度玩家,躺床戴耳机,23:30 睡前 | 中反应(0.9-1.4s)、好奇(会试上滑状态/菜单)、败局容忍中 | | P03 | 通勤客 | P3 白领 | 32 岁地铁单程 25 分钟,站立单手持机,嘈杂,随时被打断 | 反应慢(1.4-2.2s)、每局 1-2 次分心中断(8-15s)、方位判读差 | | P04 | 老赵 | P4 工人 | 45 岁工地收工,宿舍外放小音量,反应不快,游戏经验少 | 反应慢(1.6-2.4s)、教学可能做错、呼喊不主动、但沉得住气 | | P05 | 独狼 | 新原型 | 28 岁程序员,单人游戏主义者,从不开语音不喊话,操作精准 | 反应快、方位准、**从不呼喊**(callout discovered=false)、专注输出 | | P06 | 社交花 | 新原型 | 24 岁,开黑爱好者,王者荣耀辅助位,爱指挥爱报点 | 反应中、呼喊积极(阈值低)、爱听 bot 队友回应、波间爱上滑看状态 | | P07 | 暴躁哥 | 新原型 | 22 岁,FPS 玩家,脾气急,输了就想摔手机 | 反应极快(0.5-0.8s)、冷却内乱滑(noviceSpam 高)、失守后大概率走人 | | P08 | 谨慎姐 | 新原型 | 35 岁,玩动物森友黏,不爱冲突,怕犯错 | 反应中慢、旋风斩囤着不用(阈值高)、被连续突入会慌(panicSpin) | | P09 | 挂机侠 | 新原型 | 19 岁,边看视频边玩,注意力随机离线 | 反应漂移大(0.8-2.8s)、每局长分心 2-3 次、可能中途断网重连 | | P10 | 新手小白 | 新原型 | 30 岁,第一次玩音频游戏,朋友推荐来的 | 全参数保守:慢、混淆率高、教学逐步跟、第一次失守可能直接走 | 设备/环境画像进入感知模型:通勤客与挂机侠的语音掩蔽系数更高(嘈杂/分屏), 老赵外放 → 方位判读惩罚,蓝牙耳机延迟(暴躁哥蓝牙 +150ms 动作延迟)。 ## 3. 会话剧本(Phase 1 执行流程) ``` R0 教学轮 10 人各自进教学房(单人+2bot,服务端强制)——FTUE 测量 ↓ [10 个玩家 agent 读自己的教学局转写 → 决定:继续/走人 + 一句话感受] R1 快速轮 幸存者进快速匹配池(真实组队:4+4+2 或按幸存数) ↓ [同上局间决策] R2 快速轮 幸存者再战(房间重新洗牌) ↓ [10 个玩家 agent 写人设终评(含中途退出者)] ``` - 每局都是**真实时长**(教学 ~3-4min、快速 ~3min),真实服务器进程(随机端口 + 临时数据目录,与生产数据隔离)。 - 玩家可以中途走人(配置/局间决策决定),槽位按 §6.6 转 bot——本身就是被测行为。 - P09 的 netDrop、P03 的分心、P07 的乱滑都走真实协议路径(客户端本地拦截在 玩家模型里等价复刻:乱滑只记手势不发 act)。 ## 4. 记录产物(全部落 research/hunt-sim/round/) | 产物 | 内容 | |---|---| | `players/PXX.config.json` + `PXX.strategy.md` | 玩家 agent 亲笔的大脑配置与策略自述 | | `players/PXX.decisions.md` | 局间去留决策 + 即时感受(逐局追加) | | `players/PXX.review.md` | 人设终评(结构化,personas.md 格式 + hunt 专项问题) | | `matches//PXX.percept.md` | 每人每局**感知转写**:逐秒「耳朵听到了什么」(语音全文/sfx/loop 方位音量档/震动/静默)+ 自己的手势与归因 | | `matches//PXX.events.jsonl` | 原始全量:服务器每条消息(含 ts)/感知事件/手势与 act/内部状态快照 | | `matches//match.json` | 对局档案:房间构成/seed/结果/逐波统计/每人击杀/失误/方位混淆账 | | `metrics.json` + `summary.md` | 全场汇总指标(Q1-Q7 口径) | | `analysis/*.md` | Phase 2 各分析 agent 报告 | | `synthesis.md` | 裁定清单(P0/P1/P2 + 修法 + 预期指标变化) | ## 5. Phase 2 分析 agent 分工(每视角一个 subagent) 1. **数值曲线**:Q1/Q7——胜率-评级分布、逐波 breach、bot 带飞占比、与 hunt-balance-scan 的 idle/bot/optimal 三基准对照。 2. **音频信息设计**:Q2/Q3——方位混淆账(前/后 × 主/斜 × 音量档)、语音掩蔽窗 对账、警报可达性、拥挤规则 R1-R8 在真实并发下的表现。 3. **协作与社交**:Q4——呼喊使用率与响应链、补位感知(玩家知道队友来了吗)、 bot 台词存在感、独狼 vs 社交花的体验差。 4. **上手与留存**:Q5/Q6——教学时长/卡点/错误分布、去留决策树(什么体验导致 走人)、再来一局的钩子在哪。 5. (合成)**synthesis**:合并四报告 → 按「对愿意玩下去的影响」排序的修复清单。 ## 6. 迭代与复测纪律 - 修复只动设计参数与逻辑(server/client/台词接线),**不动 10 人配置与人设** (同阵容复测才有可比性);数值调优可另跑 hunt-balance-scan 多种子验证。 - 复测对比指标:胜率/评级分布、方位混淆率、掩蔽漏怪数、去留率、终评均分。 - 每轮记录齐套入 `research/hunt-sim/round/`,裁定记录不改、新结论写新文档 (项目协作约定 §8.2)。 ## 7. 已知边界(诚实声明) - 玩家模型是「感知规则 + 配置驱动」的拟人代理,不是真人;它的参数是从人设卡 出发由 LLM 亲笔校准的,但真实人类的怪癖(学会新策略、情绪漂移)只通过局间 agent 决策部分体现。结论按「信息流层可信(何时听到什么/能不能判读)、 主观层参考(人设代入)」两档采信。 - 音色美感、响度平衡、立体声分离度等**听感层**不在本模拟范围(无真实音频渲染), 属真机人耳听测(roadmap §4)。转写里的 loop「听到」= 事件流上客户端会渲染它。