![]() |
|
|
#3 |
|
初级会员
![]() ![]() ![]()
注册: 02年08月30日
帖子: 12
声望力: 0
声望:
10
![]() 现金:6两梁山币
资产:7两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0 |
我来给个详细的解答。
注:18<=ratio<=27 怪的最大内力=你的最大内力×ratio/20 (你曾经达到的最高内力值,练法宝可降这个值) 怪的最大法力=你的最大法力×ratio/20 (你曾经达到的最高法力值,练法宝可降这个值) 怪的技能等级=你的最高技能等级×ratio/20 怪的wx=1.02×(你的wx)×ratio/20 怪的dx=(1.02X(你的dx)×ratio/20×2+1.02×(你的wx)×ratio/20)/3 怪的内力加力值=怪的enable内力等级/2 (也=你的内力加力值×ratio/20 注:当你的内力等级即你技能的最高等级时) 怪的法力加力值=怪的最大法力/30+1 (也=你的法力加力值×2/3×ratio/20 注:当你现在的最大法力即你曾经达到的最大值时) 以上为基本知识 以下解读combatd.c 以下表达式必须安这个次序 伤害力1=(攻击方的兵器伤害力+random(攻击方的兵器伤害力))/2 伤害力2=伤害力1+技能的伤害力×伤害力1/100 注:比如千钧棒法中大闹阎罗府这招的伤害力为35,即技能伤害力 伤害bonus=攻击方当前臂力 (挺大的,因为你enforce了) 伤害bonus=伤害bonus+内力bonus=攻击方当前左边内力/20+攻击方加力值-防守方当前左边内力/25 伤害bonus=伤害bonus+技能内力×伤害bonus/100 注:技能内力指招式中带内力,这出现在掌法拳法中,带兵器时这行忽略。 伤害bonus=伤害bonus+技能bonus 注:技能bonus仅在jinhun-zhang有,原因在源码中仅它带了自己单独的hit_ob函数 伤害bonus=伤害bonus+兵器bonus 注:兵器bonus发生在断刀与毒蒺黎 伤害bonus=(伤害bonus+random(伤害bonus))/2 伤害=伤害力2+伤害bonus 当random(防御方wx)>攻击方wx,伤害会变小,咱们杀怪一般不考虑这个。 还有你的法宝能担住一部分伤害,两个顶级法宝能档2*125*20=5000点伤害,记住在杀怪或pk前将其charge满。 还有内力反震,发生在攻击方是空手攻击,伤害力也有不同的计算,这里就不多作讨论了。 综上所述,怪的伤害力跟其当前左边内力及加力值有很大关系,其它只是在特殊情况下再叠加影响。 1. 如果skills 非常平均, 都是500(包括特殊法力,内功) 那么保留75年内力,和降低到40年内力, 怪每次攻击的 dmg 会随内力的调整而降低吗? 答:会降低。你应该用练法宝来降低。关于内力的参数有三个, force max_force maxmium_force,最后一个是隐性的,练法宝可降低。 2. 如果其他武功都是500, 而force 和特殊内功 只学到300 (45年内力), 在内力不变的情况下, 把force 和特殊内功 都补平到500, 怪的dmg 会提高吗? 答:不会。怪的加力值早就那么高了,前面说过,一般影响伤害力的主要是当前左边内力和加力值,你把force 和特殊内功 都补平到500,对这两项没影响。 3. 怪的roar dmg 与灭妖者的什么系数有关? 最好附加一份 exert roar 的code 答:ob = all_inventory(environment(me)); skill = me->query_skill("force"); force = me->query("max_force"); for(i=0; i<sizeof(ob); i++) { if( !living(ob[i]) || ob[i]==me ) continue; if(!me->visible(ob[i])) continue; if(!valid_kill(me,ob[i],0)) continue; // mon 6/28/99 if( skill/2 + random(skill/2) < (int)ob[i]->query("cps") * 2 ) continue; damage = skill + force/10 - ((int)ob[i]->query("max_force") / 10); if( damage > 0 ) { ob[i]->receive_damage("sen", damage, me); if( (int)ob[i]->query("force") < skill * 2 ) ob[i]->receive_wound("sen", damage/2, me); me是攻击方,ob是防守方。即: damage=怪的enable内力值+怪的当前右边内力/10-你的右边内力值/10 =怪的enable内力值+0.35×你的内力右边值/10 (注:最后一个怪时) fat chenghua chan chenghua |
|
纷纷世事无穷尽 茫茫泥海我已归 |
|
|
|
|