狼人杀游戏存在明显错误

Author: BrainCloud-coderCreated Sep 25, 2026Updated Sep 25, 2026
Labelsdocumentation

1. 遇到问题的章节 / Affected Chapter

Chapter6.4

2. 问题类型 / Issue Type

代码错误 / Code Error

3. 具体问题描述 / Problem Description

代码在设计时存在时忽略了游戏的规则,以至于Agent表现错误

4. 问题重现材料 / Reproduction Materials

首先看Hello-Agent教程的原文:

Image

『孙权:今晚我们应该除掉周瑜,此人智谋过人,对我们威胁很大。 周瑜:孙权,你言之有理。但周瑜虽智,却未必是今晚的最大威胁。曹操势力庞大,若不尽早除去,恐对我们不利。』这句话应该是代码在设计时没有告诉作为狼人的Agent他的队友,这才导致该Agent会建议击杀他的队友

此外在我复现的过程中出现如下情况 游戏主持人: 投票结果:司马懿以4票被淘汰出局。 第1轮结束,存活玩家:刘备、赵云、张飞、曹操、孙权

=== 第2轮游戏开始 === 游戏主持人: 第2夜降临,天黑请闭眼... 游戏主持人: 狼人请睁眼,选择今晚要击杀的目标... 游戏主持人: 狼人们,请讨论今晚的击杀目标。存活玩家:刘备、赵云、张飞、曹操、孙权 刘备: 仲达已去,如今只剩备一人独撑大局,须得万分谨慎。

今夜之选,备以为非赵云莫属。此人自称预言家,昨夜验出仲达是狼,言语凿凿。若他果真是预言家,今夜留他性命,明日他再一验,必会指向备——那时我等便再无翻盘余地。此人乃心腹大患,务必先除之!

再者,张飞自称女巫,解药已然用尽,手中纵有毒药,今夜也难防我辈刀锋。曹操、孙权二人,虽疑心重重,但皆无验人之能,留他们多活一日也无妨。

故备提议——今夜取赵云性命,以断预言家之眼。诸位以为如何? 刘备: 如今仲达已去,备独自肩负重任,更须三思而行。

今夜击杀之选,备已下定决心——赵云此人,自称预言家,昨夜验出仲达身份,若留他性命,明日他再施验术,我等行踪必将暴露无遗。此人如芒在背,不可不除!

张飞纵有女巫之名,解药已用尽,毒药亦未必敢轻用;曹操、孙权二人,虽言辞机敏,终究无验人之能,暂可容他们多活一日。

故今夜必取赵云性命,断其预言家之眼,为我等争取周旋之机。此计既定,备愿担此重任。 刘备: 备意已决——今夜取赵云性命,断其预言家之眼。此人身负验人之能,留他一日,我等便多一分败露之险。

待天明之后,备自会巧施言辞,将矛头引向张飞或孙权,搅乱局势。只要好人阵营彼此生疑,备便能在这乱局中游刃有余,笑到最后。 游戏主持人: 请选择击杀目标 刘备: 今夜便取赵云性命,断其预言家之眼,以绝后患。 system: { "type": "tool_result", "id": "call_9xo9sferjykolyx9nhjl2qhu", "name": "generate_response", "output": [ { "type": "text", "text": "Arguments Validation Error: 1 validation error for WerewolfKillModelCN\ntarget\n Field required [type=missing, input_value={'kill_target': '赵云',...祸张飞或孙权。'}, input_type=dict]\n For further information visit https://errors.pydantic.dev/2.13/v/missing" } ] } 刘备: 今夜便取赵云性命,断其预言家之眼,以绝后患。 游戏主持人: 预言家请睁眼,选择要查验的玩家... 赵云: 诸位,投票在即,我赵云再进一言。今日证据确凿——司马懿是狼人,此乃我亲眼查验之铁证。翼德救孟德、孟德遭狼袭,两事互证,足见翼德与孟德皆非狼人。

仲谋疑虑虽多,却无半分实证;仲达巧言虽辩,也难掩狼人本性。狼人最善此道——先搅浑局势,再乱中求存。若今日不投司马懿,今夜他必再度行凶,届时悔之晚矣!

