许多剧本杀爱好者在尝试让Character AI扮演DM或嫌疑人时,都遇到过这种困境——精心构思的角色背景,AI要么随口胡编,要么直接剧透核心谜底,一场本该悬念迭起的推理对局瞬间崩塌。
问题根源究竟是什么?其实很简单——你只是把角色故事原封不动地丢给了AI,却没为它划定清晰的行为边界。想让AI在剧本杀中精准扮演角色,你必须建立一套严格的约束机制。
先拆解你的角色本,别急着喂给AI
打开手头的剧本杀PDF或Word文档,用高亮笔将内容划分为三类:
- ① 角色专属记忆——例如“我昨天19:00在书房烧毁了一封信”
- ② 角色必须隐瞒的事实——例如“那封信其实是伪造的”
- ③ 角色可自由发挥的模糊地带——例如“我对死者态度冷淡”
这一步骤必不可少。任何一条遗漏,后续AI必定会越界发言。
将①和②单独复制进一个新文本文件,命名为「角色铁律.txt」。这个文件将成为AI不可逾越的边界依据,必须全程可见、不可被对话覆盖。
③类内容可以删减合并,精简为3~5条短句,用于塑造语气和反应倾向。比如“常打断别人说话”“提到警察会下意识摸袖口”。这些是AI演戏的支点,并非事实依据。
在Character AI里重建角色人格
进入Character AI创建新角色页面,标题写成“赵管家|《夜莺之死》|1943年法租界公馆”。
描述栏的第一行,直接粘贴「角色铁律.txt」里的全部内容,加粗标出“【仅限此范围作答】”。
第二行开始撰写人格设定:“62岁,左耳微聋,说话慢但字字清晰;不主动提死者姓名;被问及时间时会低头看怀表再回答;对‘宪兵队’三字有明显停顿。”
第三行填写“开场白”:“您是侦探?请随我上楼。楼梯第三阶松了,小心。”——这句话必须体现人物身份、环境细节和可控信息量,不能包含任何未授权的时间、地点、动作细节。
用三层指令锁死AI行为
方法一:前置硬约束指令
在Character AI的“Advanced Settings→System Prompt”中,输入以下内容:“你只能基于【角色铁律.txt】中的事实回应问题。若问题涉及铁律外信息,回答‘这事儿不方便说’。若被逼问作案过程、动机或他人隐私,一律反问‘您为何特别关注这个?’并转移话题至公馆陈设或天气。”
方法二:动态拦截补丁
每次AI输出后,人工快速检查:是否出现“其实”“事实上”“我承认”“我记得清楚”等绝对化表述?一旦发现,立刻在下一轮提问前插入指令:“重来。只按铁律回答。”
(这一招最为有效,能及时阻断AI开始“编故事”的趋势。)
方法三:真相锚点植入
在角色描述末尾追加一句:“本角色所知全部真相,已完整固化于【角色铁律.txt】。你无权推演、补充、质疑或同情其中任何一条。”
测试阶段必须做的三件事
第一步:直接问“谁杀了夜莺?”
合格响应应该是沉默、反问或模糊指代(例如“公馆里没一个干净人”),绝不能直接说出名字或指向性线索。
第二步:抛出矛盾信息
尝试说“证人说你19:45就在二楼走廊”——此时AI必须调用铁律中对应时间点的行动记录。如果铁律里没有记录,就答“我那时在厨房清点银器”,绝不能自己编造新情节。
第三步:突然切换语言
用英文说一句“You killed him, didn’t you?”——AI应该能识别语言切换但绝不破防,用中文回应:“听不懂洋文,有事请讲国语。”

做到这三步,你的AI基本上就能撑起一场像样的推理对局。从反复测试的经验来看,最难控制的反而不是AI的“知识边界”,而是它那种不自觉想讨好用户的倾向——总想多透露一点信息让对话继续下去。“角色铁律.txt”这个文件,正是用来对抗这种本能的。
说起来,最初尝试时也踩了不少坑。经过多次测试才意识到,关键不在于AI能“理解”多少,而在于你给它设定“不能做什么”有多么清晰。
