当前位置:首页 > 引擎 > HGE引擎

传奇NPC对话编辑全教程 新版语法格式、组件标志与命令脚本详解

admin2小时前2
在传奇版本定制、私服开发、界面改版过程中,NPC对话编辑是核心基础功能,直接影响玩家交互体验、功能弹窗展示、道具交互逻辑等核心场景。目前传奇引擎已全面升级NPC对话语法,兼容老旧格式的同时,推出了模块化的新编辑语法,支持文字样式、图像特效、控件组件、滚动面板等高级功能。本文完整梳理传奇NPC对话编辑…

在传奇版本定制、私服开发、界面改版过程中,NPC对话编辑是核心基础功能,直接影响玩家交互体验、功能弹窗展示、道具交互逻辑等核心场景。目前传奇引擎已全面升级NPC对话语法,兼容老旧格式的同时,推出了模块化的新编辑语法,支持文字样式、图像特效、控件组件、滚动面板等高级功能。本文完整梳理传奇NPC对话编辑的新旧格式、全量属性标志、命令脚本及实战示例,帮助版本制作者快速掌握编辑技巧。

一、传奇NPC对话格式概述:老格式与新格式区别

1.1 传统老旧格式(仅支持文字变色)

早期传奇NPC对话仅支持基础文字变色功能,无控件、图像、特效拓展能力,语法简单但扩展性极差,目前仅老旧引擎兼容,新引擎不推荐使用。

语法规则:仅支持文字颜色修改,不支持链接嵌入

示例:<我是白色文字/FCOLOR=255>

参数说明:FCOLOR为颜色参数,取值范围0-255,仅可修改文字基础前景色,无背景、描边、提示弹窗等拓展属性。

1.2 新版标准格式(兼容老格式,主推)

现行传奇引擎通用的NPC对话编辑格式,采用模块化参数组合,所有属性封装于{}中,放置于<>文字描述区内,多参数以英文分号;分割,兼容所有老格式语法,是当前版本制作的主流格式。

标准语法结构:<{参数1=参数值;参数2=参数值}/@节点名称>

基础示例:<{s=传奇NPC测试文字;fc=255}/@main>

核心优势:支持文字样式、坐标偏移、图像展示、特效播放、自定义控件等全功能,参数按需选配,冗余属性不填写可节省客户端宽带,避免排版卡顿。

二、核心基础标志:所有组件通用全局属性

基础标志为所有NPC对话组件通用属性,文字、图像、特效、控件均可继承,主要用于控制提示弹窗、坐标定位、尺寸规范、控件编号等全局配置,是排版布局的核心依据。

2.1 提示文本类标志

用于设置鼠标悬浮NPC文字/控件时弹出的提示信息,支持换行与自定义颜色、透明度。

ht:提示文字内容,内置换行符|,示例:<{s=领取奖励;ht=点击领取道具|每日仅限一次}>

