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

BLUE引擎RELEASECOLLECTEXP使用教程 - 释放天地结晶触发脚本配置

M2GM2026-10-02Blue引擎7
摘要:RELEASECOLLECTEXP是BLUE引擎QF中天地结晶释放时触发的事件,分两段执行:[@RELEASECOLLECTEXP]用QUERYVALUE弹窗展示储存经验和应付元宝,玩家确认后跳转[@EXPNOW]扣元宝加经验并清空结晶。本文说明五个系统变量含义、弹窗参数和结算流程。…
[TOCM]

天地结晶是版本里常见的经验储存道具,玩家打怪时把经验存进结晶,攒满了再花钱做结晶经验提取。RELEASECOLLECTEXP就是玩家点击释放结晶时触发的QF事件,它本身不直接发经验,而是弹出一个确认对话框,让玩家选择付多少元宝、提取多少经验。理解这个触发的关键,是搞清楚它把哪些系统变量暴露给你用,以及提取动作分两步走。

下面按引擎帮助文档的原始格式,把触发段、弹窗命令、扣元宝发经验的完整链路拆开。

BLUE引擎RELEASECOLLECTEXP释放结晶脚本配图 - M2GM

天地结晶释放触发做什么

当玩家使用天地结晶道具进行释放操作时,BLUE引擎会执行QFUNCTION-0.txt里的[@RELEASECOLLECTEXP]段。这个段的职责不是直接把经验发给玩家,而是先弹出一个查询窗口,告诉玩家结晶里存了多少经验、需要付多少元宝、提取后能拿到多少。玩家在弹窗里点确认后,脚本跳转到[@EXPNOW]段,才真正执行扣元宝和加经验。

整个流程分两段:第一段[@RELEASECOLLECTEXP]负责展示信息并跳转,第二段[@EXPNOW]负责实际结算。这个设计把”展示”和”执行”分开,玩家看到数值后才决定要不要付元宝,避免误操作直接扣钱。

触发后引擎自动填充好几个系统变量:<$COLLECTEXP>是结晶里已存的普通经验,<$COLLECTIPEXP>是结晶里存的内功经验,<$GCEPAYMENT>是这次提取需要支付的元宝数,<$GAINCOLLECTEXP>是实际能拿到的普通经验,<$GAINCOLLECTIPEXP>是实际能拿到的内功经验。这五个变量在释放结晶脚本里直接引用即可,不需要自己计算。

RELEASECOLLECTEXP弹窗与系统变量对应内容示意图 - M2GM

QUERYVALUE弹窗参数怎么填

帮助文档里释放结晶段的标准写法是先用QUERYVALUE命令弹出一个带确认按钮的对话框:

[@RELEASECOLLECTEXP]
#ACT
QUERYVALUE 2 2 10 
@EXPNOW 
你的天地结晶已经储存了<$COLLECTEXP>经验和<$COLLECTIPEXP>内功经验,你可以支付<$GCEPAYMENT>元宝\提取其中的<$GAINCOLLECTEXP>经验和<$GAINCOLLECTIPEXP>内功经验 
QF 

QUERYVALUE后面的2、2、10是弹窗样式参数,决定对话框的外观和输入方式。@EXPNOW是玩家点确认后跳转的段名。引号里那段文字就是弹窗正文,把五个系统变量嵌进去,玩家看到的就是”你的天地结晶已经储存了XXX经验,你可以支付XXX元宝提取其中的XXX经验”。

这段文字末尾的QF是QUERYVALUE命令的结束标记,不能漏。引号里的反斜杠\用来换行,让弹窗文字排版不挤在一行。

提取经验扣元宝的完整流程

玩家点确认后跳转到[@EXPNOW]段,这里先检查元宝够不够,够了才扣元宝加经验:

[@EXPNOW]
#IF
CHECKGAMEGOLD ? 
$GCEPAYMENT
#ACT
GAMEGOLD - $GCEPAYMENT
CHANGEEXP + 
$GAINCOLLECTEXP
CHANGEIPEXP + $GAINCOLLECTIPEXP
RESETCOLLECTEXPSTATE 

CHECKGAMEGOLD ? $GCEPAYMENT这行判断玩家当前元宝是否足够支付。问号是比较符,后面跟的$GCEPAYMENT就是弹窗里显示的应付元宝数。判断通过后,GAMEGOLD - $GCEPAYMENT扣掉元宝,CHANGEEXP + $GAINCOLLECTEXP加普通经验,CHANGEIPEXP + $GAINCOLLECTIPEXP加内功经验。

最后一行RESETCOLLECTEXPSTATE是把天地结晶恢复到初始状态,也就是清空已储存经验,让结晶可以重新开始攒。这个命令必须写,不写的话结晶里的经验不会清空,玩家可以无限提取。

BLUE引擎RELEASECOLLECTEXP释放结晶脚本配置操作示意图 - M2GM

