网络安全 秦将铁甲 cqcq etmir2
传奇开区,版本定制,加QQ:3504116 先学习★后付款Q:270733022 点击赞助此处文字位(#3) 点击赞助此处文字位(#4) 【绝世神器】
【梵天复古】 【终极骷髅王】 【绝世神器】 【绝世神器】 【梵天复古】
【梵天复古】 点击赞助此处文字位(#111) ▇▃狂化屠魔▃▇ ‖   一个福利怪直接起飞   ‖ 领先市场全新给力版本
回忆 70 80 90 的梦!!! 点击赞助此处文字位(#116) 点击赞助此处文字位(#117) 【终极骷髅王】 【终极骷髅王】
【终极骷髅王】 点击赞助此处文字位(#121) 点击赞助此处文字位(#122) 点击赞助此处文字位(#123) 点击赞助此处文字位(#124)
部分体验推荐
版本名称 版本类型 版本介绍 版本说明 游戏网站
【牛来传说】 【单职业神器】 全新鉴定系统,散人好混,地图超大 领先市场全新给力版本 进入游戏
【一怒拔刀】 【单职业复古】 数值平衡,极限刀速,PK丝滑,超爽爆装 领先市场全新给力版本 进入游戏
【蓝月复古】 【独家品牌】 经典耐玩,高端保值,一切靠打,散人好混 领先市场全新给力版本 进入游戏
【终极骷髅王】 【独家品牌】 无限刀,散人为王,地图超多,PK超爽 领先市场全新给力版本 进入游戏
【绝世神器】 【独家品牌】 装备爽爆★PK流畅★玩法不再千篇一律 领先市场全新给力版本 进入游戏
【功夫专属】 【独家品牌】 梦想之心,打怪成长,强大BUFF加持 领先市场全新给力版本 进入游戏
【梵天复古】 【独家品牌】 装备爽爆★PK流畅★玩法不再千篇一律 领先市场全新给力版本 进入游戏
▇▃狂化屠魔▃▇ 全职业 新狂化屠魔 别人不敢爆的我们爆 上线就送自动回收 每日免费领取50元 进入游戏
【热血怀旧】 【独家品牌】 再续怀旧第二章,法道丝滑,低消生态版 领先市场全新给力版本 进入游戏
查看: 8|回复: 0

传奇脚本变量全分类速查表 - 引擎兼容故障排查脚本规范教程

[复制链接]

7786

主题

-5

回帖

60万

积分

管理员

积分
600292
QQ
发表于 2 小时前 | 显示全部楼层 |阅读模式

摘要:本文按19个分类整理传奇脚本变量速查表:人物基础、攻防上下限、货币积分、坐标地图、状态账号、全套装备、组队师徒、英雄、宠物、击杀怪物、技能、仓储背包、行会领地、系统全局、内功结晶、任务自定义、NPC物品、时间随机,逐条列出变量名与核心用途,并给出变量引用格式、拼写排查要点和脚本写法规范,适配主流传奇引擎本地学习调试。…


脚本变量是传奇脚本读取人物属性、装备、货币等数据的统一入口,适配主流传奇引擎的本地学习调试场景。新手写脚本时最常见的问题就是变量名记不全、取值取不到,对照一张脚本变量速查表就能解决大半。

本文对照引擎官方脚本变量大全整理,把19类常用变量按分类列出,补充变量引用格式、拼写排查要点与常见问题速查,方便写版本、脚本调试时随查随用。

1.png

传奇脚本变量全分类速查表 - 引擎兼容故障排查脚本规范教程

变量引用格式速查
脚本变量引用统一用尖括号包裹,以美元符号开头:<$变量名>。变量名不区分大小写,但拼写错误或多余空格会导致读取为空,变量排查时先核对拼写与空格,不要改大小写。

取值展示用 <$STR(变量)>,触发脚本锁定当前对象用 <$CSTR(<$变量>)>,数值运算必须先套 <$STR() 转换,否则判定失效。脚本变量调用前先确认数据归属哪一类,再按分类找变量名。

  1. ; 变量读取与显示示例
  2. MOV S1 <$USERNAME>
  3. MOV N1 <$LEVEL>
  4. SENDMSG 0 玩家 <$STR(S1)> 当前等级 <$STR(N1)>
复制代码

人物基础与状态变量速查
人物基础属性变量
读取人物核心基础属性,涵盖角色信息、状态、负重、外观等数据,是脚本最常用的基础变量组。

排查要点:
变量读取为空多为拼写错误、多余空格,优先核对变量名;
数值不刷新时,人物属性实时变动后需重新加载脚本,重启触发即可;
性别与职业判定失效时,核对数值对应关系(0战/1法/2道、0男/1女)。

变量名核心用途
<$USERNAME>读取人物角色名称
<$LEVEL>读取人物当前等级
<$LEVELNAME>读取人物等级称号
<$HP>读取人物当前血量
<$MAXHP>读取人物血量上限
<$MANA>读取人物当前蓝量
<$MAXMANA>读取人物蓝量上限
<$EXP>读取人物当前经验
<$MAXEXP>读取人物升级所需经验
<$STAMINA>读取人物体力值
<$DURABILITY>读取人物装备耐久度
<$GENDER>读取人物性别(0男/1女)
<$JOB>、<$CLASS>读取人物职业(0战/1法/2道)
<$HAIR>读取人物发型编号
<$COLOR>读取人物发色或衣服颜色
<$LUCK>读取人物幸运值
<$CURSE>读取人物诅咒值
<$HUNGER>读取人物当前饥饿值
<$MAXHUNGER>读取人物饥饿值上限
<$WEIGHT>读取人物当前负重
<$MAXWEIGHT>读取人物负重上限
<$HANDWEIGHT>读取人物当前腕力
<$MAXHANDWEIGHT>读取人物腕力上限
<$WEARWEIGHT>读取人物当前穿戴负重
<$MAXWEARWEIGHT>读取人物穿戴负重上限

人物状态账号行会变量
涵盖人物实时状态、账号注册登录数据、行会职位权限三类变量,用于红名判定、死亡状态检测、账号数据统计、行会权限管控脚本。
排查要点:
  • 红名判定不准时,<$PKPOINT> 为实时PK数值,<$ISRED> 为快捷红名判定,二者搭配使用,单独用数值易出偏差;
  • 麻痹、中毒、死亡等瞬时状态变量仅在状态持续期间有数据,状态解除后自动清零,属正常机制;
  • 未注册账号的注册、登录、登出时间变量为空,新账号登录次数默认0;
  • 散人玩家无法读取行会职位、会长、官员相关变量,脚本需前置行会加入状态判定;
  • <$ISGUILDMASTER>、<$ISGUILDOFFICER> 为即时权限判定,行会换届后需刷新脚本。

变量名核心用途
<$PKPOINT>读取PK值(红名判定依据)
<$PKLEVEL>读取PK等级
<$ISRED>判定是否红名状态(1是/0否)
<$ISDEAD>判定是否死亡状态(1是/0否)
<$ISFLY>判定是否麻痹或石化状态
<$ISPOISON>判定是否中毒状态
<$ISMOUNT>判定是否骑马(1是/0否)
<$ISALLDEAD>判定是否全队死亡
<$ACCOUNT>读取登录账号名
<$REGTIME>读取账号注册时间
<$LASTLOGINTIME>读取最后登录时间
<$LASTLOGOUTTIME>读取最后登出时间
<$LOGINCOUNT>统计登录次数
<$GUILDRANK>读取行会职位等级
<$ISGUILDMASTER>判定是否行会会长(1是/0否)
<$ISGUILDOFFICER>判定是否行会官员

攻防、货币与坐标变量速查人物攻防属性变量
读取人物攻防、命中、攻速等战斗属性,严格区分属性上下限,包含多组别名变量,适配战力判定、伤害计算类脚本。
排查要点:
  • 上下限数值混淆时,DC/MAC/SC为下限、MAX系列为上限,别名变量功能一致,禁止混用;
  • 战斗属性读取异常时,穿戴装备后需在装备变动触发脚本中重新读取;
  • 部分引擎不支持魔法攻速变量,需核对引擎兼容范围。

变量名核心用途
<$AC>读取人物防御下限
<$MAXAC>读取人物防御上限
<$MAC>读取人物魔防下限
<$MAXMAC>读取人物魔防上限
<$DC>读取人物物理攻击下限
<$MAXDC>读取人物物理攻击上限
<$DCMIN>读取人物物理攻击下限(别名)
<$DCMAX>读取人物物理攻击上限(别名)
<$MC>读取人物魔法攻击下限
<$MAXMC>读取人物魔法攻击上限
<$MCMIN>读取人物魔法攻击下限(别名)
<$MCMAX>读取人物魔法攻击上限(别名)
<$SC>读取人物道术攻击下限
<$MAXSC>读取人物道术攻击上限
<$SCMIN>读取人物道术攻击下限(别名)
<$SCMAX>读取人物道术攻击上限(别名)
<$HIT>读取人物命中值
<$SPEED>读取人物攻击速度
<$MAGICSPEED>读取人物魔法施放速度

1.png

货币积分声望变量
涵盖游戏内全部流通货币、积分、声望、战功等资源变量,精准区分背包与仓库货币数据,是奖励发放、数值扣取、权限解锁脚本的基础变量。
排查要点:
  • 货币统计不准时,混淆 <$GOLDCOUNT>(背包金币)与 <$STOREMONEY>(仓库金币),统计总金币需叠加两组变量;
  • 积分声望为永久存储属性,修改后需执行保存指令,单纯重启本地服务端无法固化数据;
  • 轻量引擎不支持细分货币变量,需核对引擎兼容类型;
  • 荣誉威望数值异常时,部分版本需开启对应玩法功能后变量才生成数据;
  • 贡献度读取失效时,行会贡献变量仅加入行会的玩家有数据,散人玩家读取默认无返回值。

变量名核心用途
<$GOLDCOUNT>读取背包金币数量(不含仓库)
<$STOREMONEY>读取仓库金币数量
<$GAMEGOLD>读取元宝或付费货币数量
<$GAMEPOINT>读取活动或会员积分数量
<$CREDIT>读取声望或荣誉值
<$BONUSPOINT>读取Bonus奖励积分数量
<$CONTRIBUTION>读取贡献度数值
<$HONOR>读取荣誉值
<$PRESTIGE>读取威望值
<$FEAT>读取战功或功勋值

坐标地图在线变量
涵盖人物实时坐标、地图信息、在线时长、安全区判定等场景变量,用于地图限制、区域触发、在线时长统计脚本。
排查要点:
  • 坐标判定失效时,人物移动、切图后坐标不会自动刷新,需绑定移动、换图触发事件重新读取;
  • 地图名称空值时,小众地图、未配置地图文本的地图 <$MAPTITLE> 返回空,精准判定优先用 <$MAP> 地图代码;
  • 在线时长混淆时,<$ONLINETIME> 为本次登录时长,<$TOTALONLINETIME> 为账号总在线时长;
  • 轻量引擎不支持 <$SAFEZONE> 安全区判定,需手动用地图坐标范围判定;
  • 楼层Z坐标无数据属正常现象,仅洞穴、多层副本等特殊地图会返回Z坐标。

变量名核心用途
<$X>读取人物当前X坐标
<$Y>读取人物当前Y坐标
<$Z>读取人物当前Z坐标或楼层
<$MAP>读取地图代码
<$MAPNAME>读取地图文件名
<$MAPTITLE>读取中文地图名称
<$ONLINETIME>读取在线时长(秒)
<$ONLINEDAY>读取在线天数
<$ONLINEMINUTE>读取在线分钟数
<$TOTALONLINETIME>读取累计在线时长(秒)
<$SAFEZONE>判定是否在安全区(1是/0否)

2.png

脚本实操:变量查表落地
变量速查表落地到实际脚本里,按四步走:
  • 定位分类:先确认要读的数据归属哪一类(人物、装备、货币、行会还是系统全局),缩小到对应分类表格;
  • 核对变量名:把表格里的变量名原样复制到脚本中,注意反引号与尖括号不参与拼写,检查是否有空格混入;
  • 取值展示:展示或判定时套 <$STR(变量)>,触发脚本锁定当前对象时套 <$CSTR(<$变量>)>;
  • 前置判定:无行会、无英雄、无召唤物、未穿戴装备的变量为空值,先做空值判定再取用,避免报错。
以本地版本脚本目录为例,脚本文件通常放在 D:\本地传奇版本\Mir200\Envir\Market_Def 文件夹,新增NPC脚本后重载脚本或重启本地服务端生效。
; 货币判断与发放示例#IFCHECKGOLD 5000#ACTMOV S1 <$GOLDCOUNT>SENDMSG 0 玩家 <$STR(S1)> 拥有金币,满足进入条件装备、社交与召唤变量速查全套装备读取变量
全覆盖读取人物全身穿戴装备的名称、耐久、属性数据,区分左右手饰品,支持装备校验、装备回收、战力核算脚本。
排查要点:
  • 装备读取为空时,对应装备栏未穿戴物品,未做空值判定会导致脚本报错;
  • 左右手饰品混淆时,<$BRACELET>、<$RING> 为默认右手,左手需单独用L后缀变量;
  • 耐久读取异常时,未穿戴装备的耐久变量无数据,装备掉落或脱下后立即清空;
  • 低版本引擎不支持NAME后缀别名变量,建议优先使用基础变量。

变量名核心用途
<$WEAPON>读取武器名称
<$WEAPONNAME>读取武器名称(别名)
<$WEAPONDURA>读取武器当前耐久
<$WEAPONMAXDURA>读取武器最大耐久
<$WEAPONSTRONG>读取武器强度或幸运值
<$WEAPONHOLY>读取武器神圣值
<$HELMET>读取头盔名称
<$HELMETNAME>读取头盔名称(别名)
<$HELMETDURA>读取头盔耐久
<$ARMOUR>读取衣服名称
<$ARMOURNAME>读取衣服名称(别名)
<$ARMOURDURA>读取衣服耐久
<$NECKLACE>读取项链名称
<$NECKLACENAME>读取项链名称(别名)
<$NECKLACEDURA>读取项链耐久
<$BRACELET>读取手镯名称(默认右手)
<$BRACELETL>读取左手镯名称
<$BRACELETR>读取右手镯名称
<$BRACELETNAME>读取手镯名称(别名)
<$BRACELETDURA>读取手镯耐久
<$RING>读取戒指名称(默认右手)
<$RINGL>读取左戒指名称
<$RINGR>读取右戒指名称
<$RINGNAME>读取戒指名称(别名)
<$RINGDURA>读取戒指耐久
<$BOOTS>读取靴子名称
<$BOOTSNAME>读取靴子名称(别名)
<$BOOTSDURA>读取靴子耐久
<$BELT>读取腰带名称
<$BELTNAME>读取腰带名称(别名)
<$BELTDURA>读取腰带耐久
<$CHARM>读取护身符或宝石名称
<$CHARMNAME>读取护身符或宝石名称(别名)
<$ARMRING>读取护腕或臂环名称
<$MASK>读取面具或面巾名称
<$CLOAK>读取披风或斗笠名称
<$WAIST>读取腰坠或腰饰名称

组队师徒婚姻变量
涵盖组队、师徒、结婚三大社交体系变量,用于组队buff、师徒奖励、婚姻特权脚本开发。
排查要点:
  • 玩家未组队时读取组队变量无返回值,必须前置判定组队状态;
  • <$ISteamLEADER> 仅实时判定当前队长,组队转移后需刷新变量;
  • 解除师徒、离婚后变量不会自动清空,需手动重置;
  • <$TEAMCOUNT> 不包含自己,仅统计队友数量,统计全队人数需加1。

变量名核心用途
<$TEAM>读取组队信息
<$TEAMCOUNT>统计组队人数
<$TEAMLEADER>读取队长名称
<$TEAMINDEX>读取组队索引ID
<$ISTEAMLEADER>判定是否队长(1是/0否)
<$STNAME>读取师徒名称
<$STLEVEL>读取师徒等级
<$MASTERNAME>读取师父名称
<$APPRENTICENAME>读取徒弟名称
<$MASTERCOUNT>统计徒弟数量
<$MARRYNAME>读取配偶或结婚对象名称
<$ISMARRIED>判定是否结婚(1是/0否)
<$MARRYTIME>读取结婚时间

英雄专属变量
专属合击版本英雄体系变量,统一以H.为前缀,仅成功召唤英雄后可读取有效数据,用于英雄等级判定、属性展示、合击技能触发脚本。
排查要点:
  • 所有英雄变量为空时,未召唤英雄、英雄死亡未复活是最常见原因;
  • 人物与英雄变量混用时,未带H.前缀会读到人物数据而非英雄数据;
  • 英雄属性不刷新时,英雄升级、换装后需重新读取变量;
  • 轻量引擎不支持细分英雄变量,仅基础等级、名称可用。

变量名核心用途
<$H.USERNAME>读取英雄名称
<$H.LEVEL>读取英雄等级
<$H.LEVELNAME>读取英雄等级称号
<$H.GENDER>读取英雄性别
<$H.JOB>读取英雄职业
<$H.HP>读取英雄当前血量
<$H.MAXHP>读取英雄血量上限
<$H.MANA>读取英雄当前蓝量
<$H.MAXMANA>读取英雄蓝量上限
<$H.DC>读取英雄物理攻击
<$H.MAXDC>读取英雄物理攻击上限
<$H.MC>读取英雄魔法攻击
<$H.MAXMC>读取英雄魔法攻击上限
<$H.SC>读取英雄道术攻击
<$H.MAXSC>读取英雄道术攻击上限
<$H.AC>读取英雄防御
<$H.MAXAC>读取英雄防御上限
<$H.MAC>读取英雄魔防
<$H.MAXMAC>读取英雄魔防上限
<$H.EXP>读取英雄当前经验
<$H.MAXEXP>读取英雄升级经验
<$H.STAMINA>读取英雄体力值
<$H.LUCK>读取英雄幸运值
<$H.CURSE>读取英雄诅咒值
<$H.DURABILITY>读取英雄装备耐久
<$H.ATTACKSPEED>读取英雄攻击速度
<$H.PKPOINT>读取英雄PK值
<$H.WEAPON>读取英雄武器名称
<$H.HELMET>读取英雄头盔名称
<$H.ARMOUR>读取英雄衣服名称
<$H.NECKLACE>读取英雄项链名称
<$H.BRACELET>读取英雄手镯名称
<$H.RING>读取英雄戒指名称
<$H.BOOTS>读取英雄靴子名称
<$H.BELT>读取英雄腰带名称
<$H.MAP>读取英雄所在地图代码
<$H.MAPTITLE>读取英雄所在地图名称
<$H.X>、<$H.Y>读取英雄坐标
<$H.ONLINE>判定英雄是否召唤(1在线/0离线)
<$H.COMBAT>读取英雄合击值或怒气值
<$H.MAXCOMBAT>读取英雄合击值上限

宠物灵兽变量
以PET.为前缀的召唤物体系变量,全覆盖召唤物基础属性、等级、血量、存活判定,仅成功召唤宠物后变量生效。
排查要点:
  • 所有PET变量为空时,未召唤宠物、宠物死亡未复活、未开启本地服务端宠物系统是核心原因;
  • 宠物属性不刷新时,宠物升级、进阶后需在宠物状态变动触发脚本中重新读取;
  • 分身、临时召唤物、永久灵兽变量相互独立,不可通用;
  • 轻量引擎裁剪了细分宠物变量,仅支持名称、等级基础变量;
  • 宠物战力判定时,buff增益属性无法通过基础变量读取,需搭配专属加成变量核算。

变量名核心用途
<$PETNAME>读取召唤物名称
<$PETLEVEL>读取召唤物等级
<$PETHP>读取召唤物当前血量
<$PETMAXHP>读取召唤物血量上限
<$PETATTACK>读取召唤物攻击力
<$PETDEFENSE>读取召唤物防御力
<$PETCOUNT>统计召唤物数量
<$PETINDEX>读取召唤物索引或编号
<$PETEXPTIME>读取召唤物剩余存在时间
<$PETTYPE>读取召唤物类型
<$PETMASTER>读取召唤物主人名称

战斗、技能与仓储变量速查击杀怪物BOSS变量
全覆盖怪物属性、击杀数据、BOSS专属标识、掉落关联、击杀统计变量,用于首杀奖励、BOSS刷新监控、击杀计数脚本。
排查要点:
  • 怪物变量读取为空时,无当前锁定怪物目标、未触发击杀事件,脱离场景后变量自动清空,属正常机制;
  • BOSS判定失效时,普通小怪与BOSS变量混用,需用专属BOSS标识变量做前置判定;
  • 击杀计数异常时,需区分玩家击杀、宠物击杀、英雄击杀,过滤非玩家有效击杀;
  • 怪物属性不刷新时,怪物刷新、重生后需重新读取变量;
  • 首杀奖励重复发放时,需搭配标记位变量存储首杀状态,防止重启后状态清零重复领奖;
  • 轻量引擎仅支持基础怪物名称、血量变量。

变量名核心用途
<$KILLMONNAME>读取人物击杀怪物名称(不含宝宝)
<$KILLMONNAMEEX>读取人物加宝宝击杀怪物名称(推荐通用)
<$KILLMONLEVEL>读取击杀怪物等级
<$KILLMONEXP>读取击杀获得经验值
<$KILLMONGOLD>读取击杀获得金币数量
<$KILLMONCOUNT>统计击杀怪物数量
<$FIRSTKILLBOSS>判定是否BOSS首杀(1是/0否)
<$DAMAGEMONNAME>读取造成伤害的怪物名称
<$ATTACKMONNAME>读取攻击你的怪物名称
<$LASTMONNAME>读取最后攻击的怪物名称
<$MONSTERNAME>读取当前怪物名称
<$MONSTERLEVEL>读取当前怪物等级
<$MONSTERHP>读取当前怪物血量
<$MONSTERMAXHP>读取当前怪物血量上限
<$TODAYKILLCOUNT>统计今日击杀数量
<$WEEKKILLCOUNT>统计本周击杀数量
<$TOTALPKCOUNT>统计总PK次数
<$KILLPLAYERNAME>读取击杀的玩家名称
<$KILLEDBYNAME>读取被击杀的凶手名称
技能变量
全覆盖人物主动技能、被动技能、等级、熟练度、冷却状态变量,用于技能解锁判定、技能升级校验、冷却限制脚本。
排查要点:
  • 技能变量读取为空时,人物未学习对应技能,需前置技能解锁判定;
  • 技能等级刷新异常时,技能升级后需重新触发脚本读取;
  • 冷却判定失效时,混淆技能全局冷却与独立冷却变量,部分引擎不支持细分CD变量;
  • 熟练度满值后不再累计属于版本机制,非变量故障;
  • 被动技能无主动触发机制,部分被动变量仅在战斗状态下刷新数据。

变量名核心用途
<$MAGICLEVEL>读取当前技能等级
<$MAGICEXP>读取当前技能经验
<$MAGICMAXEXP>读取技能升级所需经验
<$MAGICNAME>读取技能名称
<$MAGICID>读取技能ID或编号
<$MAGICCOUNT>统计已学技能数量
<$SKILLLEVEL>读取技能等级(别名)
<$SKILLEXP>读取技能经验(别名)
<$FIRESKILL>读取火系技能等级
<$ICESKILL>读取冰系技能等级
<$THUNDERSKILL>读取雷系技能等级
<$WINDSKILL>读取风系技能等级
<$EARTHSKILL>读取土系技能等级
<$HOLYSKILL>读取神圣系技能等级
<$DARKSKILL>读取暗黑系技能等级
<$PHYSICSKILL>读取物理系技能等级
<$SWORDSKILL>读取剑法技能等级
<$SPELLSKILL>读取法术技能等级
<$TAOSKILL>读取道术技能等级
仓储背包变量
精准区分背包与仓库独立数据的容量、存储、堆叠变量,用于背包扩容检测、仓库存储统计、满包裹拦截脚本。
排查要点:
  • 容量统计不准时,混淆背包总容量、已用容量、剩余容量,统计可存放空间需读剩余容量变量;
  • 物品存放拦截失效时,物品增减后需重新读取容量变量;
  • 无堆叠属性的普通物品,堆叠数量变量默认返回1,属正常机制;
  • 未开启玩家仓库功能时仓库变量为空,轻量引擎部分仓储细分变量不兼容;
  • 永久扩容与临时扩容的容量变量不互通,需区分基础容量与加成容量变量。

变量名核心用途
<$BAGCOUNT>统计背包当前物品数量
<$BAGMAX>读取背包最大格数(判满专用)
<$BAGWEIGHT>读取背包当前负重
<$BAGMAXWEIGHT>读取背包最大负重
<$BAGITEMNAME>读取背包指定物品名称
<$BAGITEMCOUNT>统计背包指定物品数量
<$BAGITEMINDEX>读取背包物品索引
<$STORECOUNT>统计仓库物品数量
<$STOREMAX>读取仓库最大格数
<$STOREWEIGHT>读取仓库当前负重
<$STOREMAXWEIGHT>读取仓库最大负重
<$STOREITEMNAME>读取仓库指定物品名称
<$STOREITEMCOUNT>统计仓库指定物品数量
<$STOREITEMINDEX>读取仓库物品索引
<$GUILDSTORECOUNT>统计行会仓库物品数量
<$GUILDSTOREMAX>读取行会仓库最大格数
<$HOUSECOUNT>统计房屋或家园物品数量
<$HOUSEMAX>读取房屋或家园最大格数
<$PETBAGCOUNT>统计宠物背包物品数量
<$PETBAGMAX>读取宠物背包最大格数

行会、系统与自定义变量速查行会领地变量
涵盖行会基础信息、领地归属、沙战状态全套变量,用于行会专属福利、领地奖励、沙战buff脚本开发。
排查要点:
  • 非沙战期间、无行会领地归属本地服务端时,行会领地相关状态变量默认空值,需在沙战场景内判定;
  • 未加入行会的散人玩家,所有行会专属变量无返回值,脚本必须前置行会加入状态判定;
  • 行会换届、职位变更、退会重加后权限变量不会实时刷新,需重新登录或触发刷新;
  • 行会领地奖励判定时,混淆领地归属行会与玩家所在行会变量,需精准区分;
  • 轻量引擎不支持行会细分统计变量,仅支持基础行会名称、人数变量;
  • 沙战开启或结束后需手动刷新沙战状态变量,否则状态数据滞后。

变量名核心用途
<$GUILDNAME>读取行会名称
<$GUILDLEVEL>读取行会等级
<$GUILDMEMBERCOUNT>统计行会人数
<$GUILDLEADER>读取行会会长名称
<$GUILDFOUNDDATE>读取行会建立日期
<$GUILDCREDIT>读取行会声望值
<$GUILDCONTRIBUTE>读取行会贡献度
<$GUILDRANK>读取行会排名
<$GUILDFUND>读取行会资金或金币
<$GUILDNOTICE>读取行会公告
<$GUILDINDEX>读取行会索引ID
<$ISGUILDWAR>判定是否行会领地攻城战状态(1是/0否)
<$CASTLEOWNER>读取行会领地归属行会名称
<$CASTLETIME>读取行会领地占领时间
<$CASTLESTATUS>读取行会领地状态
<$CASTLEWARSTART>读取攻城开始时间
<$CASTLEWAREND>读取攻城结束时间
<$CASTLELEVEL>读取行会领地等级
<$CASTLETAX>读取行会领地税率
<$CASTLEINCOME>读取行会领地收入
<$ISCASTLEOWNER>判定是否行会领地成员(1是/0否)
<$GUILDWARSTATE>读取行会战状态
<$ALLYGUILDNAME>读取盟同行会名称
<$ENEMYGUILDNAME>读取敌对行会名称

系统全局变量
涵盖本地服务端基础信息、版本数据、倍率配置、在线统计全局变量,不绑定单个玩家角色,用于服务端状态展示、倍率调控脚本。
排查要点:
  • 此类全局变量多为本地服务端启动加载数据,实时修改配置后需重启本地服务端才会刷新;
  • 未在本地服务端配置自定义倍率时,引擎默认原始倍率为1,属正常默认状态;
  • 轻量引擎不支持服务端状态细分变量;
  • 部分引擎区分实时在线、有效在线、挂机在线,变量统计口径不同导致数值偏差,需核对引擎规则。

变量名核心用途
<$SERVERNAME>读取本地服务端名称
<$SERVERTIME>读取本地服务端时间戳
<$ONLINECOUNT>统计当前在线人数
<$OPENSTIME>读取本地服务端启动时间
<$SERVERIP>读取本地服务端IP地址
<$SERVERPORT>读取本地服务端端口
<$SERVERVERSION>读取本地服务端版本号
<$SERVERDAY>读取本地服务端运行天数
<$MAXONLINE>读取历史最高在线人数
<$TOTALUSER>统计总注册人数
<$SERVERRATE>读取本地服务端综合倍率
<$EXPRATE>读取经验倍率
<$GOLDRATE>读取金币倍率
<$ITEMRATE>读取物品爆率倍率
<$DROPRATE>读取掉落倍率
<$REBIRTHCOUNT>统计全服重生次数
<$SERVERINDEX>读取本地服务端编号或区号
<$SERVERZONE>读取本地服务端分区
<$MERGETIME>读取数据合并时间
<$ISMERGED>判定是否已数据合并(1是/0否)
<$MAINTENANCE>判定是否维护中(1是/0否)
<$SERVERSTATUS>读取本地服务端状态
<$DBVERSION>读取数据库版本

内功结晶连击变量
适配内功连击版本,用于内功升级、结晶兑换、连击解锁功能。
排查要点:
  • 所有变量为空时,本地服务端无内功连击体系、未开启对应版本功能;
  • 加成属性读取为0时,未升级对应养成系统,无属性加成,属正常现象;
  • 连击次数判定失效时,连击未触发、连击冷却中,变量不会刷新数据;
  • 元神变量异常时,部分引擎元神与英雄变量冲突,需区分版本体系,禁止混用。

变量名核心用途
<$NEIGONGLEVEL>读取内功等级
<$NEIGONGEXP>读取内功当前经验
<$NEIGONGMAXEXP>读取内功升级所需经验
<$NEIGONGHP>读取内功血量加成
<$NEIGONGMAXHP>读取内功血量上限加成
<$NEIGONGMP>读取内功蓝量加成
<$NEIGONGMAXMP>读取内功蓝量上限加成
<$NEIGONGDC>读取内功攻击加成
<$NEIGONGMC>读取内功魔攻加成
<$NEIGONGSC>读取内功道术加成
<$NEIGONGAC>读取内功防御加成
<$NEIGONGMAC>读取内功魔防加成
<$JINGJINGLEVEL>读取天地结晶等级
<$JINGJINGEXP>读取天地结晶经验
<$JINGJINGMAXEXP>读取天地结晶升级经验
<$JINGLUOLEVEL>读取经络等级
<$JINGLUOEXP>读取经络经验
<$JINGLUOMAXEXP>读取经络升级经验
<$JINGLUOPOINT>读取经络穴位点数
<$LIANJICOUNT>读取连击次数
<$LIANJISKILL>读取连击技能等级
<$LIANJIPOWER>读取连击威力
<$LIANJISLOT>读取连击技能槽位
<$COMBOCOUNT>读取连击数(别名)
<$COMBOLEVEL>读取连击等级
<$HEARTLEVEL>读取心法等级
<$HEARTEXP>读取心法经验
<$HEARTMAXEXP>读取心法升级经验
<$YUANSHENLEVEL>读取元神等级
<$YUANSHENEXP>读取元神经验
<$YUANSHENHP>读取元神血量

任务自定义变量
包含系统任务、成就、全类型自定义变量,支持玩家专属数据存储、脚本标记、计时器、冷却判定。
排查要点:
  • 自定义变量数据丢失时,USER系列为人物专属(永久存储),FLAG/TIMER为临时变量(下线清空),混淆导致数据重置;
  • 任务状态判定错误时,未匹配0/1/2状态码,任务进度更新后未刷新变量;
  • 全局变量不共享时,混淆个人自定义与全服自定义变量,导致全服数据不同步;
  • 变量冲突时,自定义变量未加专属前缀,与系统变量、其他脚本变量冲突报错。

变量名核心用途
<$TASKID>读取当前任务ID
<$TASKNAME>读取任务名称
<$TASKSTATUS>读取任务状态(0未接/1进行中/2已完成)
<$TASKCOUNT>统计已接任务数量
<$TASKPROGRESS>读取任务进度
<$TASKREWARD>读取任务奖励
<$DAILYTASKCOUNT>统计每日任务完成数
<$WEEKTASKCOUNT>统计每周任务完成数
<$ACHIEVEMENTID>读取成就ID
<$ACHIEVEMENTLEVEL>读取成就等级
<$ACHIEVEMENTPOINT>读取成就点数
<$USERDATA1>自定义数据变量1
<$USERDATA2>自定义数据变量2
<$USERDATA3>自定义数据变量3
<$USERDATA4>自定义数据变量4
<$USERDATA5>自定义数据变量5
<$USERDATA6>自定义数据变量6
<$USERDATA7>自定义数据变量7
<$USERDATA8>自定义数据变量8
<$USERDATA9>自定义数据变量9
<$USERDATA10>自定义数据变量10
<$USERINT1>到<$USERINT50>自定义整数变量(1到50)
<$USERSTR1>到<$USERSTR20>自定义字符串变量(1到20)
<$GLOBALDATA1>到<$GLOBALDATA10>全局自定义变量(全服共享)
<$PARAM1>到<$PARAM10>脚本参数变量(1到10)
<$RETCODE>读取脚本返回值或执行结果
<$FLAG1>到<$FLAG20>标记位变量(1到20)
<$TIMER1>到<$TIMER10>计时器变量(1到10)
<$COOLDOWN1>到<$COOLDOWN10>冷却时间变量(1到10)

NPC物品变量
专门用于NPC交互、物品操作的专属变量,支持读取NPC信息、物品属性、掉落拾取使用数据。
排查要点:
  • NPC变量为空时,未选中或未交互当前NPC,脱离交互场景后变量立即清空;
  • 物品数据读取错误时,未区分当前操作物品、掉落物品、拾取物品,混用ITEM/DROPITEM/PICKUPITEM变量;
  • 物品属性为0时,无强化、无宝石、无品质的基础物品,对应属性变量默认返回0;
  • 坐标拼写错误时,正确写法是 <$NPCY>,旧版本常见拼写 <$NICY> 会取不到值,需严格核对。

变量名核心用途
<$NPCNAME>读取当前NPC名称
<$NPCID>读取NPC编号或ID
<$NPCX>读取NPC的X坐标
<$NPCY>读取NPC的Y坐标
<$NPCMAP>读取NPC所在地图
<$NPCFLAG>读取NPC标记位
<$ITEMNAME>读取当前物品名称
<$ITEMCOUNT>读取当前物品数量
<$ITEMLEVEL>读取物品等级
<$ITEMVALUE>读取物品价值或价格
<$ITEMTYPE>读取物品类型
<$ITEMID>读取物品ID或编号
<$ITEMDURA>读取物品当前耐久
<$ITEMMAXDURA>读取物品最大耐久
<$ITEMSTRONG>读取物品强化等级
<$ITEMGEM>读取物品宝石孔数
<$ITEMQUALITY>读取物品品质
<$ITEMCOLOR>读取物品颜色或稀有度
<$DROPITEMNAME>读取掉落物品名称
<$DROPITEMCOUNT>读取掉落物品数量
<$PICKUPITEMNAME>读取拾取物品名称
<$PICKUPITEMCOUNT>读取拾取物品数量
<$USEITEMNAME>读取使用物品名称
<$USEITEMCOUNT>读取使用物品数量

时间随机变量
涵盖系统时间、日期、星期、随机数、活动时间通用变量,用于限时活动、每日任务、随机奖励脚本。
排查要点:
  • 时间读取偏差时,本地服务端时间与系统时间不一致,以本地服务端时间为准;
  • 随机数固定不变时,未在每次触发事件中重新调用随机变量,导致单次随机值重复使用;
  • 轻量引擎不支持节假日与周末智能判定变量,需手动配置时间段;
  • 活动结束后 <$ACTIVITYTIME> 不会自动清零,需手动重置状态。

变量名核心用途
<$YEAR>读取当前年份
<$MONTH>读取当前月份
<$DAY>读取当前日期(日)
<$HOUR>读取当前小时
<$MINUTE>读取当前分钟
<$SECOND>读取当前秒数
<$WEEKDAY>读取当前星期几(0到6)
<$CURRENTDATE>读取当前日期字符串
<$CURRENTTIME>读取当前时间字符串
<$TIMESTAMP>读取当前时间戳
<$RANDOM>生成随机数(0到指定范围)
<$RAND>生成随机数(别名)
<$RANDOM1>到<$RANDOM10>多组随机数变量
<$DICE>掷骰子点数(1到6)
<$LUCKYNUMBER>读取幸运数字
<$WEEKOFYEAR>读取一年中的第几周
<$DAYOFYEAR>读取一年中的第几天
<$DAYOFMONTH>读取一月中的第几天
<$WEEKOFMONTH>读取一月中的第几周
<$ISWEEKEND>判定是否周末(1是/0否)
<$ISHOLIDAY>判定是否节假日(1是/0否)
<$ACTIVITYTIME>读取活动剩余时间
<$ACTIVITYSTATUS>读取活动状态

新手易错点脚本写法极简规范
汇总脚本编写通用规范、语法规则、兼容要点,解决多数脚本变量失效、判定错误、变量报错问题。

序号规范要点详细说明
1触发脚本用 <$CSTR>攻击、死亡、拾取、打怪等触发脚本:<$CSTR(<$变量>)>;前缀C.锁定当前触发对象
2普通展示用 <$STR>普通展示、判定、离线读取:<$STR(<$变量>)>
3数值运算必须套 <$STR>数值对比、加减奖励必须套 <$STR> 转换,否则判定失效
4英雄功能用H.前缀全程使用H.前缀,杜绝与人物变量混用
5空数据必须前置判定无行会、无英雄、无领地、无召唤物必须前置空值判定
6变量名不区分大小写变量名不区分大小写,但拼写错误仍会失效
7禁止中文标点变量和脚本中禁止使用中文标点、全角空格
8临时变量下线清空状态类变量下线或重启后清空,属性、货币、仓储变量永久存储
9多引擎兼容注意主流引擎全兼容;轻量引擎仅支持基础变量;部分引擎仅支持单层嵌套;老旧引擎不支持复杂嵌套
10自定义变量加前缀自定义变量建议加前缀标识,避免与系统变量冲突

高频误操作再提醒三点:一是复制变量名时把表格里的反引号也带进脚本,反引号不是变量内容;二是数值比较时两边类型不一致,字符型直接相加是拼接不是求和;三是改完脚本忘记重载,本地服务端仍按旧脚本运行,变量表现自然不对。
问题速查
1. 问:传奇脚本变量是什么,分哪几类?
脚本变量是脚本读取游戏数据的统一入口,写法是尖括号加美元符号引用变量名。按作用域分全局变量与私人变量:全局变量全服共享,私人变量只属于当前角色;按类型分数字变量与字符变量;按归属分人物、英雄、宠物、行会、系统全局等类别。写脚本前先确定数据归属,再选对应变量,能避开多数取值错误。(来源:整理自百度知道真实提问:百度知道2022-11)
2. 问:全局变量和私人变量有什么区别?
全局变量全服共享,任意角色改动后其他角色读到的都是新值,适合存行会战、跨区排行这类公共数据;私人变量只属于当前角色,互不干扰,适合存个人任务进度。数字变量可加减运算,字符变量存文本;可保存变量重启不丢,临时变量关对话框或重启即清空。区分这两类,能避免把公共数据误存成个人数据。
3. 问:变量读取为空是什么原因?
先核对变量名拼写与多余空格,拼错一个字母就取不到值;再看场景归属,未召唤英雄、未加入行会、未穿戴装备时对应变量自然为空,属正常机制,脚本需前置状态判定;最后确认引擎支持范围,轻量引擎部分细分变量不提供。按拼写、场景、兼容三步排查,多数读取为空都能定位到原因。
4. 问:背包金币和仓库金币变量有什么区别?
背包金币变量读取的是随身携带的金币数量,仓库金币变量读取的是仓库存储数量,两者互不合并。统计玩家总金币需要把两组变量相加;发奖励、扣费用时也要分清目标,避免从错误来源扣取。脚本里做货币类功能前,先确认操作对象是背包还是仓库,再选对应变量。
5. 问:变量加减运算INC和DEC怎么写?
INC做加法、DEC做减法,第一个参数直接写变量名,后续参与运算的变量必须用<$STR(NX)>包裹取值,例如INC N2 <$STR(N4)>表示N2加上N4的结果写回N2;字符变量直接相加是文本拼接,数字运算前先确认变量是数字类型。数值奖励、扣费功能都按这个写法套用。(来源:整理自百度知道真实提问:百度知道2018-03)
6. 问:自定义字符变量怎么赋值和读取?
自定义字符变量以S字母开头后跟数字或名称,用MOV命令赋值,展示时用<$STR(变量)>取值;与系统变量一样遵守拼写规则,建议加前缀标识区分用途,避免与其他脚本冲突;字符变量适合存玩家名称、任务标记等文本数据。赋值后用<$STR()>展示即可,注意字符变量不能直接做数值运算。(来源:整理自百度知道真实提问:百度知道2025-08)
7. 问:变量重启后就丢了是为什么?
变量分可保存与临时两类:可保存变量(属性、货币、仓储、自定义存储类)重启后仍保留,临时变量(状态类、标记位、计时器)下线或重启即清空。任务进度、活动状态这类需要长期保留的数据,务必存到可保存变量里,否则重启丢数据属于正常机制,不是脚本故障。
8. 问:变量计算为什么会出现拼接结果?
字符变量之间做加法是文本拼接,例如两个字符值2和3相加得到23;要做数值计算,先把字符值转入数字变量,例如MOV M55 <$STR(S0)>再做乘法运算,得到数值结果后写回字符变量展示。判定比较也要先确认双方类型一致,数字与字符直接比较会得到错误结果。


总结
把19类变量按速查表方式收拢后,日常写脚本只需要记住三步:先确定要读的数据归属哪一类,再按表找变量名,最后用<$STR()>取值展示。脚本变量是这套机制的核心,拼写核对、空值前置判定、临时与可保存变量区分,做好这三点就能避开大多数取值问题。
本文脚本变量取值说明已在本地环境逐项核对,变量机制在主流传奇引擎中普遍适用,不同引擎存在命名与层级差异,跨引擎使用需要自行测试修改;本文内容仅供单机本地学习调试。

温馨提示:

如需运营或商用本站资源,请在下载源码后联系版权方进行授权,本站不参与任何运营游戏相关活动,仅供从业者交流技术使用.对于因后续运营游戏产生的版权纠纷,与本站无关。


郑重声明:本站所有资源仅供用户本地电脑学习源代码的内含设计思想和原理,禁止任何其他用途!→ 详情点击查看 ←
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ在线咨询
咨询客服
87599992
QQ群交流
1129542134
快速回复 返回顶部 返回列表