您当前的位置:首页 > 其他技术 > 传奇漏洞

权限10的脚本变量命令的用法详解

本文出处:网游动力作者:本站发布时间:2012-01-26阅读次数:

以下为脚本命令的解释
【检测后缀命令】
此属性命令为#IF后#ACT前,作为检测是否为真的命令。
〖CHECK [001-?] 1/0〗 查看人物指定的变量是否为1/0。如果为真则通过至#act
〖RANDOM (1-?)〗 随机一个数字,根据后边的数字判定当前通过至#act的几率。
★注意这里有一些用法错误。★
错误一:
#if
RANDOM 3
#act
goto 1
break
#if
RANDOM 3
#act
goto 2
break
#if
RANDOM 3
#act
goto 3
break
很多人认为random的具体运行是首先在3以下随机取一个值,然后该脚本内的random 3都不再取值了。那样理解的时候goto 1、2、3的几率是相等的,都是1/3。这是一个理解上的错误,实际这里运行的操作是这样的,到达 1的几率为1/3,到达2的几率为先2/3然后1/3就是2/9。而到达3的几率则为2/3然后2/3然后1/3实际几率为4/27
!同样错误的还有如下写法
#if
RANDOM 3
#act
goto 1
#elseact
#if
RANDOM 3
#act
goto 2
#elseact
#if
RANDOM 3
#act
goto 3
#elseact
close
错误二:
#if
RANDOM 3
#act
goto 1
break
#if
RANDOM 2
#act
goto 2
break
#if
RANDOM 1
#act
goto 3
break
有人认为在第一个random的时候会给一个隐藏的值在3以下做一个赋值。然后以后的random就是检测是否自己的 random值和这个隐藏值相同,如果相同则#act。这个也是一种错误理解,虽然同是对random理解错误造成的, 但是该错误与错误一理解上是不同的。但是这种随机的设计方式是提倡的,利用P变量的随机取值是可以完成的
。具体随机的用法请查看【脚本教程示例:随机处理系统】
〖EQUAL〗(变量)(数值)测试指定变量的值是否等于该命令指定值,可惜的是此处无法用PDG等变量,只能用数字常量!强烈建议Jacky添加该功能。
〖LARGE〗(变量)(数值)测试指定变量的值是否大于该命令指定值,同样非常可惜该数值只能为常量。
〖SMALL〗(变量)(数值)测试指定变量的值是否小于该命令指定值,同样非常可惜该数值只能为常量。
〖GENDER 〗(man/woman)检测是否为男/女
〖hour/min〗(时间1)(时间1)检测当前时间(小时/分钟)是否为时间1与时间2之间。
〖CHECKLEVEL〗(数值)测试等级数量是否大于该命令指定值,同样非常可惜该数值只能为常量。
〖CHECKJOB〗(职业)测试对话职业是否为指定职业,其后缀的根据M2不同而不同基础M2为:Warr, Wizard, Taos。
〖CHECKITEM〗(物品名称)(数量)查看人物背包中是否指定物品名称的数量是否大于该命令指定值,该数量不写默认为1既检测有没有该物品。同样非常可惜该数值只能为常量。
〖CHECKITEMW〗(物品名称)(数量)查看人物所佩带装备中是否指定物品名称的数量是否大于该命令指定值,该数量不写默认为1既检测有没有该物品。同样非常可惜该数值只能为常量。
〖CHECKGOLD〗(数值)测试金币数量是否大于该命令指定值,同样该数值只能为常量。
〖ISTAKEITEM〗(物品名称)检测刚刚取下的物品是否指定物品名称。
〖CHECKDURAEVA〗(物品名)(数值)查看人物背包中是否指定的物品名称的持久是否大于该命令指定值,该数量不写默认为1既检测有没有该物品。同样非常可惜该数值只能为常量。
〖DAYOFWEEK〗(星期数)查看当天是否为指定的星期数量。
〖CHECKPKPOINT〗(数值)测试PK值是否大于该命令指定值。
〖CHECKLUCKYPOINT〗(数值)测试幸运值是否大于该命令指定值。
〖CHECKMONMAP〗(地图名)(数值)测试指定的地图名中的怪物数量是否大于该命令指定值。同样非常可惜该数值只能为常量。
〖CHECKHUM〗(地图名)(数值)测试指定的地图名中的人物数量是否大于该命令指定值。同样非常可惜该数值只能为常量。
〖CHECKBAGGAGE〗测试背包是否满了
〖CHECKNAMELIST〗[路径](文件名)检测指定路径下文件名的文件内是否有该玩家当前人物名称。
〖CHECKIPLIST〗[路径](文件名)检测指定路径下文件名的文件内是否有该玩家当前IP地址。
#〖CHECKMARRYED〗检测当前对话人物是否结过婚。
#〖CHECKGUILDMASTER〗检测当前对话人物是否属于行会掌门。
#〖CHECKOFGUILD〗(行会名)检测当前对话人物是否属于指定行会。
#〖CHECKGUILDOFSBK〗检测当前对话人物所属于行会是否为沙。
#〖CHECKATTACKSBKGM〗检测当前对话人物所属于行会是否为当前攻沙行会。
#〖CHECKACCOUNTLIST〗[路径](文件名)检测指定路径下文件名的文件内是否有该玩家当前帐号。
#〖CHECKPAYMENT〗检测当前对话人物是否充值。
#〖CHECKBBCOUNT〗(数值)检查人物所带宝宝数量。
#〖CHECKCREDITPOINT〗(数值)检查当前人物的声望是否大于命令指定数值。
#〖EXECHECK NAMEIPLIST〗[路径](文件名)检测指定路径下文件名的文件内该玩家人物名称后的IP是否与当前登陆IP相同。
#〖EXECHECK DIR〗检查当前人物对面方向站的人物方向是否正确,多用于结婚。
#〖EXECHECK DIR 1〗检查当前人物对面方向站正确方向的人物是否与当前人物性别一致。多用于结婚。
#〖EXECHECK DIR 2〗检查当前人物对面方向站正确方向的人物是否与当前人物性别不同。多用于结婚。
#〖EXECHECK POSTLEVEL〗(数值)检查当前人物对面方向站正确方向的人物的等级是否大于命令指定数值。
#@〖CHECKGUILDLIST〗[路径](文件名)检测指定路径下文件名的文件内该玩家所属行会名称是否存在。
#@〖ISADMIN〗检查当前人物是否为游戏管理员。
#@〖HAVEGUILD〗检查当前人物是否加入了行会。
#@〖ISCASTLEGUILD〗检测当前对话人物是否属于沙。
#@〖ISCASTLEMASTER〗检测当前对话人物是否为沙掌门。
#@〖ISGUILDMASTER〗检测当前对话人物是否为行会的掌门。
#@〖ISNEWHUMAN〗检测当前对话人物是否为刚注册第一次进入游戏。
#@〖CHECKSLAVECOUNT〗[控制符](数值)检查当前人物所带宝宝数量是否[>、=、、=、、=、、=、、=、、=、、=、、=、、=、、=、、=、、=、、=、、=、<]指定的数值。