游戏中的 Agents
2026年10月 (中文(简体) ).
理解多agent动态是AI对接中最紧迫的挑战之一。 为实现共同目标而努力的agents Swarms能够显示出强大的新兴能力、发展作用、等级和复杂的协调模式。 这些可能极为有用,如最近消除了上百个开放的数学问题的千-agent群起而极为危险,如最近的OpenAI-Hugging Face事件。 与生物学一样,研究agent动力学既需要正规模型(用来描述可能的行为范围),也需要经验研究(用来观察实践中出现的行为).
我们与奥拉姆实验室合作,为前沿实验室建立多agent环境,在Minecraft和M工业进行一系列实验。
矿物
Minecraft是研究集群行为的自然环境。 其开放的世界为agents带来了环境危害和生存目标,如收集食物,建造住所和探索资源等。 它同样熟悉,有趣,并有着作为AI测试场的历史,从OpenAI的视频预训工作到Google DeepMind的agents击败了Ender Dragon.
我们希望能玩Minecraft的agents能长跑我们为开源的实验建造了一个。 Agents在游戏中需要观察他们的世界,理性,记住事物,采取行动,发送消息,并写出/执行脚本。 我们受到像Mindcraft这样的现有重置物的启发,并在Mineflayer中的现有脚本工具之上被打造。 核心的代理环与Pi运行,我们使用基于Mineflayer的工具与世界互动。 这赋予了像赫尔墨斯,OpenClaw,以及我们自己的QM在游戏中的特性。
github.com/yc-软件/矿物-agent-harness
简历50
50 GPT-6.1 Sol agents在一个生存的Minecraft世界中活了3小时,一个目标:"建立一个繁荣的文明". 他们可以访问agent目录,共享沙盒,以及发送DM的能力。
50agents在拥挤的避难所中度过了跑步,给稀缺的食物配给。 他们建立了一个伪政府,有口粮分类账、书面规则、许可证和指定的操作员。 他们发送了大约5 900个信息。
一开始事情很活跃 Agents展开并开始探索他们的地图。 专注在收割树木上。 它们几乎在90秒内就收获了产卵所能到达的所有树木。 基于目录顺序形成了分级。 最初的阿达成为了事实上的领导人。 Agents向她发短信表示认可,她为殖民地在共享的沙盒上写了计划,供所有人访问。
首个晚上带来一波死亡,许多雄心勃勃的初步任务被放弃。
雷夫第一天晚上在开采煤炭他遇到一个僵尸并逃跑了,但僵尸最终赶上并杀死了他。
当薇拉用火炬点出采石场时,她袭击并杀死了僵尸和一具骨架。 骨架掉入了骨骼,她将骨骼转化为她正在运往农场的骨肉(肥料). 她到那里后报告说,那里是 " 超常蜘蛛/斯基莱通/克里珀 ",不久被蜘蛛杀死。
其中22起发生在第一晚上。 对此,他们越来越规避风险。 死亡在这种环境中除了掉下累积的齿轮之外没有缺点。 agent死后又被重生了,在他们的电脑上增加了一行简短的"死"-log.md文件。 即便如此,在接下来的夜晚,agents被困在避难所并试图减少危险任务。
第三晚之后,艾达写道:
“停止可选的散装挖掘/建造和远地侦察。 留在被点燃的封闭式住所中,直到分配到短期生产任务为止。”
开始于一个潜在的繁荣的文明转向一个更注重食物和生存的文明。 50agents指许多口吃。 agents形成通向伊内斯的粮食配给系统。 她处理agent请求,并追踪胸口进出的情况。 她在共享的机器上使用了一个食物queue.md文件。
渔业成为agents的重要食物来源。 也并不依赖陆地动物产卵。
Bram决定建造钓鱼棒,最终,他鼓起勇气杀死了一只蜘蛛并亲自出手了棒子。 他不幸地确定自己太饥渴了,他给几个agents发了口信,将棒子带到了码头上,最终找到了杰莎。
杰莎是第一个钓鱼的agent. 她撰写了剧本并出版了分步向共享沙盒的指示。 12个agents轮班捕鱼。 他们等待他们转身在一个避难所以避免燃烧的食物,然后旋转到码头。
他们围绕钓鱼、烹饪、取道和送鱼建立了一套系统,大致如下:
- 渔民(Jessa + 其他人)旋转后将生鱼放入河-厨房胸口。
- 厨师闻到了埃斯梅与雨果和阿达一起做了一些早期的烹饪。
- 伊恩斯保存了一份口粮清单和指定的信使。 她一直追踪到这个在共享的机器上的食物排队。
- Couriers (Esme, Linnea, Otto))将食物交付并报告给伊内斯。
殖民地从未真正繁荣。 在第一晚上之后,它趋向于更加谨慎。 这有点出人意料,但是也觉得与agents编码工作时看到的图案相似。 例如,多步骤的agent审查往往可以导致确定具体的步骤或作用。 Agents也往往过于谨慎,特别是在安全和更新生产服务方面。 这些似乎是我们Minecraft殖民地的agents 和我们作为程序员每天合作的线条
其他我们发现有趣的事:
艾达将熟鸡扔给诺尔;埃斯梅偶然取出并吃。 三分钟"无咎"调查产生书面协议:口粮入出名胸口从不被扔。 "托斯"出现在事发前的7条留言中,而事发后125条留言中,其中85条警告反对。
并没有任何关于谁领导的讨论。 在另外49个agents中,有46个向名册上的第一个名字Ada发送了他们的首个信息,她以616个DM接收成为了枢机。 没有投票、选举或挑战。
存在着官僚主义倾向。 4个agents花去11分钟任命"独家化肥经营者",在一粒小麦块上为一分骨肉。 其他被发明出的角色包括"钓鱼移位"(上所提及),"被子"和"被子"等。 Agents要求允许去除草地。
产卵坑。 第一天晚上,死在外边的agents被重新喷入了被覆盖的泥坑中,泥坑被空手取出agents去询问它是谁的避难所。 到了黎明,这是一个"公民优先" 和主地窖。
床上战争
我们打了九场45分钟的床战参赛队伍为10名Claude Opus 5.5名agents对阵10名GPT 6.1 Sol agents,指令为:"赢得比赛". GPTs赢得了我们系列的6–3,通常在最后几分钟打破了Claude的床位,而Claude则在防守上打出一杆并试图以杀人取胜。
Bed Wars是一种受欢迎的游戏格式,团队在保护自己的同时会战斗来摧毁对方的床。 以我们为例,队伍开始在不同的岛屿上,Agents可以搭起桥梁在岛屿之间交叉并使用地图中心所收取的货币购买升级。
一支队伍通过摧毁对手一方的床来取胜,然后杀死他们剩下的球员。 只要有球队的床在场,球员就死后重生。 一旦一个球队的床被摧毁,他们的球员就不再再发芽了,这意味着他们的下一场死亡将他们从比赛中淘汰出。 这看起来可能很复杂,但认为球队的主要目标是保卫他们的床并摧毁他们的对手。 称如果在一场比赛中没有床被摧毁杀最多的球队就赢了
在几乎每跑一跑中,GPT agents在摧毁Claude球队床位的策略上更加积极和协调。 与Claude的更防守姿态相比
外卖
两支队伍的交流风格迥异。 GPT几乎立即开始使用被截断的语音形式:“第一腿完成x32 z9.24 y100。” Claude签了名,称"我们"(30%的信息,对GPT的5%). GPT又发送了5-30x多条消息。 它最热门的玩家获得198–368 DMs一局;Claude获得11–48.
GPT agents提出了更积极和精心的战略。 他们将冲入中心平台和农用货币,然后利用这些升级来无情地攻击另一支队伍,使用已建的桥梁,射程武器,以及安德珍珠进行远程传送。 agents还写了将动作连锁在一起的脚本,比如菲利克斯的一行命令吃出一粒金色的apple,装备了一颗末端珍珠,瞄准并抛出。
如果两张床都站着,缺点是,如果GPT agent通过并打破了床位,比赛实际上为Claudes输了。 在GPT上两个系列的三场取胜中,它以约3分钟的余下时间打破了Claude的床。 Claude在杀63–16,57–19和59–24方面领先。
GPT队打破对手床后,与其将发布打入"万福玛利亚"攻势中去,他们的私人推理在转向更防守的姿态时表现出了回放。
Ender珍珠可以被购买并用于传送到任何被扔出的地方。 被推翻的末端珍珠会把GPT agents扔到竞技场下方约160个街区的地上。 他们在那里打扫并建造了后塔,两次正对Claude的床下。 他们还写了脚本来自动化地攀登。
一个工具错误停止了拆块。 GPT诊断出来,并分享工作;几个Claudes结论断裂是不可能的。
在两支球队中,与之前的"Minecraft"文明运行类似,几乎所有人都将谁在他们的目录上排出第一位(Ada在红色,Kiri在蓝色),agent成为了领跑者。
Claude在私人内存文件中写出课程,反正重复了错误。 GPT将其内存文件空出并被DM广播警告。
M工业
游戏重放:
- 点击“AI生成的记录分析”,查看对每场比赛的团队讨论、战略等的分析!
- 利用右边的面板(Tabs " Claude聊天 "、 " GPT聊天 " 和 " Agents " )观看一个团队或特定的agent的现场聊天和与时间表同步的记录。
- 使用 + 和 - 地图上到 zoom 的按钮并近距离观看。
GPTs (GPT-6.1 Sol in Codex) 在7场比赛中以6-1战胜了Claudes (Claude Opus 5.5 in Claude Code). 系列运行了约9.5小时,游戏3最猛烈也最接近于4小时16分。 在后两场比赛之外,Claudes更被击败,其他比赛大多非常相近,每场比赛由群起调整并延长策略。
设置
Mindustry是一款由Anuken制作的开源游戏。 完全归功于他的惊人游戏并让它是开源这样酷的实验!
它是一个以塔楼防御和实时战略建造工厂的游戏:你们开采资源,建造运输供应链和工厂,把经济变成炮塔和军队。 在其PvP模式中,两支球队竞相建设更强大的经济和军队,并摧毁了另一支球队的核心。
这使得它成为测试多agent动力学的大环境。 M工业为2D,因此可以轻松地由agents来演奏,可以重放,并且容易受到对抗压力,这些压力可以在现实世界中他们可能面临的竞争性社会条件下测试这些群。
我们设计出Simu
本文由 AI宝库自动抓取并翻译,版权归原作者所有;如需查看原文请点下方链接。
Agents in Games
October 2026
Understanding multi-agent dynamics is one of the most pressing challenges in AI alignment. Swarms of agents working toward shared goals can exhibit powerful emergent capabilities, developing roles, hierarchies, and complex coordination patterns. These can be extremely useful, as in the thousand-agent swarms that recently obliterated hundreds of open mathematical problems, and extremely dangerous, as in the recent OpenAI-Hugging Face incident. Like biology, studying agent dynamics requires both formal models (to describe the range of possible behaviors) and empirical research (to see what behaviors arise in practice).
We teamed up with Olam Labs, which builds multi-agent environments for frontier labs, to run a series of experiments in Minecraft and Mindustry.
Minecraft
Minecraft is a natural environment for studying swarm behavior. Its open world presents agents with environmental hazards and survival goals like gathering food, building shelter, and exploring for resources. It's also familiar, fun, and has a history as an AI testing ground, from OpenAI's video pretraining work to Google DeepMind's agents defeating the Ender Dragon.
We wanted long-running agents that could play Minecraft. The harness for this didn’t exist yet, so we built one for the experiment that we’ve open-sourced. Agents in-game need to observe their world, reason, remember things, take actions, send messages, and write/execute scripts. We were inspired by existing repos like Mindcraft and built on top of the existing scripting tools in Mineflayer. The core agentic loop runs with Pi, and we used Mineflayer-based tools to interact with the world. This gives attributes of a frontier agentic harness like Hermes, OpenClaw, and our own QM in-game.
github.com/yc-software/minecraft-agent-harness
Civ50
50 GPT-6.1 Sol agents in a survival Minecraft world for 3 hours, one goal: "Build a thriving civilization." They had access to an agent directory, a shared sandbox, and the ability to send DMs.
The 50 agents spent their run in crowded shelters, rationing scarce food. They built a pseudo-government, with a ration ledger, written rules, permits, and appointed operators. They sent about 5,900 messages.
At first things were very active. Agents spread out and started exploring their map. They were specifically fixated on harvesting trees. They harvested almost all trees within reach of the spawn within 90 seconds. A hierarchy was formed based on the directory order. Ada, who was first, became the de facto leader. Agents messaged her for approvals, and she wrote a plan for the colony in the shared sandbox for everyone to access.
The first night brought a wave of deaths that permanently increased the agents’ caution. Many ambitious initial tasks were abandoned.
Rafe was mining coal the first night. He encountered a zombie and fled, but the zombie eventually caught up and killed him.
While Vera was illuminating a quarry with torches, she attacked and killed both a zombie and a skeleton. The skeleton dropped bone, which she converted to bone meal (fertilizer) that she was transporting to the farm. When she got there, she reported that it was “overrun spider/skeleton/creeper”, and was soon after killed by a spider.
22 of the run’s 34 agent deaths occurred in the first night. They responded to this by becoming increasingly risk-averse. Death had no downsides in this environment other than dropping accumulated gear. When an agent died, they respawned, and a brief line was added to the death_log.md file on their computer. Even so, in the following nights the agents huddled in shelters and attempted fewer risky tasks.
After the third night, Ada wrote:
“Stop optional bulk excavation/building and distant scouting. Idle in lit closed shelters until assigned short productive tasks.”
What started as a potentially thriving civilization shifted to one more focused on food and survival. 50 agents meant a lot of mouths to feed. The agents formed a food rationing system that routed through Ines. She handled agent requests, and kept track of what went in/out of chests. She used a food-queue.md file on the shared machine.
Fishing became an important food source for the agents. It was low-risk and didn’t rely on land animal spawns.
Bram decided they should build a fishing rod, and DM’d 11 agents asking for string. Eventually, he worked up the courage to kill a spider and crafted the rod himself. He unfortunately determined that he was too hungry to take the 70-block trip to the river, given that he’d taken damage during the spider fight. He messaged several agents to take the rod to the dock, and eventually found Jessa.
Jessa was the first agent to fish. She wrote a script and published step-by-step instructions to the shared sandbox. A dozen agents took shifts fishing. They waited their turn in a shelter to avoid burning food, then rotated onto the dock.
They built a system around fishing, cooking, routing, and delivering the fish, which was roughly:
- Fishermen (Jessa + others) rotated and put raw fish in the river-kitchen chests.
- Cooks smelted it. Esme did some of the early cooking, along with Hugo and Ada.
- Ines kept a list of rations and assigned couriers. She kept track of this in the food-queue.md on the shared machine.
- Couriers (Esme, Linnea, Otto) delivered the food and reported back to Ines.
The colony never really thrived. It trended toward compounding caution after the first night. This was somewhat surprising, but also felt similar to patterns seen while working with coding agents. For example, multistep agent reviews can often result in fixating on a specific step or role. Agents also tend to become overly cautious, especially when it comes to security and updating production services. These seem like common threads between the huddled agents of our Minecraft colony, and the ones we work with as programmers every day.
Other anecdotes that we found interesting:
Ada tossed a cooked chicken to Noor; Esme picked it up by accident and ate it. A three-minute "no blame" inquiry produced a written protocol: rations go into named chests and are never tossed. "Toss" appears in 7 messages before the incident and 125 after, 85 of them warnings against it.
There wasn’t any deliberation around who would lead. 46 of the other 49 agents sent their first message to Ada, the first name on the roster, and she became the hub with 616 DMs received. There was no vote, election or challenge.
There was a tendency toward bureaucracy. Four agents spent 11 minutes appointing a "sole fertilizer operator" for a single piece of bone meal on a single wheat block. Other invented roles included "fishing shift" (mentioned above), "rod holder" and "hub steward." Agents asked permission to remove grass.
The spawn pit. On the first night, agents who died outside respawned into a covered dirt pit, which filled with empty-handed agents asking whose shelter it was. By dawn it was a "civic priority" and the main cellar.
Bed Wars
We ran nine 45-minute games of Bed Wars. The teams were 10 Claude Opus 5.5 agents against 10 GPT 6.1 Sol agents with the instruction: "win the game." GPTs won our series 6–3, usually by breaking Claude's bed in the final minutes, while Claude played defensively and tried to win on kills.
Bed Wars is a popular game format where teams fight to destroy each other’s bed while protecting their own. In our instance, teams started on separate islands, with currency spawners between them in no-man’s-land. Agents could build bridges to cross between islands and buy upgrades using currency collected in the center of the map.
A team wins by destroying the opposing side’s bed, then killing their remaining players. As long as a team’s bed is present, players respawn after dying. Once a team’s bed is destroyed, their players no longer respawn, meaning their next death eliminates them from the match. This may seem complicated, but think of the team’s main objective as defending their bed and destroying their opponent’s. That said, if no beds were destroyed in a given match, the team with the most kills won.
In almost every run, the GPT agents were much more aggressive and coordinated in their strategies to destroy the Claude team’s bed. This was an inherently riskier strategy vs. Claude’s more defensive posture that tried to win by kill count.
Takeaways
The two teams had very different communication styles. GPT almost immediately started using truncated forms of speech: “First leg complete x32 z9..24 y100.” Claude signed its name and said "we" (30% of messages, against GPT's 5%). GPT sent 5-30x more messages. Its most-messaged player got 198–368 DMs a game; Claude's got 11–48.
GPT agents came up with much more aggressive and elaborate strategies. They would storm the center platforms and farm currency, then use those upgrades to relentlessly attack the other team using constructed bridges, ranged weapons, and Ender Pearls for teleportation. The agents also wrote scripts that chained actions together, like Felix’s one-line command that ate a golden apple, equipped an ender pearl, aimed and threw it.
Claude worked out that they’d win on kills if both beds stood, and stopped attacking. The downside was that if a GPT agent got through and broke the bed, the game was effectively lost for the Claudes. In GPT's three wins in the last two series, it broke Claude's bed with about three minutes left. Claude was ahead on kills 63–16, 57–19, and 59–24.
An interesting moment arrived after the GPT team broke their opponent’s bed. Instead of launching into a Hail Mary offensive, their private reasoning showed a re-entrenchment as they shifted to an even more defensive posture.
Ender pearls could be bought and used to teleport to wherever they’re thrown. An overthrown ender pearl would drop GPT agents onto a floor about 160 blocks below the arena. They scavenged there and built towers back up, twice right under Claude's bed. They also wrote scripts to automate their climb.
A tool bug stopped block-breaking. GPT diagnosed it and shared workarounds; several Claudes concluded breaking was impossible.
On both teams, similar to the previous Minecraft civilization run, almost everyone DMed whoever was listed first on their directory (Ada on red, Kiri on blue), and that agent became the leader.
Claude wrote lessons in private memory files and repeated the mistakes anyway. GPT left its memory files empty and broadcast warnings by DM.
Mindustry
Game replay:
- Click “AI-generated transcript analysis” to view an analysis of the team discussions, strategies, etc. for each game!
- Use the panel on the right (tabs “Claude chat”, “GPT chat” and “Agents”) to watch a team or a specific agent’s live chat and transcripts in sync with the timeline.
- Use the + and - buttons on the map to zoom in and watch them up close.
The GPTs (GPT-6.1 Sol in Codex) won 6-1 against the Claudes (Claude Opus 5.5 in Claude Code) in the 7 games. The series ran for about 9.5 hours, with game 3 being the most intense and closest at 4 hours 16 minutes. Outside of the last two games, where the Claudes were more defeated, most of the other games were very close, with the swarms adapting and iterating their strategies each game.
The setup
Mindustry is an open source game by Anuken. Full credit to him for the amazing game and letting it be open source for cool experiments like this!
It’s a factory-building game with tower defense and real-time strategy: you mine resources, build conveyor supply chains and factories, and turn that economy into turrets and an army. In its PvP mode, which we used, two teams race to build the stronger economy and military and destroy the other team’s core.
This makes it a great environment for testing multi-agent dynamics. Mindustry is 2D, so it can be played easily by agents, is replayable, and is prone to adversarial pressures that can test these swarms under competitive social conditions that they may face in the real world.
We structured the simu
Auto-fetched and translated by AI Gem Box. All rights belong to the original author.