ZKOK各种语句的用法
周二 4月 24, 2018 11:48 pm
多数的用法在zkok帮助中有,只有个别的没有。
1 重启后的连接
shutdown <数>
比如:
shutdown 300
就是五分钟后重连。注意数不能为0
"shutdown"(无参数)或"shutdown 0"
则表示中止GKK的运行,不再重连。
%public_bc
restart::@restart
shutdown:600:萬王之王的世界將在 1 分鐘後重新啟動。
利用restart还可以不由begin开始运行。
如
restart:second_begin:@restart
2 if应用
当hp大于400
if (%h > 400)
....(這裡是你要執行的指令)
....
endif
当mp大于1000就不执行下一条命令
if (%m < 1000)
...(這裡當你的mp少於1000時便執行的指令, 多過1000便不執行)
endif
3 替换的应用
收人要求站在特定的位置:
%public_bc
call:banish:%b%+(%$)告诉你 : %*开我%*
call:banish:%b【换成你的城市名】%+(%$)%*开我%*
call:banish:%b【换成你的城市名】%+(%$)%*开除%*
call%*向你申请户籍 !
%scene banish
::banish %1
return next
%scene accept
20:test_bc:accept ?????? 问号就是指定的位置不要说你不懂
return next
要解释一下:
call:banish:%b%+(%$)告诉你 : %*开我%*
其中:%b表示把匹配的内容用%0~%9替换
%+为第一个匹配,替换为%0
%$为第二个匹配,替换为%1
前一个%*为第三个匹配,替换为%2
后一个%*为第四个匹配,替换为%3
4 关于小写替换
用例子说明一下:
%scene begin
100:wait_bc:
%bc wait_bc
call:pot:%b%*(%*)告诉你:加潜能
call:pot:%b%*(%*)回答你:加潜能
%scene pot
50:pot_bc:Cast pote??? on %{%1%}
return retry
在%{和%}之间的任何%替换内容中的大写字母都会被替换成小写。
注意下面的区别
%{%VA%}: 替换成变量a的右值,如果值中有大写,则替换成小写
%{VA%}:VA不是%替换值,所以维持原状。
5 trap的应用
trap可以加在任一正文段中,设置之后一直有效。
例如:
%scene begin_trap_hp
trap hp 200, 300
return
遇到下面的情况取消对hp的trap
restart
或
trap hp
(后面没有参数)
因为帮助文档不详,这个问题好多人问,我今天刚刚研究出来,贴给大家看,呵呵。
另外,自动恢复法力(吸魂等)的原理是一样的,只要改成mplow即可。
%public_bc
call:drink:@hplow
%scene begin
trap hplow 350,400
%scene drink
0.1:drink_bc:drink potion
return
%bc drink_bc
stop::What?
6 run的运算
@&run
ZKok有更新,终于加上了字符串运算(早就要加,一直懒得写), 这样可以实现了。
注意表达式要用()括起来
50:run_bc:("@&run [" + (%sx - 3) + "," + (%sy - 3) + "]")
7 关于变量的使用
"a - z" 26个变量,都可以使用, 如果变量没有被%variable定义,直接赋值,否则用变量的值数量取模
如果变量没有被%variable定义
(a = 10) %oa: 10, %va: 10
($a = "abc") %oa:???, %va: abc
如果
%variable a
xxx
yyy
abc
(a = 10) %oa: 1, %va = yyy (10 %3 = 1)
($a = "abc") %oa:2, %va=abc
($a = "sadf") %oa:??? %va:???
8 ZRobot 3.0的行为控制段
行为控制段也可以增加条件判断
%bc stun_bc
retry::你上一个动作....
...
on (%m > 300)
retry::%i0你...
on (%m <= 300)
next::%i0你...
%scene begin
50:stun_bc:cast stun on %v0
50:storm_bc:cast mind_storm on %v0
9 ZRobot 3.0的循环
1. do/loop
%scene ...
...
do 表达式
... # 循环内容
loop 表达式
...
说明: do / loop后面跟的表达式结果不为0时, 继续循环.
表达式可以省略, 表示条件永为真.
2. foreach/loop
%variable x
...
%scene ...
...
foreach x
... # 循环内容
loop
...
使用foreach/loop, 就不用主动使用变量的加一操作了.
foreach 后面跟变量名
3. 在循环中可以用break或continue来控制
break和continue也可以放在行为控制段中.
%bc xxx_bc
break::你的身体状况不好....
10 进行坐标判断
do ((%sx != 67) || (%sy != 108))
1::
loop
如果要跑到[50,100], 可采用的几种方法:
1. 在[50,100]处设置地面信息
2. 用%sx, %sy, %sc等来判断
::@&run [50,100]
do
1::
loop ((%sx != 50) || (%sy != 100))
3. 使用trap
%scene ...
trap position (50,100)
50:run_bc:@&run [50,100]
%bc run_bc
next::@position
11 改额点的命令:
setup dex -n
setup con n
n=你的额点数
dex=敏捷,con=体质,int=智慧,str=力量
12 自启动功能
C:\StartKok.txt
那么只要运行
....\ZTerm.exe C:\StartKok.txt
即可, (可以做成个快捷方式)
自启动文件的格式
帐号名:帐号密码:角色名:角色密码:服务器
帐号名:帐号密码:角色名:角色密码:服务器
...
帐号名:帐号密码:角色名:角色密码:服务器
我们使用机器人或者外挂,目的无非是练级和打钱,zkok是专为zkk设计的,所有也是最好的,这要感谢jet2k。
第一课:zkok的安装运行,帮助文件已经很清楚,如果有不明白的请提出来,下面以牧系练功代码为例,一步一步的解释。
%variable s
# 这是变量段,每个变量段定一个变量,ZRobot只允许有26个变量,变量名可以是"a"-"z"("A"-"Z", "0"-"9"),这里是定义变量s。
(0,2)
(0,3)
(1,2)
(1,3)
(2,2)
(2,3)
(7,3)
(8,2)
(8,3)
(9,2)
(9,3)
(10,2)
(0,20)
(0,19)
(1,20)
(1,19)
(2,20)
(2,19)
(7,19)
(8,20)
(8,19)
(9,20)
(9,19)
(10,20)
# 以上是npc的相对坐标,zkk的相对坐标是以你为中心,所能看到的屏幕分成10x20的方格,左上为(0,0)右下为(10,20)注意必须是小括号,如果你是大臣打开网格就明白了。
%variable a
[72,152]
[52,150]
# 以上是定义变量a为用罗盘测出的坐标,必须用中括号,这里是两个坑的中心坐标(就是站在骷髅头上的坐标)
%scene begin
#每一个代码必须有的,也是从这里开始运行代码的。
::%ia
# 变量a内的值加1,例如,原来变量a是[72,152],执行这个命令后成为[52,150]
20::@&run %va
# @&run 是跑的指令,后面可以是坐标和相对坐标,%va是变量a的内容,20是执行@&run [52,150]命令20秒,就是向第2个坑跑20秒,跑不到?就改成30秒
goto kill
# goto 跳转到指定标号或指定正文段,这里是转到%scene kill
%scene kill
# 定义正文段kill,zkok可以存在多个正文段
1:kill_bc:@&kill (0,2)
1:kill_bc:@&kill (0,3)
1:kill_bc:@&kill (1,2)
1:kill_bc:@&kill (1,3)
1:kill_bc:@&kill (2,2)
1:kill_bc:@&kill (2,3)
1:kill_bc:@&kill (7,3)
1:kill_bc:@&kill (8,2)
1:kill_bc:@&kill (8,3)
1:kill_bc:@&kill (9,2)
1:kill_bc:@&kill (9,3)
1:kill_bc:@&kill (10,2)
1:kill_bc:@&kill (0,20)
1:kill_bc:@&kill (0,19)
1:kill_bc:@&kill (1,20)
1:kill_bc:@&kill (1,19)
1:kill_bc:@&kill (2,20)
1:kill_bc:@&kill (2,19)
1:kill_bc:@&kill (7,19)
1:kill_bc:@&kill (8,20)
1:kill_bc:@&kill (8,19)
1:kill_bc:@&kill (9,20)
1:kill_bc:@&kill (9,19)
1:kill_bc:@&kill (10,20)
# @&kill (0,2)是镖相对坐标(0,2)处的npc,kill_bc是根据行为控制段%bc kill_bc的内容,来决定镖完了作什么
100:holy_word_bc:cast holy_word on
# 放圣言,然后停100秒后执行下一个命令,如果holy_word_bc跟对应的行为控制段%bc holy_word_bc匹配的话,执行匹配的命令。
%bc kill_bc
# 定义行为控制段kill_bc
goto:begin:这里没有任何生物。
# 跟前面的镖npc的命令对应,如果镖npc,屏幕显示:这里没有任何生物。那么执行goto begin
%bc holy_word_bc
# 定义行为控制段holy_word_bc,跟放圣言对应
retry::你正忙著呢 !
# 当放圣言的指令发出后,屏幕显示:你正忙著呢 !重新执行放圣言的指令
retry::但是什麽事也没发生。
# 当放圣言的指令发出后,屏幕显示:但是什麽事也没发生。重新执行放圣言的指令
retry::你的法力不够 !!
retry::你上一个动作没有完成, 不能施法!
retry::你在胸口画出一个神圣的印记,结束了你的圣祷。
goto:run:你现在不在战斗中。
# 当放圣言的指令发出后,屏幕显示:你现在不在战斗中。跳转到 run,这里的作用是用圣言杀死npc后跳转到净化段。
%scene purify
#定义purify
foreach s
# foreach 和loop 配合使用,执行它们中间的命令,遇到loop ,foreach 后面跟着的变量加1
100:purify_bc:purify %ps
# 净化相对坐标处的尸体
loop
%bc purify_bc
next::你面无表情地将%*的尸体埋葬, 并安抚他的亡灵, 眼中流露出难得一见的慈悲。
# 净化指令发出后,屏幕显示:你面无表情地将%*的尸体埋葬, 并安抚他的亡灵, 眼中流露出难得一见的慈悲。执行下一个命令,就是净化下一个。(%*可以代替任意字符)
next::一个朦胧的灵魂从你眼前飘过, 向你微笑後, 散入无尽的天空。
next::你现在还不能处理这具尸体。
goto:begin:这里并没有需要净化的灵魂。
# 净化完了,重新开始。
1 重启后的连接
shutdown <数>
比如:
shutdown 300
就是五分钟后重连。注意数不能为0
"shutdown"(无参数)或"shutdown 0"
则表示中止GKK的运行,不再重连。
%public_bc
restart::@restart
shutdown:600:萬王之王的世界將在 1 分鐘後重新啟動。
利用restart还可以不由begin开始运行。
如
restart:second_begin:@restart
2 if应用
当hp大于400
if (%h > 400)
....(這裡是你要執行的指令)
....
endif
当mp大于1000就不执行下一条命令
if (%m < 1000)
...(這裡當你的mp少於1000時便執行的指令, 多過1000便不執行)
endif
3 替换的应用
收人要求站在特定的位置:
%public_bc
call:banish:%b%+(%$)告诉你 : %*开我%*
call:banish:%b【换成你的城市名】%+(%$)%*开我%*
call:banish:%b【换成你的城市名】%+(%$)%*开除%*
call%*向你申请户籍 !
%scene banish
::banish %1
return next
%scene accept
20:test_bc:accept ?????? 问号就是指定的位置不要说你不懂
return next
要解释一下:
call:banish:%b%+(%$)告诉你 : %*开我%*
其中:%b表示把匹配的内容用%0~%9替换
%+为第一个匹配,替换为%0
%$为第二个匹配,替换为%1
前一个%*为第三个匹配,替换为%2
后一个%*为第四个匹配,替换为%3
4 关于小写替换
用例子说明一下:
%scene begin
100:wait_bc:
%bc wait_bc
call:pot:%b%*(%*)告诉你:加潜能
call:pot:%b%*(%*)回答你:加潜能
%scene pot
50:pot_bc:Cast pote??? on %{%1%}
return retry
在%{和%}之间的任何%替换内容中的大写字母都会被替换成小写。
注意下面的区别
%{%VA%}: 替换成变量a的右值,如果值中有大写,则替换成小写
%{VA%}:VA不是%替换值,所以维持原状。
5 trap的应用
trap可以加在任一正文段中,设置之后一直有效。
例如:
%scene begin_trap_hp
trap hp 200, 300
return
遇到下面的情况取消对hp的trap
restart
或
trap hp
(后面没有参数)
因为帮助文档不详,这个问题好多人问,我今天刚刚研究出来,贴给大家看,呵呵。
另外,自动恢复法力(吸魂等)的原理是一样的,只要改成mplow即可。
%public_bc
call:drink:@hplow
%scene begin
trap hplow 350,400
%scene drink
0.1:drink_bc:drink potion
return
%bc drink_bc
stop::What?
6 run的运算
@&run
ZKok有更新,终于加上了字符串运算(早就要加,一直懒得写), 这样可以实现了。
注意表达式要用()括起来
50:run_bc:("@&run [" + (%sx - 3) + "," + (%sy - 3) + "]")
7 关于变量的使用
"a - z" 26个变量,都可以使用, 如果变量没有被%variable定义,直接赋值,否则用变量的值数量取模
如果变量没有被%variable定义
(a = 10) %oa: 10, %va: 10
($a = "abc") %oa:???, %va: abc
如果
%variable a
xxx
yyy
abc
(a = 10) %oa: 1, %va = yyy (10 %3 = 1)
($a = "abc") %oa:2, %va=abc
($a = "sadf") %oa:??? %va:???
8 ZRobot 3.0的行为控制段
行为控制段也可以增加条件判断
%bc stun_bc
retry::你上一个动作....
...
on (%m > 300)
retry::%i0你...
on (%m <= 300)
next::%i0你...
%scene begin
50:stun_bc:cast stun on %v0
50:storm_bc:cast mind_storm on %v0
9 ZRobot 3.0的循环
1. do/loop
%scene ...
...
do 表达式
... # 循环内容
loop 表达式
...
说明: do / loop后面跟的表达式结果不为0时, 继续循环.
表达式可以省略, 表示条件永为真.
2. foreach/loop
%variable x
...
%scene ...
...
foreach x
... # 循环内容
loop
...
使用foreach/loop, 就不用主动使用变量的加一操作了.
foreach 后面跟变量名
3. 在循环中可以用break或continue来控制
break和continue也可以放在行为控制段中.
%bc xxx_bc
break::你的身体状况不好....
10 进行坐标判断
do ((%sx != 67) || (%sy != 108))
1::
loop
如果要跑到[50,100], 可采用的几种方法:
1. 在[50,100]处设置地面信息
2. 用%sx, %sy, %sc等来判断
::@&run [50,100]
do
1::
loop ((%sx != 50) || (%sy != 100))
3. 使用trap
%scene ...
trap position (50,100)
50:run_bc:@&run [50,100]
%bc run_bc
next::@position
11 改额点的命令:
setup dex -n
setup con n
n=你的额点数
dex=敏捷,con=体质,int=智慧,str=力量
12 自启动功能
C:\StartKok.txt
那么只要运行
....\ZTerm.exe C:\StartKok.txt
即可, (可以做成个快捷方式)
自启动文件的格式
帐号名:帐号密码:角色名:角色密码:服务器
帐号名:帐号密码:角色名:角色密码:服务器
...
帐号名:帐号密码:角色名:角色密码:服务器
我们使用机器人或者外挂,目的无非是练级和打钱,zkok是专为zkk设计的,所有也是最好的,这要感谢jet2k。
第一课:zkok的安装运行,帮助文件已经很清楚,如果有不明白的请提出来,下面以牧系练功代码为例,一步一步的解释。
%variable s
# 这是变量段,每个变量段定一个变量,ZRobot只允许有26个变量,变量名可以是"a"-"z"("A"-"Z", "0"-"9"),这里是定义变量s。
(0,2)
(0,3)
(1,2)
(1,3)
(2,2)
(2,3)
(7,3)
(8,2)
(8,3)
(9,2)
(9,3)
(10,2)
(0,20)
(0,19)
(1,20)
(1,19)
(2,20)
(2,19)
(7,19)
(8,20)
(8,19)
(9,20)
(9,19)
(10,20)
# 以上是npc的相对坐标,zkk的相对坐标是以你为中心,所能看到的屏幕分成10x20的方格,左上为(0,0)右下为(10,20)注意必须是小括号,如果你是大臣打开网格就明白了。
%variable a
[72,152]
[52,150]
# 以上是定义变量a为用罗盘测出的坐标,必须用中括号,这里是两个坑的中心坐标(就是站在骷髅头上的坐标)
%scene begin
#每一个代码必须有的,也是从这里开始运行代码的。
::%ia
# 变量a内的值加1,例如,原来变量a是[72,152],执行这个命令后成为[52,150]
20::@&run %va
# @&run 是跑的指令,后面可以是坐标和相对坐标,%va是变量a的内容,20是执行@&run [52,150]命令20秒,就是向第2个坑跑20秒,跑不到?就改成30秒
goto kill
# goto 跳转到指定标号或指定正文段,这里是转到%scene kill
%scene kill
# 定义正文段kill,zkok可以存在多个正文段
1:kill_bc:@&kill (0,2)
1:kill_bc:@&kill (0,3)
1:kill_bc:@&kill (1,2)
1:kill_bc:@&kill (1,3)
1:kill_bc:@&kill (2,2)
1:kill_bc:@&kill (2,3)
1:kill_bc:@&kill (7,3)
1:kill_bc:@&kill (8,2)
1:kill_bc:@&kill (8,3)
1:kill_bc:@&kill (9,2)
1:kill_bc:@&kill (9,3)
1:kill_bc:@&kill (10,2)
1:kill_bc:@&kill (0,20)
1:kill_bc:@&kill (0,19)
1:kill_bc:@&kill (1,20)
1:kill_bc:@&kill (1,19)
1:kill_bc:@&kill (2,20)
1:kill_bc:@&kill (2,19)
1:kill_bc:@&kill (7,19)
1:kill_bc:@&kill (8,20)
1:kill_bc:@&kill (8,19)
1:kill_bc:@&kill (9,20)
1:kill_bc:@&kill (9,19)
1:kill_bc:@&kill (10,20)
# @&kill (0,2)是镖相对坐标(0,2)处的npc,kill_bc是根据行为控制段%bc kill_bc的内容,来决定镖完了作什么
100:holy_word_bc:cast holy_word on
# 放圣言,然后停100秒后执行下一个命令,如果holy_word_bc跟对应的行为控制段%bc holy_word_bc匹配的话,执行匹配的命令。
%bc kill_bc
# 定义行为控制段kill_bc
goto:begin:这里没有任何生物。
# 跟前面的镖npc的命令对应,如果镖npc,屏幕显示:这里没有任何生物。那么执行goto begin
%bc holy_word_bc
# 定义行为控制段holy_word_bc,跟放圣言对应
retry::你正忙著呢 !
# 当放圣言的指令发出后,屏幕显示:你正忙著呢 !重新执行放圣言的指令
retry::但是什麽事也没发生。
# 当放圣言的指令发出后,屏幕显示:但是什麽事也没发生。重新执行放圣言的指令
retry::你的法力不够 !!
retry::你上一个动作没有完成, 不能施法!
retry::你在胸口画出一个神圣的印记,结束了你的圣祷。
goto:run:你现在不在战斗中。
# 当放圣言的指令发出后,屏幕显示:你现在不在战斗中。跳转到 run,这里的作用是用圣言杀死npc后跳转到净化段。
%scene purify
#定义purify
foreach s
# foreach 和loop 配合使用,执行它们中间的命令,遇到loop ,foreach 后面跟着的变量加1
100:purify_bc:purify %ps
# 净化相对坐标处的尸体
loop
%bc purify_bc
next::你面无表情地将%*的尸体埋葬, 并安抚他的亡灵, 眼中流露出难得一见的慈悲。
# 净化指令发出后,屏幕显示:你面无表情地将%*的尸体埋葬, 并安抚他的亡灵, 眼中流露出难得一见的慈悲。执行下一个命令,就是净化下一个。(%*可以代替任意字符)
next::一个朦胧的灵魂从你眼前飘过, 向你微笑後, 散入无尽的天空。
next::你现在还不能处理这具尸体。
goto:begin:这里并没有需要净化的灵魂。
# 净化完了,重新开始。
這個論壇的權限:
您 無法 在這個版面回復文章