在传奇脚本里,经常能看到“Check[65]0”这样的代码,很多GM搞不懂其中的“65”是什么意思,更不知道该怎么设置。其实这串代码是在检查“变量65”的值是否为0,而变量65就像一个可以存数据的小盒子,具体装什么、怎么用,全靠你在M2引擎里设定。下面就详细说说这个变量的含义、M2中的对应设置,以及怎么在脚本里灵活运用。
先搞懂“Check[65]0”的字面意思:变量与判断
“Check[65]0”是脚本里的一个条件判断命令,拆开来看很简单:
“Check”是“检查”的意思;“[65]”代表“第65号变量”;“0”是要对比的值。整句话的意思是“检查第65号变量的值是否等于0”,如果等于0,这个条件就成立,脚本会继续执行后面的操作;如果不等于0,条件就不成立,脚本会跳过。
比如在任务脚本里写:
#if
Check[65]0
#act
SENDMSG6你还没接取任务,快去村长那看看吧!
这就代表:如果变量65的值是0,就给玩家发提示“没接任务”。等玩家接了任务,就把变量65改成1,这时“Check[65]0”就不成立了,不会再发这条提示。
变量65本身没有固定含义,就像一个空白的标签纸,你可以在上面写“任务状态”,也可以写“是否获得道具”,全看你的需求。
M2引擎里的变量:从“编号”到“用途”的设定
M2引擎(也就是服务端的核心控制器)里有很多内置变量,编号从0到几百不等,65是其中一个。这些变量就像一排抽屉,每个抽屉都有编号,你可以给第65号抽屉贴个标签,规定它专门放什么东西。
在M2里设置变量65的用途,通常不用手动“创建”,因为变量是预先生成的,你只需要“规定它的含义”。具体操作步骤如下:
打开M2引擎,找到“选项”或“参数设置”(不同版本位置可能不同,一般在顶部菜单栏)。
找到“变量设置”或“全局变量”选项,里面会列出所有变量的编号。
找到编号65,在旁边的“备注”或“用途说明”里填写它的含义,比如“主线任务状态”“是否开启活动”“玩家是否加入行会”等。
这个备注只是给GM看的,方便自己记,引擎本身不看备注,只认编号和数值。比如你备注“变量65=任务状态”,那0就可以代表“未接任务”,1代表“已接任务”,2代表“任务完成”,全由你定。
变量65的常见用法:灵活定义场景
变量65的用法完全由你决定,常见的场景有这几种:
1.标记任务进度
把变量65设为“主线任务阶段”:
0=未接任务
1=已接任务但未完成
2=任务完成未领奖
3=已领奖
脚本里就可以写:
#if
Check[65]1
#act
SENDMSG6你正在做任务,去杀10只狼吧!
#if
Check[65]2
#act
SENDMSG6任务完成了,快去村长那领奖!
2.控制活动开关
把变量65设为“攻城活动是否开启”:
0=未开启
1=开启中
脚本里配合定时命令:
#if
Check[65]0
TIMETICK18:00;每天下午6点
#act
Set[65]1;把变量65改成1,代表活动开启
SENDMSG6沙巴克攻城活动开始了!
这样到了18:00,变量65自动变成1,活动就开启了。
3.记录玩家状态
每个玩家都有自己的变量65(称为“个人变量”,区别于全局变量),可以记录“是否拥有特殊权限”:
0=普通玩家
1=VIP玩家
脚本里判断:
#if
Check[65]1
#act
MAPMOVE3333333;VIP玩家传送至专属地图
普通玩家变量65是0,就触发不了这个传送。
变量65的数值怎么改?Set命令来帮忙
“Check[65]0”是检查变量,而“Set[65]X”(X是数字)是设置变量的值。比如:
玩家接任务时,脚本执行“Set[65]1”,把变量65改成1;
玩家完成任务时,执行“Set[65]2”;
活动结束时,执行“Set[65]0”。
还可以用“Inc[65]1”让变量65在原来的基础上加1(比如从1变成2),用“Dec[65]1”让它减1(从2变成1),灵活调整数值。
注意:全局变量和个人变量的区别
变量65可能是“全局变量”(全服只有一个,影响所有玩家),也可能是“个人变量”(每个玩家都有一个独立的65号变量,互不影响),这在M2里可以设置:
全局变量:比如“活动是否开启”,全服统一,改一次所有人都受影响;
个人变量:比如“玩家的任务进度”,每个玩家的65号变量值单独计算,你做了任务不影响我。
设置时在M2的“变量类型”里选“全局”或“个人”,选错了会出问题。比如把“任务进度”设成全局变量,你接了任务,全服玩家的变量65都变成1,这显然不对。
测试变量是否生效的小技巧
改完变量设置后,用简单脚本测试是否好用:
写一个测试脚本,当玩家输入“@测试变量”时触发:
#if
Check[65]0
#act
SENDMSG6变量65当前是0
Set[65]1;改写成1
#elseact
SENDMSG6变量65当前不是0
Set[65]0;改写成0
让玩家在游戏里输入“@测试变量”,第一次会显示“是0”,第二次显示“不是0”,说明变量能正常修改和读取,设置没问题。
比如有个1.80服的GM,把变量65设为“是否允许使用随机传送卷”,0代表允许,1代表禁止。攻城战时执行“Set[65]1”,玩家就用不了随机卷,防止乱跑;攻城结束后“Set[65]0”,恢复正常使用,很方便。
其实变量65就像一个万能的标记牌,你说它是什么,它就是什么。关键是在M2里想好它的用途,用“Check”命令检查,用“Set”命令修改,就能在脚本里实现各种逻辑控制。不管是任务、活动还是玩家权限,都能靠它轻松管理,用熟了会发现脚本灵活多了。
先搞懂“Check[65]0”的字面意思:变量与判断
“Check[65]0”是脚本里的一个条件判断命令,拆开来看很简单:
“Check”是“检查”的意思;“[65]”代表“第65号变量”;“0”是要对比的值。整句话的意思是“检查第65号变量的值是否等于0”,如果等于0,这个条件就成立,脚本会继续执行后面的操作;如果不等于0,条件就不成立,脚本会跳过。
比如在任务脚本里写:
#if
Check[65]0
#act
SENDMSG6你还没接取任务,快去村长那看看吧!
这就代表:如果变量65的值是0,就给玩家发提示“没接任务”。等玩家接了任务,就把变量65改成1,这时“Check[65]0”就不成立了,不会再发这条提示。
变量65本身没有固定含义,就像一个空白的标签纸,你可以在上面写“任务状态”,也可以写“是否获得道具”,全看你的需求。
M2引擎里的变量:从“编号”到“用途”的设定
M2引擎(也就是服务端的核心控制器)里有很多内置变量,编号从0到几百不等,65是其中一个。这些变量就像一排抽屉,每个抽屉都有编号,你可以给第65号抽屉贴个标签,规定它专门放什么东西。
在M2里设置变量65的用途,通常不用手动“创建”,因为变量是预先生成的,你只需要“规定它的含义”。具体操作步骤如下:
打开M2引擎,找到“选项”或“参数设置”(不同版本位置可能不同,一般在顶部菜单栏)。
找到“变量设置”或“全局变量”选项,里面会列出所有变量的编号。
找到编号65,在旁边的“备注”或“用途说明”里填写它的含义,比如“主线任务状态”“是否开启活动”“玩家是否加入行会”等。
这个备注只是给GM看的,方便自己记,引擎本身不看备注,只认编号和数值。比如你备注“变量65=任务状态”,那0就可以代表“未接任务”,1代表“已接任务”,2代表“任务完成”,全由你定。
变量65的常见用法:灵活定义场景
变量65的用法完全由你决定,常见的场景有这几种:
1.标记任务进度
把变量65设为“主线任务阶段”:
0=未接任务
1=已接任务但未完成
2=任务完成未领奖
3=已领奖
脚本里就可以写:
#if
Check[65]1
#act
SENDMSG6你正在做任务,去杀10只狼吧!
#if
Check[65]2
#act
SENDMSG6任务完成了,快去村长那领奖!
2.控制活动开关
把变量65设为“攻城活动是否开启”:
0=未开启
1=开启中
脚本里配合定时命令:
#if
Check[65]0
TIMETICK18:00;每天下午6点
#act
Set[65]1;把变量65改成1,代表活动开启
SENDMSG6沙巴克攻城活动开始了!
这样到了18:00,变量65自动变成1,活动就开启了。
3.记录玩家状态
每个玩家都有自己的变量65(称为“个人变量”,区别于全局变量),可以记录“是否拥有特殊权限”:
0=普通玩家
1=VIP玩家
脚本里判断:
#if
Check[65]1
#act
MAPMOVE3333333;VIP玩家传送至专属地图
普通玩家变量65是0,就触发不了这个传送。
变量65的数值怎么改?Set命令来帮忙
“Check[65]0”是检查变量,而“Set[65]X”(X是数字)是设置变量的值。比如:
玩家接任务时,脚本执行“Set[65]1”,把变量65改成1;
玩家完成任务时,执行“Set[65]2”;
活动结束时,执行“Set[65]0”。
还可以用“Inc[65]1”让变量65在原来的基础上加1(比如从1变成2),用“Dec[65]1”让它减1(从2变成1),灵活调整数值。
注意:全局变量和个人变量的区别
变量65可能是“全局变量”(全服只有一个,影响所有玩家),也可能是“个人变量”(每个玩家都有一个独立的65号变量,互不影响),这在M2里可以设置:
全局变量:比如“活动是否开启”,全服统一,改一次所有人都受影响;
个人变量:比如“玩家的任务进度”,每个玩家的65号变量值单独计算,你做了任务不影响我。
设置时在M2的“变量类型”里选“全局”或“个人”,选错了会出问题。比如把“任务进度”设成全局变量,你接了任务,全服玩家的变量65都变成1,这显然不对。
测试变量是否生效的小技巧
改完变量设置后,用简单脚本测试是否好用:
写一个测试脚本,当玩家输入“@测试变量”时触发:
#if
Check[65]0
#act
SENDMSG6变量65当前是0
Set[65]1;改写成1
#elseact
SENDMSG6变量65当前不是0
Set[65]0;改写成0
让玩家在游戏里输入“@测试变量”,第一次会显示“是0”,第二次显示“不是0”,说明变量能正常修改和读取,设置没问题。
比如有个1.80服的GM,把变量65设为“是否允许使用随机传送卷”,0代表允许,1代表禁止。攻城战时执行“Set[65]1”,玩家就用不了随机卷,防止乱跑;攻城结束后“Set[65]0”,恢复正常使用,很方便。
其实变量65就像一个万能的标记牌,你说它是什么,它就是什么。关键是在M2里想好它的用途,用“Check”命令检查,用“Set”命令修改,就能在脚本里实现各种逻辑控制。不管是任务、活动还是玩家权限,都能靠它轻松管理,用熟了会发现脚本灵活多了。

