当前位置:首页 > M2插件 > 大秦插件 > 正文内容

大秦系统变量怎么查?40个常用内置变量速查 - 大秦插件脚本教程

M2GM2026-09-24大秦插件1
摘要:大秦内置变量分攻击目标、宝宝、击杀掉落、在线状态、技能属性、死亡交易、暴击几组;都是引擎实时维护的运行时数据直接读不用自己算;CLIENT后缀去怪物数字后缀做奖励匹配用;PKPOWER有误差差别做精确结算;UPGRADECOUNT分0到30段;写触发脚本先找现成内置变量,找不到再自己建中间变量。…
[TOCM]

写触发脚本时最卡壳的瞬间,往往是想取一个运行时数据却记不起变量名:当前打中的怪叫什么、怪还剩多少血、上一刀打了多少伤害,每次都得翻半天文档。大秦插件把这些运行时数据都做成了大秦系统变量,不用自己算,触发时机到了直接读。

新手常踩的两个坑:CLIENT后缀版本去不去怪物数字后缀搞混了,或者把上一刀伤害变量拿来做精确伤害结算。这篇把官方变量表里的常用项按用途分好类,写脚本时当字典翻,配进触发段就能用。

刚上手别想着一次背完四十个变量,先按自己常写的触发类型查对应那一组,用熟了再扩展。下面这份变量大全速查,按攻击目标、宝宝、击杀掉落、在线状态、技能属性、死亡交易、暴击分组列清楚。

大秦系统变量怎么查?40个常用内置变量速查配图 - M2GM

攻击与目标类

正在打什么、怪在哪、剩多少血,写攻击触发脚本时全靠这一组攻击目标变量:

变量名 含义
<$PKPOWER> 当前攻击造成的上一刀伤害,存在不准确
<$ATTACKMONSTER_X> 当前攻击的目标坐标X
<$ATTACKMONSTER_Y> 当前攻击的目标坐标Y
<$ATTACKMONSTER_HP> 当前攻击的目标血量值
<$ATTACKMONSTER_MAX_HP> 当前攻击的目标血量上限
<$DQCurrentAttackMonNameClient> 当前攻击的怪物名称(包括数字)

这组变量只在攻击触发的上下文里有效,平时随便读拿到的是空值,别脱离触发时机用。

大秦系统变量怎么查?40个常用内置变量速查内容示意图 - M2GM

宝宝与击杀掉落类

宝宝攻击谁、宝宝自己坐标,宝宝流版本必查这一组;谁杀的、爆了什么、在哪爆的,做击杀触发和爆物统计用这一组:

变量名 含义
<$BABYNAME> 当前宝宝名称
<$BATTACKMONSTER_NAME> 当前宝宝攻击目标的名称
<$BATTACKMONSTER_X> 当前宝宝坐标X
<$BATTACKMONSTER_Y> 当前宝宝坐标Y
<$BATTACKMONSTER_HP> 当前宝宝攻击目标的血量值
<$BATTACKMONSTER_MAX_HP> 当前宝宝攻击目标的血量上限
<$DQKILLMONNAMECLIENT> 当前杀死的怪物名称,不带数字后缀(支持宝宝)
<$DQKILLMONNAME> 当前杀死的怪物名称,带数字后缀(支持宝宝)
<$DQKillMonX> 当前杀死的怪物X坐标(支持宝宝)
<$DQKillMonY> 当前杀死的怪物Y坐标(支持宝宝)
<$DROPITEMNAME> 正在爆出的物品名称
<$DROPMONNAME> 爆出怪物名(带数字)
<$DROPMAPNAME> 爆出地图名

两个击杀变量的区别要记牢:CLIENT结尾不带数字后缀,做奖励匹配用CLIENT版,怪物名带数字编号时不会因为编号差异匹配失败。

在线状态与技能属性类

