技术NPC 的沉默:不说也是一种回答 鼎上娱乐官方资讯中心
首页/资讯攻略/技术前沿

NPC 的沉默也是台词:天工引擎如何生成「不说」的分寸

在天工引擎里,让 NPC 说一句恰到好处的话不算难,难的是让他闭嘴。我们统计过测试服的对白:玩家真正记住的 NPC 时刻,有近三成不是他说了什么,而是他没说。这篇文章拆开这套「沉默」的实现。

一、为什么「不说」更难

语言模型的本能是解释。只要上下文里有信息,它就会倾向把信息说出来。可叙事需要保留:一个守卫如果每次都把知道的讲完,主线就没有悬念,玩家也不会再去别处打听。

更现实的问题是疲劳。测试里,当 NPC 对每个问题都给出完整回答,玩家的对话点击率在第 12 分钟后下降 40%。信息给得太满,玩家反而不读了。

二、沉默的三种类型

我们把「不说」拆成三类,它们的触发条件完全不同。第一类是「不知道」:认知里没有这条信息,表现应为茫然、反问、转移话题。第二类是「不能说」:知道但受身份或规则约束,表现应为回避、压低声音、看向别处。

第三类是「不想说」:知道也能说,但关系不够或情绪不对,表现应为冷淡、敷衍、结束对话。三类沉默如果表现混在一起,玩家就读不出来,只会觉得这个 NPC 反应慢。

三、三层阈值:什么时候该闭嘴

每个 NPC 在对话生成前会先算三个值:认知边界(0到1,是否掌握该信息)、关系阈值(0到1,与玩家的信任度)、情境压力(0到1,当前环境是否危险)。三个值不直接决定台词,而是决定「是否开口」。

规则很朴素:认知低于 0.3,进入「不知道」;认知达标但关系低于阈值,进入「不想说」;情境压力高于 0.7,进入「不能说」。三者同时命中时取优先级最低的一项,避免 NPC 在危险场合长篇解释。

关键是阈值不是常数。同一个 NPC,在主线推进到第三章后关系阈值会下调 0.15,玩家不需要刷好感也能问出更多。这样既保留成长感,又不至于让玩家卡在门口。

四、表现层:停顿、视线与动作

决定不说话之后,还要让玩家看出是哪种不说话。表现层有三个可调项:停顿时长、视线偏移、替代动作。停顿时长 0.4 秒是「在思考」,0.8 秒是「有难处」,超过 1.5 秒会被玩家读成卡顿,所以上限锁在 1.2 秒。

视线偏移配合类型:不知道时看向同伴或货架,不能说时看向场景出口,不想说时低头看手里的东西。替代动作则是加分项,整理袖口、擦拭武器、转身添柴,都比站在原地不动自然。

三项组合起来,玩家不需要读文本就能判断八成。我们做过无声测试:关掉字幕,只看动作,受试者识别「不能说」的准确率达到 78%。

五、两个失败案例

第一个是说漏。雾区守卫本该对「第三层入口」保持回避,但上下文里同时出现了入口坐标和玩家已解锁的通行证,模型判定「无需隐瞒」,直接说了出来。结果是主线悬念提前 40 分钟被拆穿。

第二个是过度沉默。另一个 NPC 连续三次不回答,玩家以为对话卡死,反复点击直到退出。事后访谈里,七成受试者表示「不知道他是不能说还是坏了」——沉默没有分寸,就变成了故障。

两次修正都指向同一条:沉默必须有反馈。说漏的场景加了硬性话题锁;过度沉默的场景加了兜底台词和一次轻微的摇头动作,让玩家知道「他听见了,只是不说」。

六、沉默预算与兜底

现在每个对话场景都有「沉默预算」:同一段对话最多两次不开口,超过就强制给一句软性回应。这不是妥协,是保护——玩家的耐心比我们想的短。

兜底台词分三档:轻档「这事我得想想」、中档「这儿不方便说」、重档「你别问了」。三档对应三类沉默,语气递减,但都保证玩家收到一个明确信号。

七、玩家感知测试

上一轮测试里,62% 的玩家能区分「不知道」和「不想说」,21% 认为两者一样但接受这种设定,17% 完全没注意到 NPC 没说话。第三组人不是失败,他们只是把注意力放在任务上——对这部分玩家,沉默不添堵就够了。

八、写在最后

沉默不是省台词,是给信息定价。什么时候说、对谁说、说多少,三件事分开算,角色才立得住。天工引擎这一层做的,无非是把「不说」也当成一次正式的生成。

因果与状态快照在因果图那一篇,长期记忆在赛季记忆架构,AI 战报流水线在90 秒战报拆解。

「最高级的回答,有时候是不回答。」——天工引擎叙事组
← 上一篇:开票次日观察 下一篇:雾区第三层第二夜 →

不说,也是一种回答

三类沉默、三层阈值、三项表现与沉默预算。