PlayerEngine:Minecraft AI实体化框架
PlayerEngine 是一个服务器端框架,旨在从根本上改变AI NPC在Minecraft中的存在方式。由 Goodbird 开发的这个项目超越了客户端模组的限制,提供了一个强大的工具包,赋予您自定义的生物完整的玩家能力。
这个项目源于超越聊天机器人NPC的噱头,为Player2 AI游戏开发大赛创造真正实体化智能体的愿望。它不是让普通的猪说话,而是赋能开发者创造能够挖掘、战斗、管理物品栏,并以玩家级别与世界互动的实体。
故事:从客户端技巧到真正的框架
PlayerEngine的灵感来自ChatClef,这是Player2开发的一个创新模组,将AI连接到玩家的客户端。虽然具有开创性,但它有一个显著的限制:要拥有AI同伴,必须运行多个Minecraft客户端实例。这既繁琐又不可扩展。
PlayerEngine通过将逻辑移至服务器端,并最关键的是将玩家般的能力与PlayerEntity类本身解耦,解决了这个问题。结果是一个真正的框架,允许任何模组制作者赋予他们自定义的LivingEntity玩家的灵魂。
核心理念:将“玩家”视为接口
PlayerEngine的核心是将“成为玩家”视为一组可以附加到任何生物的能力,而不是特定的实体类型。通过实现几个简单的接口,您的自定义生物将获得:
- 一个持久的、类似玩家的物品栏(
LivingEntityInventory)。 - 与世界互动的能力,破坏方块和使用物品(
LivingEntityInteractionManager)。 - 通过强大的Automatone引擎进行高级路径规划和任务执行。
这使得PlayerEngine成为像Player2 API提供的AI“大脑”的终极“执行器”层。您的LLM可以决定做什么,而PlayerEngine则赋予您的NPC执行的身体。
面向开发者的关键特性
- 🤖 赋能您的生物: 专为模组制作者设计。轻松将您自己的自定义实体转变为类似玩家的智能体。不仅仅是重新设计一个普通生物的外观——赋予您独特的创造物真正的能动性。
- ⛏️ 真实的世界互动: NPC可以挖掘方块、使用工具并与物体互动。(注意:复杂的建造功能尚未支持)。
- 🎒 类似玩家的物品栏: 每个智能体管理自己持久的物品栏,支持复杂的资源收集、合成和工具管理。
-
🧠 无缝的Player2集成: PlayerEngine是Player2 API完美的物理对应物。发送像
@get diamond 5这样的高级命令,观看您的智能体执行一系列复杂任务来实现目标。 - 🛠️ 建立在坚实的基础上:
- 导航: 由Automatone驱动,这是传奇的Baritone路径规划引擎的一个分支。
- 任务系统: 改编自Player2的ChatClef中强大的任务和命令系统。
- 模块化: 使用Cardinal Components来清晰地附加能力,确保高兼容性和易于集成。
为什么PlayerEngine“超越了AI噱头”
- 集成: 它是一个用于深度系统集成的框架。NPC不再仅仅是任务给予者;它们是游戏经济、生态和涌现故事中的积极参与者。
- 护栏: PlayerEngine就是护栏。它提供了一个确定性的、基于游戏逻辑的行动层,可靠地执行来自LLM的高级目标,并具备回退机制和对游戏世界的稳健理解。
- 创造力: 它赋能其他创作者。我们不仅仅是展示一个很酷的NPC;我们正在为整个社区提供一个工具,让他们构建自己的智能同伴、对手和动态故事讲述者。
- 稳定性: 建立在巨人的肩膀上——Baritone和Cardinal Components——PlayerEngine是雄心勃勃的AI项目稳定且高性能的基础。
致谢
这个项目建立在许多人的工作和支持之上。
Player2
这个框架是为Player2 AI游戏开发大赛创建的,旨在与Player2 API无缝集成,实现他们对智能、互动智能体的愿景。
> 我们是一支对推进AI前沿充满热情的研究人员和工程师团队。我们的团队成员曾在一些世界领先的科技公司和研究机构工作,我们因共同的愿景而团结在一起:构建能够以有意义的方式与世界互动的智能体。
基础与灵感
- Automatone / Baritone: PlayerEngine强大的导航功能由Automatone提供,这是传奇的Baritone路径规划引擎的一个分支。
- ChatClef: 强大的任务和命令系统改编自Player2的原始ChatClef模组,该模组证明了AI智能体在Minecraft中的潜力。
特别感谢
- Itsuka: 感谢他对Player2 API的宝贵指导、头脑风暴会议以及严格的测试,这些帮助塑造了今天的PlayerEngine。
作者
PlayerEngine是由Goodbird开发的个人项目。