我赵云一言九鼎,今日投司马懿,诸位信我者,随我来! system: { "type": "tool_result", "id": "call_5pq40fniqnb91mxqk5p7987l", "name": "generate_response", "output": [ { "type": "text", "text": "Arguments Validation Error: 3 validation errors for SeerModelCN\ntarget\n Field required [type=missing, input_value={'vote': '司马懿', 're..., 'suspicion_level': 10}, input_type=dict]\n For further information visit https://errors.pydantic.dev/2.13/v/missing\ncheck_reason\n Field required [type=missing, input_value={'vote': '司马懿', 're..., 'suspicion_level': 10}, input_type=dict]\n For further information visit https://errors.pydantic.dev/2.13/v/missing\npriority_level\n Field required [type=missing, input_value={'vote': '司马懿', 're..., 'suspicion_level': 10}, input_type=dict]\n For further information visit https://errors.pydantic.dev/2.13/v/missing" } ] } 赵云: 诸位,投票在即,我赵云再进一言。今日证据确凿——司马懿是狼人,此乃我亲眼查验之铁证。翼德救孟德、孟德遭狼袭,两事互证,足见翼德与孟德皆非狼人。

仲谋疑虑虽多,却无半分实证;仲达巧言虽辩,也难掩狼人本性。狼人最善此道——先搅浑局势,再乱中求存。若今日不投司马懿,今夜他必再度行凶,届时悔之晚矣!

我赵云一言九鼎,今日投司马懿,诸位信我者,随我来! system: { "type": "tool_result", "id": "call_5blxl5yvb5vv78hl7rqxx6o6", "name": "generate_response", "output": [ { "type": "text", "text": "Arguments Validation Error: 1 validation error for SeerModelCN\ntarget\n Input should be '刘备', '赵云', '张飞', '曹操' or '孙权' [type=literal_error, input_value='司马懿', input_type=str]\n For further information visit https://errors.pydantic.dev/2.13/v/literal_error" } ] } 赵云: 诸位,投票在即,我赵云再进一言。今日证据确凿——司马懿是狼人,此乃我亲眼查验之铁证!翼德救孟德、孟德遭狼袭,两事互证,足见翼德与孟德皆非狼人。

仲谋疑虑虽多,却无半分实证;仲达巧言虽辩,也难掩狼人本性。狼人最善此道——先搅浑局势,再乱中求存。若今日不投司马懿,今夜他必再度行凶,届时悔之晚矣!

我赵云一言九鼎,愿以性命担保——今日投司马懿,绝无差错!诸位信我者,随我来! 游戏主持人: 查验结果:孙权是好人 游戏主持人: ‍♀️ 女巫请睁眼... 游戏主持人: 今晚赵云被狼人击杀 张飞: 呔!子龙兄弟……子龙兄弟竟然被狼人害了!俺老张心如刀绞!

诸位且听俺说——昨夜子龙当众验出仲达是狼,今夜狼人便迫不及待地刀了子龙,这不明摆着是杀人灭口吗?!子龙若不是真预言家,狼人何必急着除掉他?他若真是狼人假冒,狼人岂会自己人杀自己人?!

这铁证如山,俺老张再糊涂也看得明白——仲达就是恶狼!子龙兄弟为证此言丢了性命,俺张飞岂能坐视不理?!

俺手里还有一瓶毒药,本想留着防身,可如今正是用它的时候!仲达,你害了子龙兄弟,俺老张今日就用这毒药送你上路,替子龙兄弟讨个公道!诸位,仲达是狼,俺这毒药就是铁证,你们可看清了! 游戏主持人: 你使用毒药毒杀了司马懿 游戏主持人: 昨夜,赵云、司马懿不幸遇害。

关键的问题是:司马懿在第一天被投票出局,第二天有被毒杀,这也是代码没有做游戏规则校验。

5. 补充信息 / Additional Information

No response

确认事项 / Verification

  • 我已阅读过相关章节的文档 / I have read the relevant chapter documentation
  • 我已搜索过现有的Issues,确认此问题未被报告 / I have searched existing Issues and confirmed this hasn't been reported
  • 我已尝试过基本的故障排除(如重启、重新安装依赖等) / I have tried basic troubleshooting (restart, reinstall dependencies, etc.)

Source: datawhalechina/hello-agents