从对劫镖土匪奏箫失败搜索所得...
桃花id, 昨天想在护镖的时候对土匪perform玉箫剑法最后一式"碧海潮生" (perform sword.zouxiao), 结果提示"对他吹箫?还不如对牛弹琴呢。" 我在论坛上搜了一下这个perform的相关信息, 没有所得. 感觉好像没什么人用这招. 我又在互联网上搜了搜发现一篇很有意思的文章, 转过来与大家共享.我从google/baidu搜索得到北侠的信息后直接点击经常被转连到一些垃圾网站, 我不知道这是我的个例还是大家都这样(我只有在点击北侠搜索结果时才这样). 我在互联网上搜了一下被连接到的那个网站好像经常被用来劫持网站域名解析, 如果大家都这样的话, 我想巫师和网站维护人应该引起重视, 否则容易影响北侠的推广.
下面是转帖的文章: zouxiao源码解读
这两天看到很多人讨论zouxiao,就献个丑,翻出xyj2000的源码给大家翻译一下。听说总站的源码已经升级了,但我想多少还能对各位有点借鉴作
用。
首先来看使用条件
if (!weapon || weapon->query("music/type") != "xiao")
return notify_fail("你手里的家伙吹不出调子。\n");
if (me->query_skill_mapped("force")!="zhenyuan-force")
return notify_fail("只有用镇元神功才能运力吹箫。\n");
if (me->query_skill("xiaofeng-sword",1)<50)
return notify_fail("你的晓风残月剑还得再练练。\n");
if (me->query_skill("zouxiao",1)<60)
return notify_fail("你奏箫的功夫还不够,再好好练练吧。\n");
if (target->query_skill("literate",1)<50)
return notify_fail("对他吹箫?还不如对牛弹琴呢。\n");
if((int)me->query("force") < 200 )
return notify_fail("你的内力还不到火候。\n");
if((int)me->query("kee") < 200 )
return notify_fail("你的体力已经不够了!\n");
if((int)me->query("sen") < 200 )
return notify_fail("你无法集中精力!\n");
这段代码的意思是,首先,你要拿萧来perform这个(拿个棒子来吹箫是不是太搞笑了),然后,你的force必须是zhenyuan-force,这里你的
zhenyuan-force必须是enable force上的,跟perform hammer,perform staff不一样(这两个要
求你有zhenyuan-force 80级就行了,不用enable上)。然后晓风残月剑要至少50级,zouxiao要至少60级。下面就是比较关键的了,对方(对,
就是你攻击的对象)的读书识字必须大等于50级,这就是为什么这个zouxiao不能灭妖,li或
者yuan的妖怪统统是文盲,没有读书识字技能,当然不知道现在总站有没有改这个,我估计不会改。所以其实这个perform主要用来搞玩家的。最
后几个就是你用这个技能的时候内力,精神和气血要大于200。
然后是判断命中与否的代码。
使用者的数据
ap =(int)me->query_skill("xiaofeng-sword", 1)+(int)me->query_skill("zouxiao", 1);
ap = ap * ap * ap /10;
ap = ap + (int)me->query("combat_exp");
这段话意思是 攻击者的数据 ap=(xiaofeng-sword级别+zouxiao级别)*(xiaofeng-sword级别+zouxiao级别)*(xiaofeng- sword级别+zouxiao级别
)/10+武学。 (其实就是3次方除10,没法打3次方,就写的长了点)
受害者的数据
dp = (int)target->query_skill("parry")
+(int)target->query_skill("literate")
+(int)target->query_skill("zouxiao")
+(int)target->query_skill("fuqin")
+(int)target->query_skill("spells");
dp = dp * dp * dp /10;
dp = dp + (int)target->query("combat_exp");
这里多谢kimmina兄提醒,(int)target->query_skill("parry")和(int)target->query_skill("parry",1)是不一样的,前者是skills有效级别
,后者是skills级别.比如所有级别都是200级,并且enable parry qianjun-bang了,那么第一个命令得到300,第二个得到200.在龙宫云房里面
lianwu就是这样,是(int)target->query_skill("dodge"),所以要enable dodge none再lianwu,否则就高了。那么zouxiao和literate没有东西
可以enable,所以只是1/2. 再次感谢kimmina兄提醒。
这段话意思是 受害者的数据 dp=(parry有效级别+lieterate有效级别+zouxiao有效级别+fuqin有效级别+spells有效级别)的3次方/10+武学。 这
里fuqin应该是抚琴,估计是刚开始作这个游戏的时候想加进去,后来没加的,放在这里可以忽略了。
然后开始判断
if( random(100*ap/dp) < 20 )
{
msg += HIW "$n冲着你鄙意的冷笑道:就这点本事,也来贻笑大方?"
+"$N顿时羞愧难当。\n"NOR;
message_vision(msg, me, target);
me->start_busy(3+random(5));
}
当从1到(100*ap/dp)这个范围中产生一个随机数小于20的时候,最悲惨的事情发生了,对方啥事没有,自己要busy3秒加上1到5中间的一个随机
数这么长时间。
然后
else if( random(100*ap/dp) < 40 )
{
msg += HIW "可$n冲耳不闻,不为所动。\n"NOR;
message_vision(msg, me, target);
me->start_busy(random(3));
}
当从1到(100*ap/dp)这个范围中产生一个随机数大于20而小于40的时候,次悲惨的事情发生了,对方啥事没有,自己busy 1到3秒中间的一个随
机数。
else
{
target->receive_damage("sen",damage,me);
msg += HIW "$n听了箫声,心中莫名其妙的感到一阵酸楚,悲从中来,泪水正涔涔落下。\n"NOR;
message_vision(msg, me, target);
COMBAT_D->report_status(target);
target->start_busy(5+random(5));
me->start_busy(random(3));
}
当从1到(100*ap/dp)这个范围中产生一个随机数大于40的时候,不悲惨的事情发生了,对方受到精神伤害(伤害多少一会再说)并且busy5秒加
上1到5秒之间一个随机数这么长时间。然后自己busy 1到3秒中间的一个随机数
伤害对方的精神多少跟技能有关,是(xiaofeng-sword级别+zouxiao级别)*(xiaofeng-sword级别+zouxiao级别)/300。
然后是我的一点分析或感想。
首先是关于伤害的感想,(xiaofeng-sword级别+zouxiao级别)*(xiaofeng-sword级别+zouxiao级别) /300,这个是打对方多少精神,大家可以注
意一下,这个是个二次函数。虽然在刚开始的时候很低,但是随着你级别的提高,伤害提高的
越来越快,,而且没上限。(说句题外话,摄气决加攻击的exert就有上限)。但是人物的精神除了年龄的增长加的精神以外,其他的跟法力有关
,我记得是法力/4,但是这不是重点,重点是精神随级别的增长是一次函
数,在级别达到一定高度以后,伤害随级别增长的速度远远大于精神增长的速度,也就是说,在很高级别的情况下,用这个,基本可以一击必杀
。举个例子,但你xiaofeng-sword 和zouxiao达到1000级,那么伤害是13333,同级别的精神
大概是6,7千左右,中了就死。
然后是关于命中
除去fuqin技能不提,对方有4个技能加在一起,parry,literate,zouxiao,spells。
首先不考虑wzg内战,对方没zouxiao,那么对方也要考虑3个技能级别parry,literate,spells,在低级的时候对攻击方是很不利的,这里假设两个
对战的武学正好是级别要求的下限,就是级别的3次方/10,所有级别大家都一样x级(我没有
用具体数字是因为这样的成功率计算跟级别具体数字没关系,这样 ap=(x+x)*(x+x)*(x+x)/10+x*x*x/10(这个是武学,级别要求下限=9*(x^3)/10
,dp=(1.5x+0.5x+1.5x)*(1.5x+0.5x+1.5x)*(1.5x+0.5x+1.5x)/10+x*x*x/10=43.875*(x^3)/10 (这里看不懂的自己把x随便换
成个数,100,200就明白了),100*ap/dp=20.5, 在看上面的判断,就是说,不可能成功。
那么在高级时候呢,因为不会有疯子把literate升到400以上吧,这里假设个悟性25的对手,他为了节约潜能和带天师法冠,所以只学了140的
literate,但是你们其他级别已经达到1000级,武学还是级别要求下限,这样ap=9E8
(900000000),dp=2993444000, 100*ap/dp=30,不能成功。
至于wzg内战,大家可以加进去自己算算,同级别的不管是多少级,成功率都趋于零。
关于这个技能的busy。
这个技能的busy不同fengbo和pozhan,那两个如果对手正在busy,就不能使用,而如果对手也有busy技能,在那边不停的用,一旦busy时间过了,
对方先用出来还是你先用出来就得看网络了。但是zouxiao不一样,不管对方有没有在busy
,都可以busy对方,就是说,如果能保证成功率,可以一直busy下去,而且每次都伤对方精神,这样不用别的什么技能也能busy对方到死。
综上,我的意见就是,zouxiao,就是个低级没用,高级恐怖的东西。所以新手开始悟性比较低的时候,没必要在这上面浪费潜能,等高级了再学
就可以了。
这个绝对原创啊,斑竹看在我写了这么多冬冬的分上,加点威望吧。
还有对什么perform感兴趣的,可以点播啊,我为了那个ningxie-force的帖子声望当真是求望若渴啊。
咦,为什么改正错误以后,这个技能的成功率低成这样了,大家再帮看看吧,哪里不对我马上改过来。
※ © 版权所有!转载请注明出处:水泊梁山之天下泥潭 http://www.spls.org | http://www.skymud.com 发代码是容易被wizb4的 另外,土匪只对女ID吹箫有兴趣 大家可以聊聊这个技能在北侠的用处, 我个人理解貌似PK或者比武最有效, 尽管几乎所有人都有很高级别的读书识字, 但是读书识字不是特殊要算半价, 大多数不会有music吧, 除非向朱熹学习, 否则高级别对杀一旦打上, 攻击力对于精神的打击还是很大的.
不过, 我top jingshen了一下, 发现貌似又不会有什么打击...
ΩΩΩΩΩΩΩ=北大侠客行十大精神爬行榜=ΩΩΩΩΩΩΩ
$ 排行第一:小希(littlexi) 106009 $
$ 排行第二:静杨(wzswzs) 82789 $
$ 排行第三:渡皮(nida) 63855 $
$ 排行第四:慕容清风(zqf) 59951 $
$ 排行第五:家有童话(hopecity)49857 $
$ 排行第六:渡懒(lazyman) 47060 $
$ 排行第七:渡毅(bjddy) 46965 $
$ 排行第八:渡猪(piggest) 45529 $
$ 排行第九:渡绒(fflower) 42969 $
$ 排行第十:蟹目香珠(qqaa) 41353 $ 原帖由 angelei 于 2011-3-7 01:50 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
发代码是容易被wizb4的
这个是西游记的代码啊. 但是我看土匪的反应跟这个里面的一样, 所以我推测应该是一个模板的. 原帖由 angelei 于 2011-3-7 01:51 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
另外,土匪只对女ID吹箫有兴趣
ttk_13
为了防止你这句误导其他玩家, 我不得不说北侠里的土匪是不直不弯, 女id奏箫也不管用. 一看就知道是西游记的代码……
页:
[1]