|
泰服用zkok打钱一直有一个障碍,就是往柜台卖东西的时候,会出现数学题的验证框,回答错误有可能被GM干掉。
但是zkok是无限强大的,人能做到的事情,机器人也都能做到,前提是你的代码要足够智能化。
如何让代码智能化?
我们人做数学题:比如2+5=? 你首先看到了2,然后记在心里,然后看到5,再记在心里,然后扳扳手指,数7个手指头,OK,这道数学题做出来了。
其实zkok也会做数学题,只是很多人不知道如何用代码实现,仔细看下面吧:
1、替换的应用
zkok是支持从返回信息上提取信息并记录的,就像我们刚刚拥有的自动收人代码,你在国家里喊666,机器人会自动从你的喊话中提取出来你的ID,然后summon id,你就被召唤过来了,这个很容易理解,并且很多人懂 。
下面给一个自动开除国籍的代码,作为例子分析:
%public_bc
call:banish:%b%+(%$)告诉你 : 开我
%scene banish
::banish %1
return next
来讲解下上面的代码,当机器人通过public这个类,接受到“某某某告诉你:开我”的时候,就开始分析这条语句,我们假设完整的语句是这样的:
“索尔(saul)告诉你:开我”
对应上面的语句,【索尔】被%+所替换并提取,【saul】被%$替换并提取,而最前面的%b,则是提取指令的对应函数。
再来分析“::banish %1 ”,其中的%1,就是提取了被%$所替换的内容,具体的执行情况就是“banish saul”,由此实现了自动开除国籍。
%+为第一个匹配,替换为%0
%$为第二个匹配,替换为%1
前一个%*为第三个匹配,替换为%2
后一个%*为第四个匹配,替换为%3
现在大家大概看明白通配符的提取和替换应用方法了吧。
————————————————————华丽的分割线——————————————————————————
2、实现加法运算
如何实现自动打钱而不被验证程序识破?
就是提取弹出的对话框中,那个加法算式的每个量,然后让zkok去做加法,就是这么简单。
我们假设(看清是假设)加法验证框的内容是下面这样的:
【界面】信息对话框:
砡菔迗辖梁樨勤腴55+61=?蹙頝桎□堙煜□俖? 熐系酵郱珗袅
我们可以用public这个类,来分析截取这个对话框中的内容。
首先提取加好前面的55,用%+提取,然后用%$来提取61,这样的话,通配符%0就等于提取出来的55,%1就等于提取出来的61。
然后我们来做加法:
zkok是支持自定义变量的,最高定义支持26个变量,就是英文字母的“a-z”,我们做加法只需要其中3个变量就够了。
定义a=0
定义b=0
定义c=a+b
当加法对话框出现的时候,提取其中的值,然后用如下语句
a=%0
b=%1
c=a+b
把c对应的值重新提取至%+
然后
::@%%1 %+
这样就完美实现了加法运算,同样也是可以做减法的,至于乘除法能不能做,我还不知道zkok会不会,料想泰服GM也不会无聊的让人口算乘法的程度。
大家都会了吧,不会的可以随时跟帖,有问必答。 |
评分
-
1
查看全部评分
-
|