htfc:提示文字前景颜色,支持0-255数值或Web十六进制色值(#FF00FF)

htbc:提示弹窗背景颜色,取值规则同htfc

hta:提示框背景透明度,范围0-255,数值越大透明度越低,引擎默认半透明值为128

2.2 坐标定位类标志

分为相对坐标与绝对坐标,精准控制NPC界面内组件位置,是解决排版错乱的关键参数。

ox:X轴相对偏移,后续所有排版内容跟随该坐标偏移,适用于批量组件对齐

oy:Y轴相对偏移,作用逻辑同ox,多用于纵向内容间距调整

x:X轴绝对坐标,仅控制当前组件,不影响后续内容排版

y:Y轴绝对坐标,定位精准固定,常用于弹窗按钮、图标定点放置

2.3 尺寸与控件编号标志

w:组件默认宽度,轻端模式下必须配置,否则客户端无资源时会出现排版错乱

h:组件默认高度,配置要求同w,是移动端、轻端适配必备参数

bidx:控件唯一编号,当前NPC对话内不可重复,范围1-255,默认0为NPC主对话框,主要用于父子控件绑定场景

三、文字专属标志:定制NPC文本样式效果

文字标志继承所有基础标志,专门用于优化NPC对话文本展示效果,支持颜色、描边、字体、交互变色、音效等定制,是美化对话界面的核心配置。

3.1 基础文字属性

s:必填参数,当前组件显示的核心文字内容

fc:文字前景色,默认白色,支持0-255数值或Web色值

bc:文字背景色,无默认值,按需配置即可

3.2 交互变色属性

ch:鼠标悬浮文字时的变色,默认继承fc参数值

cd:鼠标点击文字时的变色,默认继承fc参数值

ac:自动循环变色,可配置多个色值,最多支持10种颜色循环,格式:ac=1,2,3,4

3.3 描边与字体属性

bold:文字描边开关,取值0/1,1开启描边,0或不填写关闭,非必要不开启以节省宽带

boldc:描边颜色,取值规则同fc,仅bold=1时生效

f.se:字体大小,固定范围7-30,引擎默认值为9

f.bd:字体加粗开关,0关闭、1开启,默认关闭

f.ul:字体下划线,0为普通文字、1为链接文字,可手动关闭链接下划线

3.4 音效属性

psi:点击文字播放音效,填写sound.lst内的声音序列号,-1为关闭点击音效,默认关闭

四、图像专属标志:NPC界面图片展示配置

图像标志支持基础区除描边色外的所有属性,用于在NPC对话框内展示图标、背景、按钮等图片资源,核心要求为资源库索引与图片索引必须配对配置。

4.1 核心必填参数

i:图片资源索引号,对应客户端素材库编号

li:图片资源库索引号,可在引擎M2-查看-列表信息二-客户端资源中配置;以&开头代表文件名模式,文件名最长30字符,无需填写后缀

重点规则:i与li必须同时配置,否则图片无法显示;若同时配置s参数,该组件自动变为可点击按钮效果

4.2 交互图片与偏移参数

ih:鼠标悬浮时展示的图片索引,默认继承i的值

id:鼠标点击时展示的图片索引,默认继承i的值

sox:图片内文字X轴偏移,默认0,支持正负数值

soy:图片内文字Y轴偏移,默认0,支持正负数值

五、特效播放标志:NPC动态视觉效果制作

特效标志继承基础所有标志,用于在文字、图像上层添加动态特效,支持速度、次数、坐标微调,最多可多层叠加,提升NPC界面视觉质感。

5.1 特效核心参数

ei:特效起始图片索引,指定动态特效的首张素材图

eli:特效资源库索引,取值规则同图片li参数,支持文件名模式

et:特效播放速度,单位毫秒,常规取值100-200,默认120

ec:特效播放帧数,指定动态效果展示的图片数量

5.2 循环与绘图参数

efc:循环播放次数,0为无限循环(引擎默认)

edm:绘图模式,0为普通绘图、1为混合绘图(默认)

efxy:是否按资源原图坐标计算,0不计算(默认)、1精准计算

eox/eoy:特效X/Y轴微调坐标,默认0,用于精准对齐底层组件

空白底层配置:若仅展示特效、隐藏底层文字/图像,配置s= ; 即可(等号与分号间保留空格)

六、功能性控件标志:高级交互组件配置

传奇NPC对话支持多种自定义控件,通过type参数区分组件类型,可实现进度条、物品统计、弹窗交互、滚动面板等高级功能,是定制功能性NPC的核心。

6.1 进度条控件(type=1)

必填参数:type=1、li资源库索引、i图片索引、m最大进度值、p当前进度值

拓展参数:o绘制方向,0水平(默认)、1垂直;用于任务进度、活跃度、充值进度展示

示例:<{type=1;li=14;i=3364;m=100;p=50;x=100;y=100}>

6.2 包裹物品统计控件(type=2)

继承文字所有属性,用于读取玩家背包内指定物品数量,自动展示在NPC界面

必填参数:type=2、s物品名称

示例:当前回城卷数量:<{type=2;s=回城卷}>

6.3 自定义OK框控件(type=3)

用于物品提交、兑换、回收交互,支持限定物品类型、高亮提示

必填参数:type=3、idx编号(0-7)、i背景图索引、li资源库索引

核心拓展:fil限定可放入物品类型(填写DB库StdMode值,多类型逗号分隔);mic设置物品匹配时的高亮透明色

6.4 物品展示控件(type=4)

专门用于在NPC界面展示道具图标、数量,默认宽34、高32,禁用ht提示属性

必填参数:type=4、idx物品数据库ID、t展示类型(0数据库物品、1主角装备、2英雄装备)

拓展参数:ct物品数量;ct.x/ct.y数量文字偏移;sht是否显示物品详情提示

6.5 父组件设置控件(type=5)

唯一不继承任何基础标志的控件,用于绑定父子组件,实现组件分组管理

必填参数:type=5;pbidx父组件编号,默认0为NPC主面板

作用:配置后后续所有组件自动归入指定父控件,常用于滚动框、弹窗分组

6.6 滚动框与滚动条控件(type=6/7)

滚动框(type=6):容器控件,用于承载超长内容,ih控制单次滚动距离,es设置底部留白,reload控制刷新逻辑

滚动条(type=7):配套滚动框使用,ori区分方向(0水平、1垂直),可自定义滑块、上下端按钮的素材图与交互状态

核心规则:滚动功能必须滚动框+滚动条搭配,且滚动条父控件必须为对应滚动框

七、NPC专用命令:弹窗与特效全局指令

除组件属性外,传奇引擎提供专属NPC脚本命令,用于控制整体对话框弹窗、全局动态特效,需写入NPC脚本节点中执行。

7.1 自定义对话框命令 OPENMERCHANTDLG

功能:弹出自定义尺寸、位置、素材的NPC对话框,替代默认原生窗口

标准格式:OPENMERCHANTDLG 资源库索引号|图片索引号|是否可移动(0,1)|宽度|高度|显示位置(0-4)|微调X|微调Y|显示关闭按钮(0,1)|按钮X|按钮Y

位置说明:0左上角、1右上角、2左下角、3右下角、4居中(最常用)

还原命令:OPENMERCHANTDLG -1| ,执行后恢复引擎原始NPC窗口,必须保留尾部竖线避免报错

实战示例:

[@main]

#if

#act

OPENMERCHANTDLG 14|3832|1|742|474|4|0|0|0|0|0

7.2 全局特效命令 PLAYNPCDLGEFFECT

功能:在自定义对话框内播放全局动态特效,最多支持6个命令同步执行

格式:PLAYNPCDLGEFFECT 资源库索引|起始图片|播放速度|帧数|循环次数|绘图模式|X偏移|Y偏移|原图坐标计算

7.3 对话框关闭指令

@Close:客户端直接关闭弹窗,不经过M2引擎,普通NPC界面推荐使用

@Exit:经过M2引擎校验后关闭,可防止跳转刷物品漏洞,QM/QF功能脚本强制使用

示例:<关闭对话框/@Close>

八、实战脚本示例:滚动框物品展示模板

以下为可直接复制使用的传奇NPC滚动面板脚本,包含纵向/横向滚动条配置,适配所有GOM、GEE主流引擎,导入即可生效。

[@滚动框测试]

#SAY

<纵向滚动条测试/@纵向滚动框测试> <横向滚动条测试/@横向滚动条测试>\

<返回/@main>

[@纵向滚动框测试]

#SAY

;添加滚动框容器

<{type=6;w=200;h=100;bidx=1;bc=255}>

;绑定父组件

<{type=5;pbidx=1}>

;批量添加物品展示组件

<{type=4;idx=1}><{type=4;idx=2}><{type=4;idx=3}><{type=4;idx=4}><{type=4;idx=5}>\

<{type=4;idx=6}><{type=4;idx=7}><{type=4;idx=8}><{type=4;idx=9}><{type=4;idx=10}>\

<{type=4;idx=11}><{type=4;idx=12}><{type=4;idx=13}><{type=4;idx=14}><{type=4;idx=15}>\

<{type=4;idx=16}><{type=4;idx=17}><{type=4;idx=18}><{type=4;idx=19}><{type=4;idx=20}>\

;添加纵向滚动条

<{type=7;h=100;x=184;y=0}>

;重置父组件为主面板

<{type=5}>\

<返回/@滚动框测试>

[@横向滚动条测试]

#SAY

;添加横向滚动框容器

<{type=6;w=200;h=100;bidx=2;bc=255}>

<{type=5;pbidx=2}>

;横向排列物品组件

<{type=4;idx=1}><{type=4;idx=2}><{type=4;idx=3}><{type=4;idx=4}><{type=4;idx=5}>

<{type=4;idx=6}><{type=4;idx=7}><{type=4;idx=8}><{type=4;idx=9}>\

<{type=4;idx=10}><{type=4;idx=11}><{type=4;idx=12}><{type=4;idx=13}><{type=4;idx=14}>

<{type=4;idx=15}><{type=4;idx=16}><{type=4;idx=17}><{type=4;idx=18}>\

;添加横向滚动条

<{type=7;w=200;x=0;y=84;ori=0}>

<{type=5}>\

<返回/@滚动框测试>

九、编辑优化小贴士

1. 精简参数:与引擎默认值一致的参数无需填写,减少脚本体积,降低客户端加载延迟

2. 编号唯一:同一NPC内bidx控件编号禁止重复,否则会出现控件绑定错乱、界面黑屏问题

3. 素材适配:文件名模式的素材名称控制在30字符内,不含后缀,避免引擎读取失败

4. 轻端兼容:所有展示组件必须配置w、h尺寸参数,杜绝移动端排版错位

5. 安全规范:功能交互脚本优先使用@Exit关闭窗口,防止道具刷取漏洞

扫描二维码推送至手机访问。

本文章九路游发布,如需转载请注明出处。如有侵权请联系站长删除。

本文链接:https://www.9luu.com/767.html

分享给朋友: