• 欢迎来到 HiMCBBS 论坛~ 加入QQ群:879016948 获得最新公告,并与群友们一起聊天吹水!
DFL3130

教程 如何制作成就

DFL3130

管理成员
版主
正式成员
搬运组
成员
注册
2024年08月07日
帖子
166
金粒
金粒12,158粒
钻石
钻石0颗
嗨币
嗨币2个

1. 创建成就

  1. 打开 MCreator,进入 "Workspace" 工作区
  2. 点击 "Mod Elements"(模组元素)标签页
  3. 点击 "+" 按钮,选择 "Advancement"(成就)
  4. 输入成就名称,点击 "Advancement" 确认
  5. 调整成就设置(见下文)
  6. 点击 "Next""Finish" 完成

2. 成就显示设置

设置项
说明
GUI 名称成就界面显示的标题(如果是根成就,也会作为标签页名称)
描述说明如何完成该成就
图标成就的显示图标(根成就也会作为标签页图标)
背景如果是新成就路径的根成就,可设置标签页背景
成就类型Task(普通任务)、Goal(长期目标)、Challenge(挑战)
父成就选择该成就所属的上级成就(选 "No parent: root" 创建新路径)
完成时显示弹窗玩家完成时右上角弹出提示
完成时广播聊天栏全服玩家可见的成就完成消息
未完成时隐藏成就未完成时不显示(适合隐藏整个成就路径)
完全隐藏成就即使完成也不显示(仅后台触发)

3. 成就逻辑设置

设置项
说明
奖励经验值玩家完成时获得的经验值
奖励函数完成时执行的函数(如给予效果、生成实体等)
奖励战利品表完成时从指定战利品表中抽取物品
奖励配方解锁玩家未学习的合成配方

4. 设置成就触发条件

方法 1:简单触发器(适合基础条件)

  1. 在成就编辑页面的 "Trigger" 部分设置触发条件
  2. 选择 物品/方块/生物群系/维度 等条件
  3. 保存成就

方法 2:使用 Procedure(适合复杂逻辑)

  1. 在相关模组元素(如物品、生物)的 "Procedure Events" 中添加事件
  2. 选择触发条件(如 "玩家使用物品时"
  3. 添加 "If Do" 块(可选,用于额外条件判断)
  4. 添加 "Add achievement to provided player"(在 Player Procedures 分类下)
  5. 选择你的成就
  6. 保存 Procedure 和模组元素

5. 测试成就

  • 在游戏中输入 /advancement grant @p only <你的成就命名空间>:<成就名称> 手动授予成就
  • 检查弹窗、聊天栏消息和奖励是否正常触发
提示
  • 根成就(无父级)会创建新的成就标签页(类似原版的 "冒险"、"下界" 等)
  • 使用 "Hide if not completed" 可制作隐藏成就(如原版的 "狙击手对决"
  • 复杂成就(如 "同时完成多个任务")必须通过 Procedure 实现
 
后退
顶部