宇宙战将吧 关注:4,398贴子:73,933
  • 27回复贴,共1

FF2的魔法伤害公式

只看楼主收藏回复

好久没来了,大家还好吗?
最近终于有时间继续FF2的研究了,之前也感谢版主的大力支持与帮助,还给我提供了详细的资料。
我对FF2的魔法伤害(or回复)做出一些研究,发现了一些计算公式。可能以前有人分析过了,不过我把我的结果发一下吧:
首先是: [魔法伤害] = [魔法单次伤害] * [魔法次数]
解释:这个公式是显然的。不过我在代码里发现,最终的魔法伤害并不是直接乘上去的,而是每次计算魔法的单次伤害,一次一次加上去了。举例:火术5级,FF2分别计算每一次的伤害为17, 13, 15, 18, 12,最终的总伤害为75.
然后是: [魔法单次伤害] = [魔法攻击力] * ( 1 + [随机数] + [暴击])
[魔法攻击力] = [魔法基础威力] + [精神 or 智力]/4
其中[随机数]是0~1内的小数,[暴击]=1的概率为5%。
解释:这个和物理攻击类似,物理攻击100,无防御下一次攻击能打出100~200的伤害,暴击能打出200~300的伤害。魔法攻击同样也遵循如此规律。魔法的攻击力由魔法基础威力以及精神和智力决定,这个也很容易理解。几种常见的魔法基础威力为:回力20,风火雷毒10,毁灭(神圣)15,核融20。
注:暴击这个概率不高5%,但是由于前面说过最终的伤害是一次一次加上去的,因此暴击的判定也是一次又一次的进行的。所以往往攻击次数为10的时候,10次暴击的判定很大概率就有那么一两次暴击。所以我们物理攻击的时候很容易看到暴击,其实这么多的攻击次数里面真正的暴击就这么一两次而已。另外暴击无视防御力。
注意了,这里我们仍然没有看到魔法干涉和魔防对伤害有啥影响,马上就是它们了:
[魔法次数] = [魔法等级] + [额外攻击次数]
解释:这里就是魔法攻击和物理攻击的最大差别了,物理攻击次数永远小于武器等级,而魔法攻击次数大于魔法等级。也就是10级火术,有可能计算了15攻击。那么这个额外攻击次数的计算是:
[额外攻击次数] = [干涉后的魔法攻击次数] - [敌人魔法防御次数]
解释:这个公式有点复杂。详细情况:[干涉后的魔法攻击次数]以及[敌人魔法防御次数]都是整数,这个整数通过掷骰子来计数,中了就加一,不中就不加。
其中关于[敌人魔法防御次数]掷骰子的次数是魔防防御的等级,每次掷骰子中了就增加一次防御次数,中的概率就是敌人的魔法防御率。
而[干涉后的魔法攻击次数]掷骰子的次数是魔法等级,每次掷骰子中了就增加一次攻击次数,中的概率等于([智力 or 精神] - [魔法干涉]) %
对于魔防很高的怪物,[额外攻击次数]可能会算出来小于0,如果结果小于等于0,那么就没有这个额外攻击次数了。
由上面的公式中我们可以知道,无暴击情况下,魔法伤害的最大值为
[魔法攻击力] * [魔法等级] * 4;
例如精神40,毁灭12级,其魔防攻击力=15+40/4=25,那么最大能造成25*12*4=1200点的伤害;而精神99,毁灭16级,魔防攻击力=15+99/4=39,最大39*16*4=2496点伤害。(核融16级2816点)
魔法伤害的最小值是最大值的1/4,这个也很容易算出来。最难算的魔法伤害的平均值:
[魔法伤害平均值] = [魔法攻击力] * 1.5 * ([魔法等级]+ Max(0, [魔法等级] * ([智力 or 精神] - [魔法干涉]) - [敌人魔防等级]*[敌人魔防率])/100)
这个公式太复杂了,具体举几个例子吧:
精神40,毁灭12级,干涉0,敌人魔防0-00,平均伤害是25*1.5*(12+12*40/100)=630,
如果干涉为20,伤害=25*1.5*(12+12*20/100)=540;
如果干涉大于40,伤害=2.5*1.5*12=450。
智力99,核融14级,干涉0,敌人魔防0-00,平均伤害是44*1.5*(16+16*99/100)=1839,
如果干涉为50,伤害=1377;
如果干涉为80,伤害=1100;
干涉大于99,伤害=924;
如果无干涉下:
敌人魔防2-40%,伤害=1786;
敌人魔防4-50%,伤害=1707;
敌人魔防8-60%,伤害=1522;
敌人魔防12-80%,伤害=1126。
具体的计算,我在我的百度网盘上上传了一个FF_magic.xlsx,一个Excel表,可以直观的计算魔法伤害:http://pan.baidu.com/share/link?shareid=3823763541&uk=33793924
总结:魔法伤害主要取决于魔法的威力、精神or智力以及魔法等级。但同时魔法干涉和敌人魔法防御也会对魔法伤害造成影响,有时候高的魔法干涉或者魔防会使魔法伤害的平均值下降很多。因此需要考虑到魔法干涉的影响,不过在超高魔防面前例如16-99%,魔法干涉高与低对结果的影响也就不大了,不管如何都没有额外攻击次数了。
魔法伤害的研究基本到这了,我还没有研究敌人的耐性和弱点对结果的影响,以及究极术的规律。


