口袋妖怪吧 关注:1,052,974贴子:32,001,565

[技术贴]利用Excel求口袋妖怪防御与HP努力值分配最佳值

只看楼主收藏回复

一楼祭品


IP属地:上海1楼2012-02-27 16:50回复
    我们知道,在口袋妖怪中,当需要培养一个优秀盾牌时,努力值有限加满某防及HP,但是有些情况下,由于部分要分配给其他项目,比如敏捷,无法把全部的努力值分给某防及HP,那么在这种情况下,该怎么分配才能达到最好效果呢?
    首先我们看下公式
    伤害=[(等级*0.4+2)*攻击方攻击力*技能威力/守备方防御力/50+2]*随机数
    HP=(种族值*2+个体值+努力值/4)*等级/100+10+等级
    HP以外能力=[(种族值*2+个体值+努力值/4)*等级/100+5]*性格修正
    伤害公式中那个+2,是为了防止加上随机数后打出0的伤害,其影响对计算结果很小,姑且忽略,暂不考虑定点伤害技能。
    于是得出
    伤害*守备方防御力=(等级*0.4+2)*攻击方攻击力*技能威力/50*随机数
    结论:PM防御能力主要和某防和HP的乘积有关,于是,在有限的努力值中,我们要尽可能使某防与HP的乘积最大。


    IP属地:上海3楼2012-02-27 16:51
    收起回复
      以100级+防性格的防御为例,设防御力与HP乘积为Max,防御努力值为4x,HP努力值为4z,剩余努力值为4Sum(每4点努力值折合一点能力,方便后期计算,先这么设)
      Max=(防御种族值*2+防御个体值+4x/4+5)*1.1*(HP种族值*2+HP个体值+4z/4+10+100)
      4Sum=4x+4z
      由于种族和个体都是常数,设a=防御种族值*2+防御个体值+5,c=HP种族值*2+HP个体值+110,性格修正1.1在这里不影响计算,舍去。
      简化公式得
      Max=(a+x)*(c+z)
      Sum=x+z
      a、c、Sum为常数


      IP属地:上海5楼2012-02-27 16:52
      回复
        但这个方程怎么解?我高等数学微积分是挂科的,懒得算这种东西,于是请出了本文的主角,Excel!
        我们需要用到Excel的规划求解功能,精简版的Excel可能会将该功能删去,所以我们需要完整版的Excel。
        以Excel2003为例(2007及2010原理类似,单选项位置不同),选择工具-加载宏,把规划求解勾上。

        


        IP属地:上海6楼2012-02-27 16:53
        回复
          以282号沙奈朵为例,讲解一下过程。假设这只沙奈朵HP与防御个体为31,目前100点努力值分配给敏捷,剩余410点(实际有效为408点)
          然后看下我表格的设置

          


          IP属地:上海7楼2012-02-27 16:54
          回复
            A5和E5分别是上面提到的a和c数值,公式分别为“=A2*2+B2+5”和“=E2*2+F2+110”。
            A9 A10 E9 E10分别是两项能力的能力点数和努力值,由于A9+E9=G9,G9为常数,E9的公式为“=G9-A9”
            几个黄色背景的我们需要输入的值,两个橙色的是计算结果
            下面是关键的G13格,公式为“=(A5+A9)*(E5+(G9-A9))”,也就是特防与HP的乘积,我们需要知道当这个数最大时,x和z的值。
            选择工具-规划求解,出现以下界面,设定如图就行了。

            


            IP属地:上海8楼2012-02-27 16:55
            回复
              这项功能可以通过更改单元格中的值来查看这些更改对工作表中公式结果的影响,具体这个原理不详细分析了,也就是说,当选择可变单元格为A9时,系统会计算,当A9为何值时,G13单元格会符合条件。约束那一项是限制A9的范围,我这里设定该值为整数,且0<=x<=63。点击求解后,表格上就会像上面第二张图那样,显示出A9和E9的值了。
              后记:其实有经验的玩家应该知道,当a+b值一定,a与b值越接近时,a*b的值最大,由于HP能力在计算上会加上PM的等级,一般会比两防高不少,所以一般是加满某防,剩下来的分配HP,不过也有像沙奈朵那样,特防很高,但HP很少的情况,这时就需要仔细的计算了。然后,我打算看看能不能用类似方法计算双盾的两防及HP分配如何达到最好效果...
              


              IP属地:上海9楼2012-02-27 16:55
              回复


                IP属地:北京11楼2012-02-27 16:59
                回复
                  很好


                  IP属地:辽宁12楼2012-02-27 17:02
                  回复
                    前排留名


                    IP属地:北京来自掌上百度13楼2012-02-27 17:03
                    回复
                      前排留名


                      IP属地:湖北14楼2012-02-27 17:05
                      回复
                        我死的真惨


                        IP属地:上海15楼2012-02-27 17:06
                        回复
                          前排


                          IP属地:广东来自Android客户端16楼2012-02-27 17:07
                          回复
                            前!!


                            IP属地:北京来自手机贴吧17楼2012-02-27 17:07
                            回复
                              如果是说想要在有限的努力内得到最佳耐久的话HP与防御力相等的时候就是最高耐久了 没必要那么麻烦吧= =


                              IP属地:上海18楼2012-02-27 17:10
                              回复