CrazyCrates — 在Minecraft中添加自定义抽奖箱和奖励箱的插件
CrazyCrates允许您在Minecraft服务器中添加具有各种动画、实体和虚拟钥匙以及基于权重的概率系统的奖励箱。
CrazyCrates允许您在Minecraft服务器中添加具有各种动画、实体和虚拟钥匙以及基于权重的概率系统的奖励箱。
CrazyCrates — 在Minecraft中添加自定义抽奖箱和奖励箱的插件
CrazyCrates 允许您向 Minecraft 服务器添加抽奖箱(crates)。每个抽奖箱都是世界中的一个方块或菜单中的一个位置,玩家用钥匙打开它即可获得随机奖品。该插件提供 11 种不同类型的动画,两种类型的钥匙 — 实体钥匙(物品栏中的物品)和虚拟钥匙(存储在数据库中) — 以及基于权重而非百分比的概率系统。该插件免费发布。

主菜单 /crates,在物品栏中以物品形式显示抽奖箱
抽奖箱类型
服务器上的每个抽奖箱都是 crates/ 文件夹中一个独立的 .yml 文件。文件具有 CrateType 参数,用于确定打开的动画。
在首次启动时,插件会生成 6 个现成的示例,涵盖了 5 种已确认的类型。您可以使用 /crazycrates forceopen <文件名> <昵称> 命令在没有钥匙的情况下打开其中任何一个进行测试。

所有可用的基础抽奖箱
Scroll - 物品栏中会出现一条水平的物品条带,它会滚动、逐渐变慢并停在中间的获奖物品上。这种类型被两个示例使用 — CrateExample.yml 和 AdvancedExample.yml。

CrateExample 的执行 — 水平的物品条带滚动并停在获奖者上
Cosmic — 物品栏中会出现几个奖品供您选择。玩家点击他们想拿走的那一个。如果 10 秒内未选择任何内容,插件将自动发放一个奖品。Casino — 带有等级(tiers)的抽奖箱。动画首先确定等级,然后在其中确定特定的奖品。
QuadCrate — 打开时,玩家周围的世界会生成四个实体的抽奖箱方块。玩家靠近每一个并依次打开 — 每个提供一份单独的奖品。
Wonder — 出现一个装满物品的窗口,物品逐渐从中消失;剩下的那一个将是奖品。
钥匙
每个抽奖箱都使用自己的钥匙。实体钥匙 — 是一种常规物品,具有自定义外观、名称和描述(lore),玩家将其保存在自己的物品栏中。虚拟钥匙不占用空间 — 它存储在插件的数据库中,并与玩家的账户绑定。
默认情况下,实体抽奖箱方块接受这两种类型。可以在 config.yml 中为每种组合单独更改行为。
如果在收到钥匙时玩家的物品栏已满,插件会根据设置将其转换为虚拟钥匙或将其扔在地上。尝试在没有钥匙的情况下打开抽奖箱会将玩家击退。
管理员甚至可以给予和拿走离线玩家的钥匙,通过单个命令一次向所有在线玩家分发钥匙,或者从所有可用的抽奖箱中给予一把随机钥匙。具有适当权限的玩家可以将其虚拟钥匙转移给其他人。

抽奖箱的实体钥匙 — 带有自定义描述的物品
概率系统
每个奖品的概率不是由百分比决定的,而是由权重 — 抽奖箱文件中的 Weight 参数决定的。权重值越高,奖品掉落的频率越高;权重值越低,掉落的频率越低。
最大范围是抽奖箱中所有权重的总和。如果三个奖品的权重分别为 10、15 和 25,则范围为 50。第一个奖品的几率为 20%,第二个 — 30%,第三个 — 50%。
这种方法优于百分比的优点:无需确保总和不超过 100。您可以简单地设置相对值并添加新奖品,而无需重新计算其余的概率。
指令
主插件命令是 /crazycrates,别名有 /crates 和 /cc。玩家只能访问 /keys(查看他们的钥匙)和 /crates(打开菜单)。
管理命令:
/crazycrates give和/crazycrates take— 给予或拿走特定玩家的钥匙,包括离线玩家。/crazycrates giveall— 同时向所有在线玩家分发钥匙。/crazycrates forceopen— 无需钥匙,免费为玩家打开抽奖箱。/crazycrates editor— 世界中的抽奖箱放置模式:指向一个方块并将抽奖箱绑定到它上面。/crazycrates debug— 一次收到抽奖箱的所有奖品以测试设置。/crazycrates mass-open— 一次性大量打开指定数量的抽奖箱。/crazycrates reload— 重新加载所有配置而无需重新启动服务器。/crazycrates migrate— 从其他插件导入抽奖箱或转换旧文件格式。
权限分为三个通配符:crazycrates.players.*(玩家)、crazycrates.admin.*(管理员)、crazycrates.schematic.*(使用 schematics 工作)。可以通过单独的权限将玩家排除在大规模 /giveall 分发之外。
配置
所有插件文件都位于 plugins/CrazyCrates/ 文件夹中。主要的是 config.yml,其中集中了全局服务器设置。抽奖箱存储在 crates/ 子文件夹中 — 每个抽奖箱位于一个单独的文件中。examples/ 文件夹包含开发人员的示例,但您不应该编辑它们:在每次 /crazycrates reload 时,它都会被完全覆盖。所有消息文本都被提取到 messages.yml 并单独编辑。
在 config.yml 中,您应该注意几件事。如果服务器上安装了 DecentHolograms、FancyHolograms 或 CMI,抽奖箱上方的全息图会自动出现 — 插件本身会捕获它们。如果没有,就根本没有全息图。给玩家的消息可以定向到聊天框或快捷栏(action bar) — 取决于服务器的设置。控制台和文件的钥匙及抽奖箱操作日志记录是分别启用的;文件日志在重启时将被存档到 zip 中。
每个抽奖箱都在其自己的文件中配置。除了动画类型和奖品列表之外,它还定义了实体钥匙的外观、方块上方的全息图文本、预览窗口的大小和设计、滚动期间和完成时的声音,以及在结果不令人满意时重新随机(reroll)奖品的可能性。
结论
CrazyCrates 为赞助商店和生存模式中的游戏进度添加了动画系统。在积极编辑时,基于权重的概率系统比百分比更方便 — 无需每次都重新计算整个列表。
对于具有赞助系统的 PvP 和生存服务器,CrazyCrates 是一个方便的选择。对于只需要一个没有动画的抽奖箱的简单服务器来说,QuickCrate 和最少的配置就足够了。
安装
一次典型安装大约 5 分钟。流程相同,只是 Loader 和对应构建不同。
- 1Stop your Minecraft server.
- 2Drop the plugin .jar into the server /plugins folder.
- 3Start the server once so the plugin generates its config files.
- 4Edit /plugins/<name>/config.yml as needed, then run /reload confirm or restart.











