本篇教程来自MC百科(mcmod.cn) 未经允许禁止转载。

注:出现[]表示打开选项后出现字,当对话中输入【@name】会显示该NPC名字,【@sp】会显示对话玩家名字,输入[(模组名字|原版):(指定物品名)]会显示该物品图案如:[minecraft:egg]会显示出鸡蛋)

Answers回答

回答,需要添加对话,触发对话时,会使用添加的对话(在第一次触发对话时,不显示Display name[选择对话的按钮],可设置Conditions和Actions

Conditions条件

触发对话前需要满足的条件,不然不会显示回答,点击出现以下选项:

npc variable npc变量

主要针对于该NPC

[Variable name 变量名字]:(通常是任务)

[Operator 运算符] 可设置为:【EQUALS等于 DIFFERENT不等于 GREATER大于 LESSER小于】

[Value 值]:(要求大于|小于|等于|不等于,该设置值不到达条件无法出现对话,玩家数值默认为0,只能编辑者通过设置Actions中的npc variable才能改变数值)

Global variable 全局变量

[Variable name 变量名字]:(通常是任务)

[Operator 运算符] 可设置为:【EQUALS等于 DIFFERENT不等于 GREATER大于 LESSER小于】

[Value 值:]

【主要针对全局,比如一个玩家在某些NPC做过某些任务后设置了某些数值,不达到设置某些数值条件后他就无法再从别的NPC再做同一种任务】

Score value 计分板数值

[Score name 分数名]:

[Operator 运算符] 可设置为:【EQUALS等于 DIFFERENT不等于 GREATER大于 LESSER小于】

[Value 值:]

【编辑选项差不多,针对于计分板,Score name输入指定计分板名称】 

Reputation 声望

选项差不多,要求在某些阵营的声望

[Faction name 队伍名字]:

[Operator 运算符]:可设置[EQUALS等于 DIFFERENT不等于 GREATER大于 LESSER小于]

[Value 值]:

已知阵营

【Inquisition】宗教裁判所阵营,与npc阵营友好

【npc】竞技场经理,木头人和创造玩家使用物品生成cq_npc的阵营

【npc_mercenary】平原村庄阵营(市场和旅馆)

【Witches】章鱼哥村庄与Inquisition敌对

【npc_Orcs】沙漠村庄

【Orcs】沙漠村庄兽人,与Inquisition敌对

【mob_undead】亡灵

【mob_walke】深渊漫步者

【mob_gremlin】大猩猩

【mob_pirate】海盗

【mob_minotaur】牛人,与亡灵敌对

【npc_Inquisition】宗教裁判所阵营

【mob_arena】竞技场怪物阵营

Item on inventory 物品库存

你的背包要有指定物品才能解锁对话。

[Name]:

(This condition will pass if the selected item is on player inventory

Sintax:itemName ammount damage {tags})

名字:

如果所选物品在玩家物品栏中,则此条件将通过

语法:物品名称,数量,附加值{标签}

On team 在队伍中

要求在某些队伍中,玩家使用scoreboard指令创建要求队伍然后再加入进去也是可以通过条件的,包括已有的阵营。

[Team name] (计分板)队伍名字):

Command 命令

[Command]:

[Operator]:可设置[EQUALS等于 DIFFERENT不等于 GREATER大于 LESSER小于]

[Value]:

(Executes a testfor command and compares the result whit value)

执行testfor命令并将结果与值进行比较

当你输入的不恰当的指令时:

you must specify which player you wish to perform this action on

你必须指定要在哪个玩家上执行此操作

Kill Counter 杀敌数

/CQKillCounter 玩家名 再按TAB补全可查看该玩家的杀敌计时器

[KillCounter]:(写出你要指定的杀敌计数器名称)

[Operator]:可设置[EQUALS等于 DIFFERENT不等于 GREATER大于 LESSER小于]

[Value 值]:

Nearby entity 附近的实体

[Name]:

