分享一个关于爆率控制的心得(翎风)
本帖最后由 白庙吴彦祖 于 2025-3-24 03:51 编辑接触传奇差不多个把月吧,就单纯的几个朋友玩,从开始某玩然后到各种BBK,吃过亏上过当(也可能是自己菜),感觉还是奇速有爱!
话不多说,言归正传,如有不对,还请指教!
爆率控制:
爆率是由KILLMONBURSTRATE来赋予的,一般版本脚本里面都有爆率控制的文件。
比如下面所示:
脚本开头设定初始值为0(这个初始值可以自由变更),假爆(就是游戏里面显示的爆率),真爆(实际KILLMONBURSTRATE赋予的值)。
#IF
#ACT
MOV N$假爆 0
MOV N$真爆 0
检测条件来增加爆率值,可以是区名、装备、称号、货币、变量等等。
#IF
CHECKFENGHAO 奇速 ;检测拥有称号奇速
#ACT
INC N$假爆 50 ;增加假爆50
INC N$真爆 50 ;增加真爆50
#IF
CheckContainsText <$SERVERNAME> 01区 ;检测区名包含01区
CheckContainsText <$SERVERNAME> 一区 ;检测区名包含一区
#ACT
MOV N$假爆 100 ;设置假爆100
MOV N$真爆 100 ;设置真爆100
#IF
CHECKITEM ** ;检测是否拥有物品**
#ACT
INC N$假爆 50 ;增加假爆50
INC N$真爆 50 ;增加真爆50
#IF
CHECKITEMW ** 1 ;检测是否装备物品**
#ACT
INC N$假爆 50 ;增加假爆50
INC N$真爆 50 ;增加真爆50
其他检测条件就不列举出来了,翎风引擎说明书里面也有。
下面说关于个人变量,比如杀怪来增加爆率,杀怪数量,增加爆率数值。
首先我们要用到两个变量来控制,自己查询未使用的变量,一个变量是统计杀怪数量,一个是来用于计算杀怪增加爆率。
下面假设用U110和U111来控制:
在QF文件里面找到[@OnKillMob](如果没有可以自己添加),在下面添加以下内容:
[@OnKillMob] ;击杀怪物触发
#IF
LARGE <$ATTACKMONSTER_MAXHP> 1000 ;检测击杀目标血量大于1000
SMALL <$ATTACKMONSTER_MAXHP> 2000 ;检测击杀目标血量小于2000
NOT CHECKCURRTARGETRACE = 0 ;检测击杀目标不是玩家(人物)
;看情况自行添加或者删除检测条件
#ACT
INC U110 1 ;个人变量U110增加1
;杀怪货币也是OnKillMob控制的哦,可以自己延伸。
#IF
LARGE U110 1999 ;检测U110大于1999,也就是击杀2000个怪
#ACT
INC U111 1 ;个人变量U111增加1
MOV U110 0 ;设置个人变量U110为0,也就是清空杀怪数
#CALL [\属性\爆率.txt] @爆率 ;重载一次爆率文件,路径、文件名、字段名称参考自己的版本
BREAK ;OnKillMob到此结尾。
好了,咱们回到爆率控制文件,在后面添加以下内容:
#IF
LARGE U111 99 ;检测个人变量U111大于99
#ACT
MOV U111 100 ;设置个人变量U111为100,相当于5000爆率封顶
;其实可以在QF击杀触发检测条件里面添加一条SMALL U111 100 (相当于只有U111小于100才会触发后面的条件),就样就不用在爆率文件里面添加上面这几条了,只不过我现在是这样设置的,懒得改了,直接复制过来了。
#IF
#ACT
MOV N$爆率系数 50 ;设置一个爆率系数,后面要用。
FORMULATION <$STR(u111)>*<$str(n$爆率系数)> N$打怪爆率 ;计算打怪增加爆率数值,前文提到U110要大于1999才会在U111增加1,这一条的意思就是每打2000个怪增加50的爆率。
#IF
#ACT
INC N$假爆 <$STR(N$打怪爆率)> ;增加虚假爆率,数值就是上面计算出来的数值。
INC N$真爆 <$STR(N$打怪爆率)> ;增加真实爆率,数值就是上面计算出来的数值。
#IF
#ACT
KILLMONBURSTRATE <$STR(N$真爆)> 0 0 1 ;设置真实爆率为本脚本所有真爆数值的总和。
SENDMSG 7 系统提示:当前杀怪爆率为<$KILLMONBURSTRATE>倍! ;聊天信息里面提示当前杀怪爆率为多少倍,比如真爆数值最后的和为5566,这里就会提示55.66倍。
假爆的数值一直没有提到,这个具体的看版本设置是否有这个需求。
下面再延伸一个会员相关的设定,比如卖背包神器,或者卖会员,然后来实现爆率翻倍,同样也是在爆率控制文件里面,最后增加下面内容:
#IF
CHECKITEM 奇速会员 ;检测是否拥有物品奇速会员,这个检测条件根据自己服的设定来,也可以是称号。
#ACT
MOV N$会员系数 2 ;设置翻倍系数。
FORMULATION <$STR(N$真爆)>*<$str(N$会员系数)> N$最终爆率 ;计算最终爆率,就是所有真爆的数值乘以会员系数。
KILLMONBURSTRATE <$STR(N$最终爆率)> 0 0 1 ;设置真实爆率为最终爆率数值。
SENDMSG 7 系统提示:会员爆率已激活,当前杀怪爆率为<$KILLMONBURSTRATE>倍!;聊天信息里面提示当前杀怪爆率为多少倍,设置真实爆率为最终爆率数值。
更多爆率控制,也是同样的道理,献丑了!
技术贴 顶啊 学习了!顶 还得的是彦祖啊
:):):):) 不错,谢谢分享 新人学习一下。。。高端帖子。。
页:
[1]