变量名 含义
<$DQONUSERCOUNT> 所有真人在线数
<$DQONUSERCOUNTOFFLINE> 真人在线数,不包含离线挂机
<$TIME> 当前本地服务端系统时间
<$RevivalTimeEx> 人物复活CD,单位秒,0为可立即复活
<$DearName> 配偶名称
<$DQMagicID> 技能ID
<$DQMagicName> 技能名称
<$DQMagicTarget> 技能目标名称
<$DQMagicTargetRace> 技能目标类型:0人物、1英雄、其他为怪物NPC等
<$DQHUMABILITY[X].VALUE(Y)> 取属性索引的临时属性值,X属性索引、Y属性类型
<$VALUE1>~`<$VALUE20>` 人物元素属性常量1到20(含自定义元素属性)
<$BAGCOUNT> 背包物品数量

这组变量覆盖人气统计、复活计时、技能触发取目标,写状态类触发时直接读,不用自己累计。

大秦系统变量怎么查?40个常用内置变量速查脚本配置示意图 - M2GM

内置变量实操搭配示例

内置变量和触发脚本是配套的,攻击触发里读目标血量,击杀触发里读怪物名,掉落触发里读物品名,不用自己赋值,引擎在触发时机自动填好。拿击杀触发举例,怪物倒下时读击杀怪物名做奖励分支:

;击杀触发段
#IF
#ACT
sendmsg 6 你杀死了<$DQKILLMONNAMECLIENT>
Break

写脚本前先按用途翻这张表,需要的运行时数据大概率已经有现成内置变量,找不到再自己建中间变量。这也是新手问内置变量有哪些时,先按攻击目标变量、击杀掉落变量这两大类入手的原因。

死亡交易与暴击类

变量名 含义
<$DQKILLERRACE> 死亡时击杀者类型(数据库Race值)
<$DQKILLERNAME> 死亡时击杀者名字
<$DQKILLERNAMECLIENT> 死亡时击杀者名字去除数字
<$DQSHOPSELLER> 商品卖家名称
<$DQSHOPBUYER> 商品买家名称
<$DQSHOPITEM> 商品名称
<$DQSHOPITEMIDX> 商品IDX序号
<$DQSHOPITEMPRICE> 商品价格
<$DQSHOPITEMMONEYNAME> 商品货币名称
<$DQSHOPITEMMONEYTYPE> 商品货币类型
<$DQSHOPITEMCOUNT> 商品物品数量
<$DQBASHEXCOUNT> 暴击剩余有效次数
<$DQPARAM1> 获取暴击伤害数值
<$DQPARAM2> 获取触发暴击的技能ID
<$PICKUPRANGE> 自动拾取范围,默认0
<$AoToPickUpItemState> 自动拾取开启状态
<$GamePromotionFlag> 登录器标记文本内容
<$UPGRADECOUNT> 身上物品总强化、总星星数(含时装、首饰盒)
<$UPGRADECOUNT0>~`<$UPGRADECOUNT30>` 分部位:0到16身上物品、17到18时装、19到30首饰盒
<$DQGODBLESSITEM1>~`<$DQGODBLESSITEM12>` 首饰盒12个格子的物品名称

注意要点

用内置变量有几个细节容易忽略:CLIENT后缀版本去怪物数字后缀,做奖励匹配用CLIENT版;上一刀伤害变量有误差,别拿来做精确伤害结算;内置变量只在对应触发时机有效,平时读可能是空值。怪名带编号的版本用不带CLIENT的变量匹配不上奖励,拿上一刀伤害变量做伤害结算结果不准,这两类是新手最常踩的坑。

内置变量和自己建的中间变量分工要清楚:内置变量是引擎现成的运行时数据,随当前操作对象变化,攻击触发里读的是当前被打的怪,击杀触发里读的是刚死的那只;自己建的中间变量管累计计数、过程值。写触发脚本先找现成内置变量,找不到再自己建。

问题速查

1. <$PKPOWER>说存在不准确到底能不能用?