[Radio]:(检测距离,以该NPC为中心检测半径为*格的实体)

This condition will pass if there are any nearby entities with the specified id and data sintax is ENTITY_ID{ENTITY_DATA},use:chocolateQuest.CQ_npc {nameID:"innkeeper"} to search a nearby NPC tagged as innkeeper

【下面的小字】如果附近有具有指定ID和数据的实体,则此条件将通过如果有任何具有指定ID和数据的实体,则该条件将通过,语法为:

ENTITY_ID {ENTITY_DATA},

示例:chocolateQuest.CQ_npc {nameID:“ innkeeper”}}搜索附近标记为innkeeper的NPC

Timer 计时器

[Name]:你指定的计时器名称

[Operator 运算符]: 可设置为:【EQUALS等于 DIFFERENT不等于 GREATER大于 LESSER小于】

[Time 时间]:

Checks if the timer with selected name has (operation) value than the value specified

检测具有选定名称的计时器的(操作)值是否大于指定的值

Actions 执行事件

触发某种对话时,该NPC会执行设定的事件,可额外增加条件,如未满足条件时,则不会执行事件但你仍然可以对话

Open shop 打开商店

你可以编辑商店。

注:买东西不要按下中键,你的物品会减少可是买的物品却没有得到,编辑完交易不要乱装模组,因为增加模组会使物品ID的变更

Open item upgrade 打开装备升级

[Upgrade type 升级类型]:可设置为

Enchantment附魔

Blacksmith铁匠(适于近战武器装备)

Gunsmith军火商(枪械)

Staff enchantment魔法法杖 

Armor enchantment魔法护甲(适于特殊护甲,如公牛套,女巫帽)

[Max level 最大等级]:(附魔到达一定的等级,将会无法附魔)

Open inventory 打开装备栏

可设置Equipement(他的装备)/inventory(物品栏,奖章可以左键点击进入,如是通过对话进入,打开后你会暂时无法和该npc对话,当你离他至少大于5m距离或找其他npc对话就可以了)

Join team 加入队伍

将玩家添加到指定名称的计分板队伍中

Adds the player to the team with the specified name

NPC variable NPC变量

[Variable 变量]:随便取名字

[Operator 运算符] 可设置为:【ADD 添加 SUBSTRACT减少 SET设置为】

[Value 值]:

Only the owner NPC has access to this variable @sp in name will be replaced by the name of the player speaking to. so you can use @sp in the name to create player related variables.

Don't use special chars (+,-,/,*,<,>,=)as variable names.

只有拥有者NPC有权使用名称中的此变量@sp替换为讲话玩家的名字. 因此您可以在名称中使用@sp来创建与玩家相关的变量.

请勿使用特殊字符(+,-,/,*,<,>,=)作为变量名.

Global variable 全局变量

[Variable 变量]:随便取名字

[Operator 运算符] 可设置为:【ADD 添加 SUBSTRACT减少 SET设置为】

[Value 值]:

All npcs can read global variables @sp in the name will be replaced by the name of the player speaking to.So you can use @sp in the name to create player related variables

所有可以读取名称中的全局变量的NPC @sp都将被与之交谈的播放器名称替换。因此您可以在名称中使用@sp创建与播放器相关的变量.(听起来怪怪的)

请勿使用特殊字符(+,-,/,*,<,>,=)作为变量名.

Reputation 给予声望

[Faction name 计分板名称]:

[Value 值]:

Give item 给予物品

Name:(语法:物品名称,数量,附加值{标签},嫌麻烦选择背包物品就行了)

Consume item 扣除物品

Name:(物品名称、数量、附加值及NBT)

Command 执行命令

执行某些好玩的指令除了kill指令,@sp也适用

Set owner 设置主人

Player name (@sp for speaking player,empty to clear owner)

@sp代表说话玩家,无法清除所有者(一旦NPC加入某人队伍,就无法让他加入你,除非某人让它退出队伍)

