- 版权类型
- 原创
- 插件中文名称
- 自定义进度
- 插件英文名称
- CustomAdvancement
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- 其他核心
- 语言支持
- 中文(简体)
- 前置组件
- UltimateAdvancementAPI https://www.spigotmc.org/resources/ultimateadvancementapi-1-15-1-21-4.95585/
【非必须】ItemsAdder https://www.spigotmc.org/resources/%E2%9C%A8itemsadder%E2%AD%90emotes-mobs-items-armors-hud-gui-emojis-blocks-wings-hats-liquids.73355/
【非必须】CraftEngine https://github.com/Xiao-MoMi/craft-engine
【非必须】MythicMobs https://mythiccraft.io/index.php?resources/mythicmobs.1/
【非必须】MMOitems https://www.spigotmc.org/resources/mmoitems.39267/
- 适配版本(Java)
- 1.21
- 1.20
欢迎使用 CustomAdvancementPlugin,基于 UltimateAdvancementAPI 和 ItemsAdder,CraftEngine,MythicMobs 开发。允许您创建和管理自定义进度(Advancements),为您的服务器增添更多玩法和挑战。
浏览附件97044
插件的核心配置文件 config.yml 允许您自定义进度页面和子进度的各项参数。以下是一个示例配置结构:
感谢您选择 CustomAdvancementPlugin,祝您的服务器游戏更加丰富多彩!
浏览附件97044
插件特色
- 自定义进度页面与子进度
- 通过简单的配置文件,创建多个进度页面(Advancement Tabs)和各自的子进度(Advancements)。
- 支持自定义图标,使用 ItemsAdder CraftEngine 提供的自定义物品或 Bukkit 原生材质作为进度图标。
- 动态进度管理
- 支持玩家进度的保存与恢复,确保玩家在服务器重载或更新后不会丢失进度。
- 提供命令接口,允许玩家自主解锁或撤销进度,管理员也可通过命令重载进度配置。
- 高度可配置
- 通过配置文件灵活定义进度的名称、描述、图标、位置以及父子关系,满足各种需求。
- 支持多标签页管理,轻松组织和分类不同类型的进度。
🛠 主要功能
- 加载与注册自定义进度
- 从配置文件中读取进度页面和子进度的定义,动态注册到服务器。
- 支持自定义背景图像,提升界面美观度。
- 进度管理命令
- /cadv create <tab> <advancement>
- 功能:允许玩家解锁指定的子进度。
- 用法:/cadv careate adventure_explorer explore_cave
- /cadv revoke <tab> <advancement>
- 功能:允许玩家撤销指定的子进度。
- 用法:/cadv revoke adventure_explorer explore_cave
- /cadv reload
- 功能: 重载进度。
- /cadv list
- 功能:显示进度列表。
- /cadvtrigger <name> <事件类型> <数据>
- /cadv create <tab> <advancement>
配置指南
插件的核心配置文件 config.yml 允许您自定义进度页面和子进度的各项参数。以下是一个示例配置结构:
YAML:
# 自定义进度系统配置文件
tabs:
survival:
background: textures/block/dirt.png
root:
name: "生存之旅"
description: "开始你的冒险"
material: "default:topaz"
x: 0 # 根进度的 X 坐标
y: 10 # 根进度的 Y 坐标
advancements:
# 第一层:基础开始
first_join:
name: "初来乍到"
description: "首次加入服务器"
material: COMPASS
x: 1
y: 10
parent: null
triggers:
- "player_join"
# 第二层:基本技能分支
mine_stone:
name: "石工"
description: "挖掘石头"
material: STONE_PICKAXE
x: 2
y: 13
parent: "first_join"
triggers:
- "block_break:STONE"
level_up:
name: "成长"
description: "达到10级"
material: EXPERIENCE_BOTTLE
x: 2
y: 7
parent: "first_join"
triggers:
- "player_level_up:10"
good_night:
name: "晚安"
description: "睡个好觉"
material: RED_BED
x: 2
y: 10
parent: "first_join"
triggers:
- "player_bed_enter"
# 第三层:技能进阶
catch_fish:
name: "钓鱼大师"
description: "钓上一条鱼"
material: FISHING_ROD
x: 3
y: 12
parent: "mine_stone"
triggers:
- "player_fish:COD"
sheep_shearer:
name: "剪羊毛"
description: "剪一只羊"
material: SHEARS
x: 3
y: 14
parent: "mine_stone"
triggers:
- "player_shear:SHEEP"
dog_tamer:
name: "驯犬师"
description: "驯服一只狼"
material: BONE
x: 3
y: 6
parent: "level_up"
triggers:
- "player_tame:WOLF"
enchanter:
name: "附魔师"
description: "附魔一件物品"
material: ENCHANTING_TABLE
x: 3
y: 8
parent: "level_up"
triggers:
- "player_enchant"
# 第四层:进阶技能
hello_world:
name: "你好,世界"
description: "在聊天中说出'hello'"
material: PAPER
x: 4
y: 12
parent: "catch_fish"
triggers:
- "player_chat:hello"
tool_breaker:
name: "工具磨损"
description: "用坏一件工具"
material: WOODEN_PICKAXE
x: 4
y: 14
parent: "sheep_shearer"
triggers:
- "player_item_break"
golden_apple:
name: "奢侈品"
description: "食用一个金苹果"
material: GOLDEN_APPLE
x: 4
y: 6
parent: "dog_tamer"
triggers:
- "player_consume:GOLDEN_APPLE"
sharpness_master:
name: "锋利大师"
description: "获得锋利V附魔"
material: DIAMOND_SWORD
x: 4
y: 8
parent: "enchanter"
triggers:
- "player_enchant:sharpness:5"
# 第五层:世界探索
nether_explorer:
name: "地狱探险家"
description: "进入下界"
material: NETHERRACK
x: 5
y: 6
parent: "golden_apple"
triggers:
- "player_portal:nether"
# 第六层:高级探索
end_traveler:
name: "末地旅行者"
description: "抵达末地"
material: END_STONE
x: 6
y: 6
parent: "nether_explorer"
triggers:
- "player_portal:end"
# 第七层:终极挑战
dragon_slayer:
name: "龙之终结者"
description: "击杀末影龙"
material: DRAGON_HEAD
x: 7
y: 6
parent: "end_traveler"
triggers:
- "kill_dragon"
wither_killer:
name: "凋灵杀手"
description: "击杀凋灵"
material: WITHER_SKELETON_SKULL
x: 7
y: 5
parent: "end_traveler"
triggers:
- "kill_wither"
# 第八层:终极成就
raid_defender:
name: "村庄守卫者"
description: "击退一次袭击"
material: EMERALD
x: 8
y: 5
parent: "wither_killer"
triggers:
- "player_raid_win"
custom:
background: textures/block/obsidian.png
root:
name: "自定义任务"
description: "完成特殊任务"
material: WRITABLE_BOOK
advancements:
quest_completed:
name: "首个任务"
description: "完成第一个任务"
material: BOOK
x: 0
y: 0
parent: null
triggers:
- "custom:quest_1"
hidden_treasure:
name: "寻宝者"
description: "找到隐藏的宝藏"
material: CHEST
x: 0
y: 1
parent: "quest_completed"
triggers:
- "custom:find_treasure"
boss_hunt:
background: "textures/block/netherrack.png"
root:
name: "神话生物猎人"
description: "击杀各种神话生物"
material: "DRAGON_HEAD"
x: 0
y: 0
advancements:
first_boss:
name: "初试身手"
description: "击杀任意一只神话生物"
material: "IRON_SWORD"
x: 2
y: 0
parent: null
triggers:
- "mythicmob_kill" # 击杀任意神话生物都会触发
commands:
- "say %player% 完成了特殊任务,获得成就【%advancement%】!"
dragon_slayer:
name: "屠龙勇士"
description: "击杀一只神话龙"
material: "DRAGON_HEAD"
x: 4
y: 0
parent: "first_boss"
triggers:
- "mythicmob_kill:SkeletalMinion" # 特定神话生物击杀
demon_hunter:
name: "恶魔猎手"
description: "击杀高等级恶魔"
material: "BLAZE_ROD"
x: 4
y: 2
parent: "first_boss"
triggers:
- "mythicmob_kill:Demon:level:5" # 附加等级条件
faction_hunter:
name: "阵营猎手"
description: "击杀亡灵派系的怪物"
material: "BONE"
x: 6
y: 0
parent: "first_boss"
triggers:
- "mythicmob_kill::faction:Undead" # 指定派系条件
goblin_slayer:
name: "哥布林杀手"
description: "击杀任意哥布林类型的怪物"
material: "STONE_SWORD"
x: 6
y: 2
parent: "first_boss"
triggers:
- "mythicmob_kill:SkeletalMinion" # 部分匹配类型名称也可以生效
example_tab:
background: textures/block/stone.png
root:
name: "冒险的开始"
description: "开始你的MMOItems之旅"
material: DIAMOND_SWORD
x: 0
y: 0
advancements:
find_first_sword:
name: "第一把剑"
description: "获得你的第一把MMOItems剑"
material: IRON_SWORD
parent: example_tab_root
x: 2
y: 0
triggers:
- "mmoitem_pickup:SWORD" # 当玩家拾取SWORD类型的任何MMOItems物品时触发
commands:
- "give %player% minecraft:apple 1" # 可选的奖励命令
find_legendary_axe:
name: "传说之斧"
description: "找到传说中的战斧"
material: DIAMOND_AXE
parent: find_first_sword
x: 4
y: 0
triggers:
- "mmoitem_pickup:SWORD:KATANA" # 当玩家拾取指定ID的MMOItems时触发
commands:
- "give %player% minecraft:golden_apple 3"
own_full_set:
name: "套装收藏家"
description: "拥有一整套传说装备"
material: DIAMOND_CHESTPLATE
parent: find_legendary_axe
x: 6
y: 0
triggers:
- "mmoitem_has:ARMOR:LEGENDARY_HELMET"
- "mmoitem_has:ARMOR:LEGENDARY_CHESTPLATE"
- "mmoitem_has:ARMOR:LEGENDARY_LEGGINGS"
- "mmoitem_has:ARMOR:LEGENDARY_BOOTS"
commands:
- "give %player% minecraft:diamond 10"
- "title %player% title {\"text\":\"套装收藏家成就解锁!\",\"color\":\"gold\"}"
- tabs:定义多个进度页面,每个页面包含背景、根进度和子进度。
- background:进度页面的背景图路径。
- root:根进度的名称、描述和图标材质。
- advancements:定义子进度的名称、描述、图标材质、位置(x, y)以及父进度。
- player_join - 玩家加入服务器
block_break:<材质> - 破坏特定方块
block_place:<材质> - 放置特定方块
entity_kill:<实体类型> - 击杀特定实体
kill_dragon - 击杀末影龙
kill_wither - 击杀凋灵
item_craft:<材质> - 合成特定物品
player_level_up:<等级> - 达到特定等级
player_fish:<材质> - 钓到特定物品
player_shear:<实体类型> - 剪特定实体
player_bed_enter - 上床睡觉
player_portal:<类型> - 使用传送门 (nether/end)
player_tame:<实体类型> - 驯服特定生物
player_enchant:<附魔类型>[:<等级>] - 特定附魔
player_consume:<材质> - 消耗特定物品
player_chat:<关键词> - 聊天包含特定词语
player_advancement:<进度ID> - 完成原版进度
player_item_break:<材质> - 物品损坏
player_raid_win - 击退袭击
custom:<自定义ID> - 自定义事件 - mythicmob_kill:<怪物ID>
- mythicmob_kill 击杀MM怪
- mythicmob_kill:Demon:level:5 附加等级条件
- mythicmob_kill::faction:Undead 指定派系条件
安装步骤
- 下载插件
- 获取最新版本的 CustomAdvancemen.jar 文件。
- 安装依赖
- 确保服务器已安装 UltimateAdvancementAPI 和 ItemsAdder CraftEngine MythicMobs
- 放置插件
- 将 CustomAdvancementjar 放入服务器的 plugins 文件夹中。
- 配置插件
- 启动服务器生成默认配置文件。
- 编辑 plugins/CustomAdvancementPlugin/config.yml,根据需求自定义进度页面和子进度。
- 重启服务器
- 重启服务器以加载插件和配置。
感谢您选择 CustomAdvancementPlugin,祝您的服务器游戏更加丰富多彩!