脚本配置上手步骤

第一步,打开Market_Def目录下的QFunction-0.txt,在文件末尾写入[@RELEASECOLLECTEXP]段,按上面的格式调用QUERYVALUE弹窗,正文文字里嵌入五个系统变量,跳转段名设为@EXPNOW。

第二步,紧接其后写[@EXPNOW]段,先用CHECKGAMEGOLD判断元宝是否足够,通过后依次执行GAMEGOLD扣元宝、CHANGEEXP加普通经验、CHANGEIPEXP加内功经验,最后用RESETCOLLECTEXPSTATE清空结晶。

第三步,保存脚本后在M2控制台重载QFunction,进游戏把经验存进天地结晶,再点击释放,观察弹窗是否正确显示经验数和元宝数,确认扣完元宝后经验是否到账、结晶是否清空。

常见疑问

1. 问:结晶提取比例怎么设置?

提取比例不是在这段脚本里写死的数字,而是由引擎根据天地结晶的储存规则和当前参数自动计算后填进<$GAINCOLLECTEXP>和<$GCEPAYMENT>这两个系统变量里的。脚本端只负责读取这两个变量值并执行扣元宝加经验,不需要自己算比例。想调整提取比例或元宝消耗,要在引擎后台的天地结晶相关配置里改,不是改这段QF脚本。(本条问题整理自百度知道真实提问:结晶提取比例怎么设2024-08)

2. 问:这段脚本里用到的变量都是什么类型?

<$COLLECTEXP>、<$GCEPAYMENT>这些是引擎自动维护的系统变量,读取时直接在脚本里用<$变量名>引用就行,不需要自己用MOV赋值。而脚本里做临时判断时如果要用私人变量,数字型用M或D变量、字符型用S变量,和系统变量不冲突。系统变量每次触发时自动刷新,私人变量需要手动MOV赋值才会变。(本条问题整理自百度知道真实提问:传奇脚本变量是什么2022-11)

3. 问:GAMEGOLD减元宝用的是什么命令格式?

扣元宝用GAMEGOLD - 金额,加元宝用GAMEGOLD + 金额。这里的金额可以是直接数字,也可以是$变量名引用,比如GAMEGOLD - $GCEPAYMENT就是扣掉系统变量里存的那个元宝数。加减号和金额之间必须有空格,这是命令格式要求。减完元宝后要对应加经验,用CHANGEEXP加普通经验、CHANGEIPEXP加内功经验,三个命令依次写在#ACT下面。(本条问题整理自百度知道真实提问:传奇变量inc和dec的用法2018-03)

4. 问:不点确认直接关闭弹窗会扣元宝吗?

不会扣。整个结算逻辑写在[@EXPNOW]段里,而[@EXPNOW]只有玩家在QUERYVALUE弹窗里点了确认按钮才会被跳转执行。玩家直接关闭对话框,脚本停在弹窗阶段,不会走到CHECKGAMEGOLD和GAMEGOLD那几行。这个两段式设计就是为了让玩家看完数值再决定,避免误操作直接扣钱。

5. 问:RESETCOLLECTEXPSTATE不写会怎样?

不写这个命令,结晶里的经验不会清空。玩家提取一次经验后,结晶里还存着原来的经验数,可以再点一次释放、再付一次元宝、再领一次经验,等于同一份经验被重复提取。这个命令的作用就是提取完把结晶状态归零,让玩家重新开始打怪攒经验。写在加经验命令后面就行。

6. 问:CHANGEEXP和CHANGEIPEXP有什么区别?

CHANGEEXP加的是人物普通经验,管人物升级;CHANGEIPEXP加的是内功经验,管内功等级。天地结晶里两种经验是分开存的,<$COLLECTEXP>对应普通经验、<$COLLECTIPEXP>对应内功经验,提取时也要分开用两个命令加到对应的经验槽里。只写CHANGEEXP不写CHANGEIPEXP,内功经验就提不出来。

7. 问:天地结晶释放脚本放在哪个文件里?

放在Market_Def目录下的QFunction-0.txt里,和其他QF触发段写在同一个文件中。[@RELEASECOLLECTEXP]和[@EXPNOW]两段都写在这个文件里,两段之间不需要用GOTO连接,因为QUERYVALUE命令在玩家确认后会自动跳转到@EXPNOW。保存后在M2控制台重载QFunction脚本即可生效。

以上天地结晶释放触发的弹窗展示和提取结算流程,均在本地BLUE引擎环境对照QFunction-0.txt实测跑通;RELEASECOLLECTEXP触发段和配套的五个系统变量仅适配BLUE引擎,换到其他引擎时变量名和弹窗命令格式需要自行对照修改。RELEASECOLLECTEXP管弹窗展示,[@EXPNOW]管实际扣发,两段缺一不可。仅供单机本地学习调试。

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

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

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

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

分享给朋友: