当前位置:首页 > 实操教程 > Blue引擎 > 正文内容

BLUE引擎EVALEQUIPSUCCEED命令详解 - 鉴定成功脚本教程

M2GM2026-09-26Blue引擎60
摘要:EVALEQUIPSUCCEED是BLUE引擎QF中装备鉴定成功时触发的事件段,解读出五岳独尊等特技时额外触发SECRETPROPERTY_SKILL段并赋值S98技能名S99装备名。本文说明两段触发时机区别、变量取值方法、服饰武器特技叠加规则和飘字公告写法,给出三步配置流程。…
[TOCM]

普通鉴定成功和解读出特殊特技,在BLUE引擎里走的是两个不同的触发段。做鉴定装备触发时,很多人把它们混在一起写,结果要么鉴定成功不弹公告,要么出了特技却读不到技能名。区别其实很清楚:EVALEQUIPSUCCEED管的是鉴定成功这个动作本身,而SECRETPROPERTY_SKILL管的是鉴定时解读出五岳独尊这类特殊技能。两个段各管各的,变量也不一样。

下面按帮助文档原文,把两个段的触发时机、S98和S99变量含义、服饰武器技能叠加规则拆开。

BLUE引擎EVALEQUIPSUCCEED鉴定装备触发脚本配图 - M2GM

鉴定成功和特殊技能两个触发段

玩家对一件装备执行鉴定操作并成功时,引擎触发QFUNCTION里的[@EVALEQUIPSUCCEED]段。这个段适合做鉴定成功的提示公告、回收鉴定费、记录鉴定次数等通用逻辑。它不区分鉴定出来的是普通极品属性还是特殊特技,只要鉴定动作成功就跑一次。

而当鉴定结果是特殊技能解读出五岳独尊这类特技时,引擎会额外触发[@SECRETPROPERTY_SKILL]段。这个段是专门给特技解读用的,触发时引擎已经把技能名和装备名填进了两个S变量里,你在段里直接读这两个变量发公告就行。帮助文档给的标准写法是用SENDSCROLLMSG在屏幕中间飘一条公告:

#ACT
SENDSCROLLMSG 
[神秘解读]:<$USERNAME>的<$STR(S99)>解读出<$STR(S98)>特技 253 16

253和16是飘字的颜色和显示时间参数,分别对应消息颜色编号和停留时长。<$USERNAME>是鉴定玩家名,<$STR(S99)>是鉴定出来的装备名,<$STR(S98)>是解读出的技能名。

EVALEQUIPSUCCEED与SECRETPROPERTY_SKILL触发时机内容示意图 - M2GM

S98和S99两个变量怎么用

触发[@SECRETPROPERTY_SKILL]时,引擎自动给两个变量赋值:S98存的是解读出来的技能名,S99存的是被鉴定的那件装备名。这两个是字符型变量,里面装的是中文文字,不是数字。

在段里引用这两个变量时要用<$STR(S98)>和<$STR(S99)>的格式,不能直接写S98。帮助文档的飘字示例里就是这么取的:<$STR(S99)>是装备名,<$STR(S98)>是特技名。你可以把这两个变量拼到任何提示命令里,除了SENDSCROLLMSG,还可以用SENDMSG发频道公告、用MESSAGEBOX弹对话框。

帮助文档写明目前支持解读出来的特殊技能有四个:五岳独尊、召唤巨魔、神龙附体、倚天劈地。这四个是引擎内置识别的特技,鉴定出其他技能名不会触发SECRETPROPERTY_SKILL段。

服饰和武器技能叠加规则

服饰和武器都可以被解读出特殊技能,但要真正拥有这个技能,必须佩带武器。也就是说光衣服上出了特技不算数,得武器也带着同一个特技,玩家才能用。

服饰带的技能等级加一属性,是在武器已经带了该技能的前提下生效的。衣服上多出来的等级加成,用来给武器上的特技升级。如果武器没带这个特技,衣服上的技能等级加成就是空挂着,没有实际效果。这个设计决定了做极品鉴定脚本时,武器和服饰的特技要配套,不能指望一件衣服单独出特技给玩家用。

BLUE引擎EVALEQUIPSUCCEED鉴定装备脚本配置操作示意图 - M2GM

鉴定脚本配置步骤

第一步,打开Market_Def目录下的QFunction-0.txt,写入[@EVALEQUIPSUCCEED]段,在#ACT后面接鉴定成功后想执行的通用逻辑,比如发提示、记次数、扣鉴定费。

第二步,紧接其后写入[@SECRETPROPERTY_SKILL]段,用SENDSCROLLMSG把<$STR(S99)>装备名和<$STR(S98)>特技名拼成飘字公告,颜色参数和时间参数按需要调整。

第三步,保存脚本后在M2控制台重载QFunction,进游戏拿一件可鉴定武器去鉴定NPC那里做鉴定,先确认普通鉴定能触发EVALEQUIPSUCCEED,再等解读出特技时看是否触发SECRETPROPERTY_SKILL并正确飘出装备名和技能名。

常见疑问

1. 问:鉴定属性不生效怎么办?

先确认鉴定命令UPGRADEITEMEX的第12个参数有没有给鉴定等级,那个参数控制装备是否能鉴定出附加属性。参数没给对,鉴定动作虽然成功但属性写不上去。再检查鉴定触发段是否写在QFunction-0.txt里,EVALEQUIPSUCCEED段只在鉴定成功瞬间跑一次,平时站着不动不会触发。改完脚本记得在M2重载QFunction再试。(本条问题整理自百度知道真实提问:鉴定属性不生效2022-06)

2. 问:传奇鉴定装备脚本报错怎么修正?

装备属性类错误先在DBC里改StdItems.db对应字段,武器检测属性脚本用CheckItemAddvalue,而且这个命令必须把武器戴在身上才能检测到,放背包里检测不到。鉴定触发段写在QFunction-0.txt里,段名[@EVALEQUIPSUCCEED]和[@SECRETPROPERTY_SKILL]别拼错大小写也别漏下划线。脚本报错时先看M2控制台启动时的红色提示行,那行会直接告诉你哪一行哪一段出错。(本条问题整理自百度知道真实提问:传奇鉴定装备脚本传奇装备脚本错误如何修正2024-12)

3. 问:UPGRADEITEMEX强化位置参数怎么填?

UPGRADEITEMEX后面第一个参数是装备位置,0是盔甲、1是武器、2是头盔、3是项链,依次往下排。第三个参数是强化属性类型,对应防御、魔御、攻击、魔法、道术等。做装备强化或鉴定脚本时,先确认位置参数填的是哪个栏位,再填属性类型。位置填错会强化到错误的装备上,表现就是鉴定了武器属性却加到衣服上。(本条问题整理自百度知道真实提问:跪求传奇2的装备强化脚本2008-01)

4. 问:SECRETPROPERTY_SKILL和EVALEQUIPSUCCEED先触发哪个?

鉴定成功时两个段都会跑。先触发的是[@EVALEQUIPSUCCEED],这是鉴定动作成功的通用事件。如果这次鉴定结果恰好解读出了特殊特技,引擎紧接着再触发[@SECRETPROPERTY_SKILL],同时把技能名和装备名写进S98和S99。普通鉴定不出特技就只跑EVALEQUIPSUCCEED,出了特技两段都跑。

5. 问:S98和S99会存其他值吗?

在SECRETPROPERTY_SKILL段触发时,S98固定存技能名、S99固定存装备名,这是引擎赋值的。出了这个段,S98和S99你自己也可以当普通字符变量用,用MOV S98 xxx就能覆盖。但下次再出特技时,引擎会重新把技能名和装备名写进去,覆盖掉你之前存的内容。所以在SECRETPROPERTY_SKILL段里取完值要尽快用掉,别拖到后面其他逻辑里再读。

6. 问:服饰上的特技为什么不生效?

帮助文档写得很清楚:服饰和武器都能解读出特技,但必须佩带武器才能拥有该技能。光穿衣服出特技没有效果,得武器上也带着同一个特技。衣服上的技能等级加一,是在武器已有该特技的基础上帮你升一级。武器没带这个特技,衣服上的等级加成就是空的。做极品鉴定时要把武器特技和服饰特技配套设计。

7. 问:SENDSCROLLMSG后面的数字是什么意思?

SENDSCROLLMSG是在屏幕中间发滚动飘字的命令,后面跟的文字内容之后通常带两个数字。帮助文档示例里是253 16,第一个数是飘字颜色编号,第二个数是飘字在屏幕上停留的时长。你可以改这两个数字调整颜色和显示时间,不影响飘字里的技能名和装备名替换。

以上EVALEQUIPSUCCEED鉴定成功与SECRETPROPERTY_SKILL特技解读两段触发逻辑,均在本地BLUE引擎环境对照QFunction-0.txt实测跑通;这两个触发段及S98、S99变量赋值仅适配BLUE引擎,换到其他引擎时变量名和内置特技列表需要自行核对。EVALEQUIPSUCCEED管鉴定成功,SECRETPROPERTY_SKILL管特技解读,两段配合才能做出完整的极品鉴定公告。仅供单机本地学习调试。

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

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

本文内容仅供个人单机学习研究、功能调试、玩法逻辑测试使用,不涉及任何公网搭建、商业运营、资源交易行为,仅用于个人学习与实操体验。

本文链接:https://www.m2gm.com/tech/blue/evalequipsucceed/

分享给朋友: