指南

如何制作 Minecraft 小游戏插件

更新于 2026年10月18日

小游戏插件按局运行:玩家在大厅等待,倒计时开始,游戏按自己的规则进行,有人获胜,竞技场重置,准备下一局。从掘一死战(spleef)到起床战争,每个小游戏都是同一个骨架。把骨架做对,游戏规则就是简单的部分了。

从这个示例开始,修改规则。

用 Codexe 生成这个

分步说明

  1. 1.写下一局的规则

    多少名玩家,一局如何开始和结束,怎样算赢,死亡后会怎样(淘汰、重生、旁观),以及玩家开局时获得什么。

  2. 2.规划竞技场设置

    用管理命令创建竞技场,并设置大厅、出生点和边界,例如 /mg create <name> 和 /mg setspawn <name>。竞技场保存在文件中,重启后依然存在。

  3. 3.定义游戏状态

    等待、开始中(倒计时)、进行中和结束。每个状态允许的事情不同:大厅里谁都不能破坏方块,正在进行的游戏谁都不能加入。

  4. 4.决定竞技场如何重置

    记录并还原这一局中改变的方块,或者重新加载一份模板世界的副本。不重置的话,第二局就会在一张被破坏的地图上开始。

  5. 5.加上玩家能看到的内容

    侧边计分板显示剩余玩家和时间,用 Boss 血条或标题显示倒计时,并在聊天中提示击杀和获胜者。

  6. 6.生成、构建并玩一局

    把它描述给 Codexe,等它编译完成,然后用“立即试用”加入测试服务器。测试时把最少玩家数设低一些,这样一局才能开始。

游戏状态

大多数小游戏 bug 都是玩家在错误的状态下做了某件事。在需求中写明各个状态,AI 就会围绕它们来构建插件。

状态发生什么常见规则
等待玩家加入大厅无伤害,不能破坏方块,可通过物品或命令离开
正在启动达到最少人数后开始倒计时玩家离开导致人数低于最少人数时,倒计时停止
进行中游戏规则生效不能加入,死亡即淘汰或重生,退出视为失败
结束宣布获胜者,发放奖励几秒后送回玩家,重置竞技场

重置竞技场

  • 记录并还原改动:在每个方块于本局中被改变之前保存它,结束时放回去。适合玩家只破坏或放置少量方块的小型竞技场,速度很快。
  • 模板世界:保留一份干净的地图副本,一局结束后卸载玩过的世界,再用模板覆盖它。对会被毁掉的地图来说,简单又可靠。
  • 不允许改动:对于跑酷或 PvP 单挑这类游戏,直接取消所有方块改动,就什么都不需要重置。

描述示例

“一个 Paper 1.21.4 掘一死战(spleef)小游戏插件。管理员用 /spleef create <name>、/spleef setlobby 和 /spleef setfloor(雪地面的两个角)创建竞技场。玩家用 /spleef join <arena> 加入。有 2 名玩家加入后 15 秒开始一局,最多 8 人。玩家获得一把钻石锹,能瞬间破坏雪块,掉到地面以下即被淘汰。最后留下的玩家通过 Vault 赢得 50 金币。被淘汰的玩家变为旁观者。每局结束后恢复雪地面。侧边栏显示剩余玩家和时间。竞技场保存在 arenas.yml 中,最少玩家数和奖励在 config.yml 中。”

测试小游戏

光看代码很难判断一个小游戏好不好:你得玩上一局。“立即试用”会启动一个对应你版本的私人 Paper 服务器并装好插件,通常是超平坦世界,把朋友加入“服务器访问权限”名单后他们也能进来。免费套餐的测试服务器允许 2 人,Pro 5 人,Business 10 人,Enterprise 20 人。

要求把最少玩家数放进 config.yml,这样测试时可以设为 1 或 2。测试玩家也可以加入,运行加入命令和管理命令并检查消息,在你上手玩之前就能发现坏掉的命令。

常见问题

一个竞技场还是多个?

一开始就要求支持多个竞技场。之后再把单竞技场插件改成多竞技场,就得重写玩家和游戏状态的存储方式。

能做 1.8 PvP 小游戏吗?

能。在需求中写明 Spigot 或 Paper 1.8.8:Codexe 会针对那个旧版 API 编写代码,测试服务器支持 1.8 到 26.3 的版本。

小游戏群组服是怎么运作的?

大型群组服把每个游戏放在自己的服务器上,前面是 BungeeCord 或 Velocity 代理,再由一个大厅服务器把玩家送进空闲的游戏。这就是一个代理端插件加一个游戏插件,分成两个项目。

构建你的小游戏

这条提示词打开后即可直接发送:

“一个 Paper 1.21.4 掘一死战(spleef)小游戏插件:用 /spleef create、setlobby 和 setfloor 创建竞技场,玩家用 /spleef join 加入,2 名玩家加入后 15 秒开局(最多 8 人),钻石锹,掉到地面以下即淘汰,最后一名玩家通过 Vault 赢得 50 金币,被淘汰玩家变为旁观者,每局后恢复雪地面,侧边栏显示剩余玩家和时间,竞技场保存在 arenas.yml 中。”

用 Codexe 生成这个
如何制作 Minecraft 小游戏插件 | Codexe