Crazy Advancements API

Crazy Advancements API - 自定义进度API

强大、轻量级的API,用于以编程方式创建进度系统
Bukkit / Spigot 作者 ZockerAxel 支持版本 1.21 - 1.21
服务器使用量
未统计
服务玩家数
未统计
下载量
18,444
插件详细介绍

CrazyAdvancementsAPI 是一个用于在 Minecraft 服务器上动态创建和管理自定义进度的强大工具。它支持从 1.12 到最新 1.21 的广泛版本,允许开发者或服主在运行时完全自定义进度,而无需创建任何文件或干扰原版系统。

核心功能

此 API 能够在运行时创建、添加、移除、重构和管理自定义进度,并提供以下功能:

  • 为进度设置名称、描述、图标和背景纹理。
  • 完全自定义进度所需的达成条件。
  • 设置进度在界面中的坐标位置。
  • 向所有玩家或特定玩家/玩家组添加进度。
  • 控制哪些玩家可以看见哪些进度(可覆盖原版可见性规则)。
  • 保存和加载特定玩家在特定进度上的进度数据。
  • 设置进度菜单中激活的标签页。
  • 发送弹出式通知(Toast)。
  • 创建事件监听器,用于监听进度标签页的切换或菜单的关闭。

为何选择此 API?

与其他方案相比,CrazyAdvancementsAPI 具有独特优势:

  • 无文件创建:不生成任何进度文件,完全基于 NMS 运行,不会干扰原版或 Spigot 的进度系统。
  • 动态显示:允许在玩家查看进度界面时动态更改进度的显示内容。
  • 灵活的进度保存:提供 API 以获取进度保存字符串,你可以将其存储在任何地方,并在需要时加载回来。
  • 自定义可见性:提供超越原版的进度可见性控制选项。
  • 轻量高效:API 本身非常轻量,这使得它在用途上极为灵活,并保持了最小的文件体积。

安装方法

安装过程非常简单

  • 将插件文件放入服务器的 plugins 文件夹。
  • 重启服务器或使用 /reload 命令重载插件即可。

文档与支持

在线文档

社区与反馈

JSON 进度(非开发者适用)

如果你不是开发者,也可以通过 JSON 文件来创建进度。

文件放置

将你的 JSON 文件放置在以下目录中

<服务器目录>/plugins/CrazyAdvancementsAPI/advancements/<命名空间>/

你可以在命名空间内创建额外的文件夹来进一步组织你的进度结构,就像原版一样。

进度示例

根进度(标签页)

{
"display": {
"icon": "iron_axe",
"title": {
"text": "Tab Name",
"color": "aqua",
"underlined": true
},
"description": {
"text": "Root",
"color": "green",
"bold": true
},
"frame": "task",
"visibility": "always",
"background_texture": "textures/block/yellow_concrete.png"
},
"flags": []
}

子进度

(将 custom_function 替换为一个 .mcfunction 文件名以将其作为奖励,如果不需要奖励,可以完全省略 "reward" 部分)

{
"parent": {
"namespace": "custom",
"key": "root"
},
"display": {
"icon": "stone_sword",
"title": {
"text": "Title"
},
"description": {
"text": "Description"
},
"frame": "challenge",
"visibility": "vanilla",
"x": 5,
"y": 2.5
},
"criteria": {
"action_names": ["thing","another_thing"],
"requirements": [["thing"],["another_thing"]]
},
"reward": {
"name": "custom_function"
},
"flags": [
"SHOW_TOAST",
"DISPLAY_MESSAGE"
]
}
测试支持版本
1.21
版本分布
基本信息
插件名称 Crazy Advancements API
作者 ZockerAxel
平台 Bukkit / Spigot
支持版本 1.21 - 1.21
点赞数 3
最近版本
暂无数据 -