返回列表 发帖
事实上rufus贴的。。也是别人的猜测。。。

TOP

OTL 怎么感觉像最初的公式....
说实话`没看懂

[ 本帖最后由 永恒の繁星 于 2005-12-27 20:57 编辑 ]

TOP

  1. case CR_ACIDDEMONSTRATION:        /* アシッドデモンストレーション */
  2.         hitrate= 1000000;
  3.         damage = s_int*281/1000;
  4.         damage2 = s_int*281/1000;
  5.         if(t_vit>6){
  6.                 damage *= 1+t_vit*142/100;
  7.                 damage2 *= 1+t_vit*142/100;
  8.         }
  9.         if(target->type==BL_PC){
  10.                 damage /= 2;
  11.                 damage2 /= 2;
  12.         }
  13.         damage *= skill_lv;
  14.         damage2 *= skill_lv;
  15.         div_=skill_get_num( skill_num,skill_lv );
  16.         s_ele = 0;
  17.         s_ele_ = 0;
  18.         no_cardfix = 1;
  19.         flag=(flag&~BF_RANGEMASK)|BF_LONG;
  20.         break;
  21.         case ITM_TOMAHAWK:                /* トマホーク投げ */
  22.                 flag=(flag&~BF_RANGEMASK)|BF_LONG;
  23.                 break;
  24.         }
  25. }
复制代码

jAthena的写法
复杂的多,楼楼上两个好好看贴了么,在搞什么……

也就是
对象vit>6
damage = int*0.281*(1+vit*1.42)*skill_lv
对象vit<=6
damage = int*0.281*skill_lv

嗯,发现上面有一样的了

[ 本帖最后由 rufus 于 2005-12-27 21:08 编辑 ]

TOP

if TSD 是判断攻击对象是否玩家.....
非代码模式的都写出来了......还猜什么猜.....
把签名改回来~

TOP

原帖由 rufus 于 2005-12-27 20:39 发表
damage = int * Floor( (100*Vit)^0.5 ) / 3;

這個是對人的還是對怪的呢?

TOP

-v- 虽然它猜错了`不过楼上的楼上加油

[ 本帖最后由 永恒の繁星 于 2005-12-27 20:53 编辑 ]

TOP

damage = int_ * (int)(sqrt(100*status_get_vit(target))) / 3;
                if (tsd) damage/=2;
      

这个····我个人意思上的翻译

伤害=练金INT×练金INT(sqrt(100×攻击目标的VIT))/3                              sqrt就是返还平方根就是(100*目标VIT)的平方根·····
tsd是什么意思····天啊···

TOP

都写了,自己看
上面是eAthena的猜测算法,其实也就是和我们一样的在猜

国内用SourceForge真慢
jAthena有更新的算法,继续去找找看

TOP

damage = int_ * (int)(sqrt(100*status_get_vit(target))) / 3


變作數學公式是怎麼樣呢?

[ 本帖最后由 喜樂 于 2005-12-27 20:43 编辑 ]

TOP

那个(INT)是取整吧......
把签名改回来~

TOP

原来...如此

TOP

damage = int * Floor( (100*Vit)^0.5 ) / 3;

TOP

100*VIT
开平方
除以3
取整
结果*INT
最终伤害.....
计算步骤是这样吧...
把签名改回来~

TOP

楼上能不能把公式翻成我能看懂的...

TOP

  1.         case CR_ACIDDEMONSTRATION:
  2.                 //This equation is not official, but it's the closest to the official one
  3.                 //that Viccious Pucca and the other folks at the forums could come up with. [Skotlex]
  4.                 damage = int_ * (int)(sqrt(100*status_get_vit(target))) / 3;
  5.                 if (tsd) damage/=2;
  6.                 aflag = (aflag&~BF_RANGEMASK)|BF_LONG;
  7.                 break;
  8.         }
复制代码

仅供参考,可能完全不对

TOP

返回列表