它读的是引擎记录的上一刀伤害,引擎官方自己标注存在不准确,做粗略统计参考可以,别拿它做精确伤害结算的判定依据。伤害计算类需求用QF触发段传出来的参数变量更可靠,这个变量只适合做个大概参考,别卡在精确数值上。

2. 两个击杀变量带CLIENT和不带有什么区别?

不带CLIENT的击杀怪物名变量带怪物数字后缀,怪名库是”白野猪1””白野猪2”编号命名时它读出来带编号;带CLIENT的版本把后缀去掉只剩”白野猪”。做奖励匹配、掉落名单比对用CLIENT版,两边结果都能对上编号差异。

3. 宝宝杀怪能读到击杀变量吗?

能,击杀怪物名、击杀怪物名CLIENT版,再加击杀坐标X、Y这四个官方标注支持宝宝。宝宝流版本统计宝宝击杀、按击杀位置掉奖励都读这一组,不用单独再写宝宝触发段,变量会在宝宝击杀时自动填好。

4. 这么多系统变量,哪些是单人的、哪些是全服通用的?

分两类看。UPGRADECOUNT、BAGCOUNT这类挂在当前玩家身上,每个玩家各自读各自的穿戴强化和背包数,属于单人运行时数据;DQONUSERCOUNT、DQONUSERCOUNTOFFLINE是全服在线人数,所有人读出来是同一个值,属于全局。写脚本时先想清楚这份数据是”这个玩家的”还是”全服的”,单人数据别拿来当全服判断,全服数据也别指望它存单人状态,这和私人变量、全局变量的分法一致。(本条问题整理自百度知道真实提问:百度知道2019-08,对应功能词系统变量,答案结合大秦插件帮助文档与本地实测)

5. 系统变量读出来是文字还是数字,能直接拿去比较吗?

看变量本身维护的是什么。PKPOWER、UPGRADECOUNT、BAGCOUNT这类是数字,读出来按数字做加减和比较;击杀怪物名、攻击目标名这类是文字,读出来当字符串比,比如判断击杀怪物名CLIENT是不是”白野猪”。别把数字标记当文字比、把文字当数字运算,否则判断对不上。要算总和先把数字变量取进数字变量再INC,字符型直接拼是文本相加。(本条问题整理自百度知道真实提问:百度知道2022-11,对应功能词系统变量,答案结合大秦插件帮助文档与本地实测)

6. 背包数、在线数这些运行时数据,脚本里怎么随时读不用自己算?

直接引用<$变量名>就行,引擎实时维护。比如背包够不够用<$BAGCOUNT>或<$BAGEMPTYPOS>判断,在线人气用<$DQONUSERCOUNT>,强化段用<$UPGRADECOUNT>。这些是引擎在背后持续算好的运行时数据,不用自己建中间变量去累加,跨脚本引用读到的都是最新值。写触发段前先按用途类别翻一遍这张速查表,大概率有现成变量,找不到再自己建。(本条问题整理自百度知道真实提问:百度知道2024-08,对应功能词系统变量,答案结合大秦插件帮助文档与本地实测)

写在最后

这张大秦系统变量速查表的用法:写触发脚本前先按用途类别翻一遍,需要的运行时数据大概率已经有现成内置变量,不用自己中间算。攻击目标、宝宝、击杀掉落、在线状态、技能属性、死亡交易、暴击几组变量按场景各就各位。注意CLIENT后缀去数字、强化分段、上一刀伤害变量有误差这几个细节,写出来的触发脚本就稳了。

以上变量清单依据大秦插件官方变量对照表整理,均经过本地环境对照验证;变量仅适配大秦插件,部分其他引擎存在兼容可能性,跨引擎使用需要自行测试修改;全文仅供单机本地学习调试、版本技术研究与功能测试使用。

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

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

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

本文链接:https://www.m2gm.com/plug/dq/dq-system-vars/

分享给朋友: