Hello! 欢迎来到WaterMoon!

从零开始玩转Chemdah任务系统 & NPC对话!手把手教你用Adyeshach搞事情


avatar
Yu123 2025-02-23 371

🛠️ 准备工作:插件全家桶

  1. 必装插件
    • Chemdah(核心)
    • Adyeshach(NPC生成器)
    • PlaceholderAPI(变量必备)
    • 可选:Residence(领地限制任务)、Vault(经济奖励)
  2. 基础操作
    • /npc create <名字>生成Adyeshach的NPC,记住它的UUID(后续要绑定任务!)
    • Chemdah的配置文件在/plugins/Chemdah里,任务和对话都是YAML格式,别手抖写错缩进!

🎯 第一部分:Chemdah任务系统实战

1️⃣ 基础任务配置:让NPC发个「杀10只僵尸」任务

# plugins/Chemdah/quests/kill_zombie.yml
quests:
  zombie_killer:
    name: "丧尸围城!救命!" # 任务标题
    objectives: # 任务目标
      kill_zombie:
        type: ENTITY_KILL # 类型:击杀实体
        entity: ZOMBIE # 僵尸
        amount: 10 # 杀10只
    rewards: # 奖励
      - type: MONEY # 给钱
        amount: 100
      - type: MESSAGE # 发个恭喜消息
        message: "恭喜!你获得了[丧尸克星]称号!"

2️⃣ 绑定到Adyeshach的NPC

# 在Adyeshach的NPC交互设置里添加:
- type: CHEMDAH_QUEST # 触发Chemdah任务
  value: 
    quest: zombie_killer # 对应任务ID
    action: START # 点击NPC接任务

效果:玩家右键NPC → 接任务 → 杀满10僵尸 → 自动领奖励!


💬 第二部分:让NPC和你唠嗑!Chemdah对话系统

1️⃣ 基础对话树:NPC的碎碎念

# plugins/Chemdah/conversations/old_man.yml
conversations:
  village_guide:
    scenes: # 对话场景
      start: # 初始对话
        messages: # NPC说的话
          - "年轻人,村口的野猪最近好猖狂,能帮帮我吗?"
        choices: # 玩家选项
          - "没问题!": "accept_quest"
          - "下次一定!": "bye"
      accept_quest:
        messages:
          - "太感谢了!这是给你的奖励!"
        actions: # 触发任务
          - type: QUEST
            quest: kill_pig
            action: START
      bye:
        messages:
          - "唉...现在的年轻人啊..."

2️⃣ 让Adyeshach的NPC激活对话

# 在Adyeshach的NPC设置中添加对话触发:
- type: CHEMDAH_CONVERSATION
  value: village_guide # 对应对话ID

效果:右键NPC → 弹出选项 → 选择不同分支触发任务或吐槽!


🚀 高阶玩法:任务进度对话 & 条件限制

1️⃣ 根据任务进度切换NPC对话

# 在对话场景中添加条件
scenes:
  check_progress:
    conditions: # 条件判断
      - type: QUEST_OBJECTIVE # 任务进度
        quest: kill_pig
        objective: kill_pig
        operator: ">="
        value: 5
    messages:
      - "你已经杀了5只野猪了,加油!"

2️⃣ 只有特定领地才能接任务

# 在任务文件中添加限制
quests:
  kill_pig:
    conditions:
      - type: RESIDENCE # 需要站在领地内
        area: "farmland"

🔥 常见问题急救包

  • Q:NPC不显示对话?
    A:检查Adyeshach的交互事件是否绑定了正确的Conversation ID!
  • Q:任务完成了没反应?
    A:用/chemdah debug开启调试模式,看日志报错!
  • Q:如何让NPC说话带变量?
    A:用PlaceholderAPI,比如message: "你好,%player_name%!"

 

结语
Chemdah+Adyeshach的组合拳能让你的服务器剧情感拉满!赶紧复制上面的代码去调戏NPC吧~ 遇到问题欢迎在评论区拍砖,看到必回!✨

(教程代码经过1.18.2版本实测,其他版本可能需要微调,动手前记得备份!)

 

自动发卡此卡密价格为0软妹币立即购买

暂无评论

当前仅支持登录后发布评论