[Owned ticks, 0 for unlimited time(视为)主人时间(游戏刻) 0代表无限时间]:

Set Equipement 设置装备

如装备栏有物品则会覆盖,左手可能不会立即显示物品,需要尝试对话几次

Select an item to equip in the selected slot

选择要在所选栏中装备的物品

Set AI 设置AI

Follow 跟随 Formation 编队 Guard 守卫 Path 路径 Sit坐 Wander 游荡

Load data from NBT 加载NBT数据

[NBT Data]:(添加标签,Riding无效)

Spawn monster 生成怪物

[Direction方向]:North,South,East,West 北南东西

[Distance距离]:

Spawns an entity in the npc home position to select an entity you need to have it in you inventory stored inside a Soul Bottle

在npc原始位置生成一个实体,你需要选择一个物品栏存储实体的瓶中灵魂。

Kill counter 创建或删除杀敌计数器

Create or delete a kill counters related to the player To delete put the counter name formating to create is "COUNTER_NAME ENTITY_ID ENTITY_TAGS" COUNTER_NAME is the name of counter ENTITY_ID is the id used to summon it with commands ENTITY_TAGS are data to check from the entity for example: KILL_BULL_COUNTER chocolateQuest.bull{scale:1f} to increase the counter each time a bull with size 1 is killed by the player

创建或删除与玩家相关的击杀计数器,要删除或创建的计数器名称格式为“ COUNTER_NAME ENTITY_ID ENTITY_TAGS”

COUNTER_NAME是计数器的名称

ENTITY_ID是用于通过命令召唤它的ID

ENTITY_TAGS是要从实体检查的数据 

例如:KILL_BULL_COUNTER ChocolateQuest.bull {scale:1f}每当玩家杀死带有scale:1f标签的公牛时增加计数器

可通过CQKillCounter查询杀敌数或CQAddKillCounter添加杀敌数。

一定要记得检查击杀实体是否带有要求标签,否则永远完成不了任务,所以你会卡关

Timer 创建计时器

Creates a timer with the specified name for this npc counting down every tick and starting from the specified value

使用此npc创建一个具有指定名称的计时器,从tick指定值开始倒计时。

Set home 设置家

[Position name 位置名称]

[Set home设置家 Set home distance设置离家距离 Set home and distance设置家和距离]

[Home distance 离家距离]:

Set the npc home position to the specified AI position If Positon name is undefined sets the current npc position as home position If the distance from home is greater than the max distance the npc will go back to home,a home distance of -1 allows the npc to move without limits

将npc原始位置设置为指定的AI位置如果未定义Positon名称,则将当前npc位置设置为原始位置。如果距原始位置的距离大于最大距离,则npc将返回原始位置,因此-1的原始距离允许NPC无限移动

Build schematic 建造结构

[Schematic 结构]:schematic文件名

.minecraft\config\Chocolate\DungeonConfig\Building找到游戏已加载的格式schematic文件

[Build speed 建筑速度]:数值

每秒该npc会在指定的地点建造相应数量的方块,太大游戏会崩溃,因为npc是一格一格建造的,而不是成块生成。

[Position 位置] 

You can specify a position from the AI positions list If on position is found the npc will build at home position Schematic

您可以从AI位置列表中指定位置(你可以节点标记器 左击npc,npc就有相应标记器命名的位置标记)。如果npc没有找到位置,则将在原始(家)位置建筑,建筑时候npc不会移动、被敌对生物分散注意。

Put in a bottle 将npc装入瓶中

Puts this npc into a soul in a bottle item and drops it

将此NPC装进瓶中灵魂并掉落

提示

搞定!顺带说一下,编辑完对话文本记得按下Save text相信你不会想再写一次的

之后文本将会储存在.minecraft\config\Chocolate\Quest\lang的

default.DIALOG文本中,在游戏中仍然可以编辑。模组无法识别中文,但你可以翻翻该模组页面评论区,已经有人解决了这个问题。

献给需要的人