- 版权类型
- 原创
- 插件中文名称
- NPC对话
- 插件英文名称
- NPCDialogue
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- 语言支持
- 中文(简体)
- 前置组件
- 无
- 适配版本(Java)
- 1.21
- 1.20
- 支持 NPC 与玩家的多步骤对话流程
- 首次交互与非首次交互可配置不同对话内容
- 对话中可插入选择分支(如职业选择),玩家点击选项即可触发对应逻辑
- 发送带颜色的文本消息(SEND)
- 播放游戏内声音(SOUND)
- 等待指定时间(WAIT)
- 执行玩家命令、OP 命令或控制台命令(COMMAND/COMMANDOP/COMMANDCMD)
- 给予玩家药水效果(EFFECT)
- config.yml:定义对话内容,包括:
- 对话 ID 及对应的对话序列
- 首次交互专属对话
- 选择分支的文本和对应执行逻辑(如物品给予、效果赋予)
- 数据存储:使用 data.json 记录玩家是否已完成首次交互
- /nd <对话ID>:玩家触发指定 ID 的对话
- /nd reload:重载配置和数据(需要权限)
- /nd choose <选项>:玩家选择对话中的分支选项
JavaScript:
dialogue:
1:
dialog:
- 'SEND: &r'
- 'SEND: &r'
- 'SEND: :avt_daisy: 黛西 &8(DAISY) '
- 'SEND: &r'
- 'SEND: &r &7欢迎回来,&f%player_name%&7!'
- 'SEND: &r &7我帮你打开&f菜单&7。'
- 'SEND: &r &7也可按下&f:shift: + :f_key: &7 或命令 &f/cd&7'
- 'SEND: &r'
- 'SEND: &r'
- 'SEND: &r&l点击这里访问教程:www.kimonomc.com/zh/guide'
- 'SOUND: entity.villager.yes,1,1'
- 'COMMANDOP: dm open serverguide_menu' # 再次对话时自动执行打开菜单命令
first-interaction:
- 'SEND: &r'
- 'SEND: &r'
- 'SEND: :avt_daisy: 黛西 &8(DAISY) '
- 'SEND: &r'
- 'SEND: &r &7很高兴认识你!我会先教你&f打开菜单&7的方法。'
- 'SEND: &r &7按下&f:shift: + :f_key: &7 或命令 &f/cd&7'
- 'SEND: &r'
- 'SEND: &r'
- 'SEND: &r'
- 'SOUND: entity.villager.yes,1,1'
- 'EFFECT: slowness, 10s, 10' # 给玩家短暂加速方便移动
- 'EFFECT: jump_boost, 10s, 255'
- 'WAIT: 8'
- 'COMMANDOP: scoreboard players set %player_name% quest1_task1 2'
- 'COMMANDOP: scoreboard players set %player_name% quest2 1'
- 'SEND: &r'
- 'SEND: &r'
- 'SEND: :avt_daisy: 黛西 &8(DAISY) '
- 'SEND: &r'
- 'SEND: &r &7你已经学会了打开菜单的方法,现在请你进行一次&f随机传送&7。'
- 'SEND: &r &7我会在另一个世界等着你。'
- 'SEND: &r'
- 'SEND: &r'
- 'SEND: &r'
- 'SEND: &r'
- 'SOUND: entity.villager.yes,1,1'
# 首次对话结束后无需选择,故不设置选择项
github地址:https://github.com/Kimonomc/NPCDialogue