1楼2013-06-18 18:17回复
    呀~~是谦君,好久不见,想死你啦,忙什么去了呀~~?


    IP属地:中国台湾2楼2013-06-18 19:07
    收起回复
      公式真是复杂~~~~
         --来自反乱军通信客户端


      IP属地:中国台湾来自Android客户端3楼2013-06-18 21:55
      收起回复
        理论帝


        IP属地:江西来自手机贴吧7楼2013-06-23 09:41
        回复
          坐等楼主放出究极术的公式~~~
          另外,除FC版之后的其他版本,都没有魔法干涉概念了对伐?
          呐~~~@winisterZ


          IP属地:江苏8楼2013-06-24 12:23
          收起回复
            回8楼,FC版本究极术的公式其实也是类似。也是
            [魔法伤害] = [攻击次数] * [魔法单次伤害]
            其中究极术的魔法威力为100,是白魔法,无属性伤害;因此究极术的魔法攻击力为(100+精神/4)。
            但是究极术和普通魔法不同的是,究极术无论多少级,伤害都是一样的。我在看代码时也验证了这个观点。究极术的攻击次数为1~3之间,至于具体多少,完全取决于你的魔法干涉与敌人的魔防(通过掷骰子确定)。
            举个例子,如果你的精神为80,魔法干涉为0:
            那么究极术的魔法攻击力 = 100 + 80/4 = 120;那么单次魔法攻击的平均伤害 = 120*1.5 = 180;
            如果敌人魔防非常低,攻击次数为3,则伤害=540;如果敌人魔防稍微有点高(只要能够防御两次魔法攻击,例如2-100%,4-50%之类的),那对不起,只有180。
            另外我仔细看了究极术的代码,就计算伤害这一块和普通代码不一样,其他一模一样。没有任何玄机和奥妙。综上所述,FC里面的究极术是垃圾,敏武死的好冤。


            9楼2013-06-24 13:31
            收起回复


              IP属地:江苏10楼2013-06-24 18:21
              回复
                不过好在,这游戏中魔法防御再高都是不能将不带属性的伤害魔法完全无效化的
                另外,有计算过吸血和摄魔的公式么
                另外全武器16全魔法16,精神99的情况下新版(WSC,PS,GBA,PSP)的究级似乎可以打出超过9999的伤害


                11楼2013-06-27 02:08
                收起回复
                  谦君研究的好深啊,看来要对魔法伤害减免的话要动大手术,一直觉得魔防很鸡肋原来如此。突然觉得要想有所突破的话不如从新开发个游戏 - -


                  IP属地:云南12楼2015-04-20 22:25
                  回复
                    问一下魔法攻击力和物理攻击力是不是同一个数据呀?


                    来自Android客户端13楼2016-07-18 14:41
                    收起回复