msquare机器人系列:[吐纳]&[打坐]&[残局]
刚来北侠三天,感觉论坛上不少机器人很乱也很不完善,所以自己做了不少机器人,偶会在修正之后一一拿上来。这个吐纳机器人是新手发呆吐纳用的,主要特点是数值计算做得比较精确,不浪费一点精力/内力,效率很高,高手拿去改改用应该也不错。
打坐机器人也放上来了,同样是精确使用气血值的。
残局机器人,同样以效率最大化为特点,简单修改后同样可用作少林table
以下是测试出来的一些数值关系,如有错误请各位指正:
内力->精神 1:2.2
精神->精力 1:2
吐纳可用精神 < 当前精神-10
吐纳可用精神 < 向下取整(当前精神*90%)
PS. ZMUD版本7.21,将代码存为txt后导入即可。
第一部分公用tigger代码:
主要是状态值检测,因为做得比论坛路径合集里那个细,所以变量名有差别,不过同时使用应该不会冲突。#CLASS {Status} {enable}
#VAR exp {0}
#VAR jingli {0}
#VAR jingshen {0}
#VAR neili {0}
#VAR pot {0}
#VAR qixue {0}
#VAR jingli_max {0}
#VAR jingshen_max {0}
#VAR neili_max {0}
#VAR qixue_max {0}
#VAR qixue_health {0}
#VAR jingshen_health {0}
#TRIGGER {【%s潜能%s】%s(%d)} {#var pot %1}
#TRIGGER {【%s经验%s】%s(%d)} {#var exp %1}
#TRIGGER {【%s精神%s】%s(%d)%s/%s(%d)%s~[(*)~%~]%s【%s精力%s】%s(%d)%s/%s(%d)} {
#var jingshen %1
#var jingshen_max %2
#var jingshen_health %3
#var jingli %4
#var jingli_max %5
}
#TRIGGER {【%s气血%s】%s(%d)%s/%s(%d)%s~[(*)~%~]%s【%s内力%s】%s(%d)%s/%s(%d)} {
#var qixue %1
#var qixue_max %2
#var qixue_health %3
#var neili %4
#var neili_max %5
}
#CLASS 0第二部分,吐纳代码:
按钮:
按钮排列可能会有冲突,请自行修正"#BUTTON 1"中"1"为想要的排列位置。所有模块中只有吐纳制作了按钮,其他的请参照自行制作
#CLASS {buttons} {enable}
#BUTTON 1 {吐纳} {#CLASS tuna 1
#var save_limit 29
#ALIAS recon_cmd tuna_recon_cmd
set brief 1} {吐纳} {#CLASS tuna 0;set brief 2} {} {1} {} {} {} {} {} {} {} {} {} {} {} "" {} {} {}
#CLASS 0变量与触发器:#CLASS {tuna}
#ALIAS tuna_accomplish {}
#ALIAS tuna_emote {emote 深吸一口气,感到精力充沛}
#VAR tuna_max {0}
#VAR tuna_need {0}
#VAR tuna_aim {900}
#VAR tuna_var {0}
#VAR tuna_breath_need {0}
#TRIGGER {发呆室} {fadai} "" {prompt}
#TRIGGER {你的动作还没有完成,不能移动。} {
#wait 400
enter
}
#TRIGGER {你深吸一口气,感到精力充沛} {
#IF (@jingshen < 10) {
out
#ABORT
}
#MATH tuna_need (@jingli_max*2-@jingli+1)/2
#IF (@jingshen>100) {#MATH tuna_max @jingshen*0.9-1} {#MATH tuna_max @jingshen-10}
#IF (@tuna_need>@tuna_max) {
#MATH tuna_tmp @tuna_need-@tuna_max
#IF (tuna_tmp <10) {#MATH tuna_var @tuna_max-10} {#var tuna_var @tuna_max}
} {#var tuna_var @tuna_need}
#IF (@tuna_var<10) {#var tuna_var 10}
#IF (@jingli_max>=@tuna_aim) {tuna_accomplish} {
#IF (@tuna_max>=@tuna_var) {tuna @tuna_var} {
#MATH tuna_breath_need (@tuna_need-@jingshen)/2.2
#IF (@neili>@tuna_breath_need) {
exert regenerate
hp
tuna_emote
} {out}
}
}
}
#TRIGGER {你吐纳完毕,睁开双眼,站了起来。} {
hp
tuna_emote
}
#TRIGGER {客店} {
w
s
d
out
}
#TRIGGER {你发呆了一会儿,发现自己居然精神百倍!} {
#wait 600
enter
}
#TRIGGER {销金窟} {
hp
tuna_emote
}
#TRIGGER {你现在精不足,无法修行精力!} {
hp
tuna_emote
}
#CLASS 0第三部分:打坐#CLASS {dazuo}
#ALIAS dazuo_accomplish {}
#ALIAS dazuo_emote {emote 深吸一口气,感到内力充沛}
#VAR dazuo_need {0}
#VAR dazuo_aim {800}
#VAR dazuo_tmp {0}
#VAR dazuo_ava {0}
#TRIGGER {发呆室} {fadai}
#TRIGGER {你的动作还没有完成,不能移动。} {
#wait 400
enter
} "" {prompt}
#TRIGGER {你深吸一口气,感到内力充沛} {
#IF (@neili_max>=@dazuo_aim) {
dazuo_accomplish
#var dazuo_timer_fied 0
#ABORT
}
#IF (@qixue<20) {
out
#ABORT
}
#MATH dazuo_need (@neili_max*2-@neili+1)/2
#MATH dazuo_ava %min( @qixue-10, @qixue*0.9)
#MATH dazuo_tmp @dazuo_need-10
#IF (@dazuo_ava>=@dazuo_need) {#IF (@dazuo_need<10) {dazuo 10} {dazuo @dazuo_need}} {
#IF (@dazuo_need-@dazuo_ava<10) {dazuo @dazuo_tmp} {
#MATH dazuo_tmp @qixue_max*0.4
#IF (@dazuo_ava>=@dazuo_tmp) {dazuo @dazuo_ava} {out}
}
}
}
#TRIGGER {你运功完毕,深深吸了口气,站了起来。} {
hp
dazuo_emote
}
#TRIGGER {客店} {
w
s
d
say 开始吐纳
}
#TRIGGER {你发呆了一会儿,发现自己居然精神百倍!} {
#wait 1000
enter
}
#TRIGGER {销金窟} {
hp
dazuo_emote
}
#TRIGGER {你说道:「开始打坐」} {
hp
dazuo_emote
#wait @dazuo_period
#var dazuo_timer_fired 1
}
#TRIGGER {你现在的气太少了,无法产生内息运行全身经脉。} {out}
#CLASS 0第四部分:残局
请手动设定literate_lvl为你的当前literate等级#CLASS {robots|canju}
#ALIAS canju_accomplish {#wait 10000;quit}
#VAR canju_tmp {0}
#VAR canju_jing_nei {0}
#VAR canju_qixue_ava {0}
#VAR literate_lvl {0}
#VAR literate_aim {151} {151}
#TRIGGER {你精力不够,无法领悟残局。} {hp;say 残局}
#TRIGGER {你对着残局研究了一会,似乎有些心得。} {#wait 200;watch canju}
#TRIGGER {你运功完毕,深深吸了口气,站了起来。} {#wait 200;watch canju}
#TRIGGER {你说道:「残局」} {#MATH canju_jing_nei @neili*2+@jingshen;#MATH canju_tmp @jingshen_max*2;#IF (@canju_jing_nei>=@canju_tmp) {eg;watch canju} {#IF (@canju_jing_nei>=@jingshen_max) {#MATH canju_qixue_ava %min( @qixue*0.9-1, @qixue-10, (@neili_max-50)/2));#IF (@qixue>=20) {eg;dazuo @canju_qixue_ava} {eg;watch canju} {say 发呆;#wait 30000;watch canju}} {say 发呆;#wait 30000;hp;watch canju}}} "" {prompt}
#TRIGGER {你的「读书写字」进步了!} {#ad literate_lvl 1}
#CLASS 0
[ 本帖最后由 msquare 于 2010-5-31 04:49 AM 编辑 ] 补充一句tuna_aim是希望达到的精力值
tuna_accomplish是达到后自动执行的命令 zeze
ttttk_21 能不能写个唱戏机器人哦?论坛上的唱戏机器人都有问题。T.T
回复 4# 的帖子
唱戏的已经有了,但是还在修改 哪位大大知道ZMUD怎么做取整麻烦说一声,感激不尽 8cuo 无欢也太懒了,打个中文鼓励新手也不肯yct22 不能发呆了,该怎么dazuo和tuna,效率最高??? 直接除就是取整吧
页:
[1]
2