- 注册
- 2024年08月07日
- 帖子
- 166
- 金粒
- 金粒12,158粒
- 钻石
- 钻石0颗
- 嗨币
- 嗨币2个
- 主题 作者
- #1
-
用户
1. 创建成就
- 打开 MCreator,进入 "Workspace" 工作区
- 点击 "Mod Elements"(模组元素)标签页
- 点击 "+" 按钮,选择 "Advancement"(成就)
- 输入成就名称,点击 "Advancement" 确认
- 调整成就设置(见下文)
- 点击 "Next" → "Finish" 完成
2. 成就显示设置
设置项 | 说明 |
---|---|
GUI 名称 | 成就界面显示的标题(如果是根成就,也会作为标签页名称) |
描述 | 说明如何完成该成就 |
图标 | 成就的显示图标(根成就也会作为标签页图标) |
背景 | 如果是新成就路径的根成就,可设置标签页背景 |
成就类型 | Task(普通任务)、Goal(长期目标)、Challenge(挑战) |
父成就 | 选择该成就所属的上级成就(选 "No parent: root" 创建新路径) |
完成时显示弹窗 | 玩家完成时右上角弹出提示 |
完成时广播聊天栏 | 全服玩家可见的成就完成消息 |
未完成时隐藏 | 成就未完成时不显示(适合隐藏整个成就路径) |
完全隐藏成就 | 即使完成也不显示(仅后台触发) |
3. 成就逻辑设置
设置项 | 说明 |
---|---|
奖励经验值 | 玩家完成时获得的经验值 |
奖励函数 | 完成时执行的函数(如给予效果、生成实体等) |
奖励战利品表 | 完成时从指定战利品表中抽取物品 |
奖励配方 | 解锁玩家未学习的合成配方 |
4. 设置成就触发条件
方法 1:简单触发器(适合基础条件)
- 在成就编辑页面的 "Trigger" 部分设置触发条件
- 选择 物品/方块/生物群系/维度 等条件
- 保存成就
方法 2:使用 Procedure(适合复杂逻辑)
- 在相关模组元素(如物品、生物)的 "Procedure Events" 中添加事件
- 选择触发条件(如 "玩家使用物品时")
- 添加 "If Do" 块(可选,用于额外条件判断)
- 添加 "Add achievement to provided player"(在 Player Procedures 分类下)
- 选择你的成就
- 保存 Procedure 和模组元素
5. 测试成就
- 在游戏中输入
/advancement grant @p only <你的成就命名空间>:<成就名称>
手动授予成就 - 检查弹窗、聊天栏消息和奖励是否正常触发
提示:
- 根成就(无父级)会创建新的成就标签页(类似原版的 "冒险"、"下界" 等)
- 使用 "Hide if not completed" 可制作隐藏成就(如原版的 "狙击手对决")
- 复杂成就(如 "同时完成多个任务")必须通过 Procedure 实现