阿瓦隆之王吧 关注:19,556贴子:88,477

阿瓦隆最强不完整配兵攻略【技术贴】

只看楼主收藏回复

引言
大家好,我是来自172区(现在5124区)的一个玩家,我是一个玩了五年,一共充了几千块钱的微氪玩家,由于现在阿瓦隆版本更迭成了圈钱的工具没有游戏性可言,所以已经在前段时间退游了。不过最近看到QQ群,微信群里总有些人在装高玩在那里说着发着自以为是的配兵给大家用着,结果被坑的到处吐槽游戏暗改数据什么的,我也不是给官方洗,虽然官方也暗改过数据,只是觉得没有改的那么夸张,却被那些人说的天花乱坠,好像他真的知道改了一样,事实上他们所有的配兵经历只是在战报上的经验之谈,每当版本更新就会有人说等大佬测试,测试个鬼啊,就通过几个战报就能看到数据的随机性和有效性? 看到人家某种兵多带了一些,自身多带另一种兵数量就能克制?洗洗睡吧,梦里什么都有好吧!这游戏是纯粹的数据计算类的,只有通过精确的数学公式计算才能得出最佳的兵种数量的配置!所以接下来我开始为大家介绍具体的伤害计算公式以及计算准确的配兵计算方法。
在正文开始之前,首先感谢两个大佬cccdl2012和revealer88的帖子给了我把完整的游戏计算公式开发完成的前提
帖子传送门:
https://tieba.baidu.com/p/5733587058?pid=120129286329&cid=0#120129286329
https://tieba.baidu.com/p/5006226942?pid=123105298093&cid=0#123105298093
正文开始
一、游戏计算公式

这是借鉴两位大佬帖子所产生的基础公式总结出的,当初两位大佬都希望战斗可以按照一个回合来归纳出计算公式,但是由于隐藏系数和数量的原因,导致并未得出标准的一回合战斗,也没办法算出准确的公式。
*回合数:这个参数是导致公式无法顺利推算出来的最主要的原因之一!直至我退游时并未找出回合数的计算结果!回合数能获取的唯一方法只有用黑龙组的骑兵英雄莫德雷德带着出征获得!根据我的验算这个英雄获取的回合数事实上是有小数点的。回合数的计算方法交由有心人去总结吧。这也是为什么标题我写了个不完整攻略的原因。

接下来的公式就涉及两个隐藏参数:伤害系数和等级系数
伤害系数:指兵种对兵种的特定伤害系数,例如弓打盾,弓兵的伤害要乘以对于盾兵相应的系数。
相应系数我给你们算出来了,官方暗改最多的也是这个系数,觉得有问题的可以自己去算算。
打架系数:

傀儡系数:”

等级系数:指兵种对兵种的等级差的系数,例如10弓打11枪,中间差了一级就要乘以一次等级差值的系数,如果差了两级就要乘以两次,如果是同级就不用乘,计算方法如下:

接下来就是很多人想知道的,充了那么多钱的属性是怎么计算的:


以上三个公式就是属性的计算方式,兵种防御和生命也是按照这个方式计算,把攻击换成防御和生命就行
兵种减伤也是和兵种伤害一样的计算方法。
直接上公式可能看不懂,我举个例子:
13级弩兵打12级盾兵:
13弩的基础攻击是16,假设有100个13弩手,三维部队攻击是400%,弓箭手攻击是1000%,军队伤害100%,弓箭手伤害100%,弓对步伤害200%,弩对盾的系数是1.2,等级差是1级系数是1/0.9,那么13弩对12盾的一回合伤害为:16*(1+400%+1000%)*(1+100%)+(1+100%)+(1+200%)*1.2/0.9*100^0.5=38400
12盾的基础防御是21,基础生命是19,假设有100个12盾兵,三维部队防御和生命是400%,步兵防御和生命都是1000%,军队减伤是100%,步兵减伤是100%,步兵受到弓手的减伤是100%,那么12盾的总承伤为:(21+19)*(1+400%+1000%)*(1+100%)*(1+100%)*(1+100%)*100=480000,
那么实际上要打完这48万血量的12盾需要13弩攻击480000/38400=12.5回合才能击碎
但是前边提过,回合数是未知的,可能就打个5回合,所以需要更多的13弓才能打破
以上就是基础属性计算的公式介绍,下次会更新公式的验证方法以及配兵的计算方法,敬请期待


IP属地:广西1楼2022-04-29 00:09回复
    看得懂这图吗


    IP属地:河南来自Android客户端2楼2022-04-29 12:35
    收起回复
      有没有新手开荒教程,月卡党


      IP属地:辽宁来自Android客户端3楼2022-04-29 14:42
      收起回复
        敢问阁下是172哪位大佬?


        IP属地:广东来自Android客户端4楼2022-04-29 19:06
        收起回复
          二、公式验证方法
          准备事项:
          1.需要两个属性完全一样等级兵种和属性的堡
          2.两个堡都不能有暴击几率属性
          3.两个堡其中一个必须有莫德雷德这个英雄
          4.给堡命名一个堡为进攻方,另一个为防守方
          测试方法:
          首先两个堡飞旁边,越近越好,来回跑的越快!
          然后是确定属性,属性一样有个优势,就是伤害和减伤是相同的,可以再计算时候直接忽略抵消,军伤和军减,兵伤害和兵减伤一样,无论是乘除加减都可以认为是1,同等级去测试也是这个道理,省去伤害计算未知的因素干扰。没有暴击也是省去概率造成的干扰因素。


          我们先测试的是步兵的数据,毕竟步兵是扛伤害的,所有兵都是优先打的是步兵。所以一个堡不带龙,出个整数的步兵,我测试用的是400个t4盾兵,放在两个堡中间的空地上驻扎,然后另一个堡也不带龙,只带莫德雷德一个英雄出征打那个驻扎,带任何步兵400,然后想要测试的兵种400,例如我测试的是重骑兵,就带任何步兵400+t4重骑兵400。

          出的结果去看这几个指标:1.莫德雷德的回合数,2.重骑兵的杀敌数。然后通过上面列出的公式加上所有属性进行计算系数,就可以得到我所给的系数,或者带着系数进行计算就可以得到相近的杀敌数。

          根据前边的公式可以算出
          1:骑兵造成的伤害
          4*(1+209.4%+65.5%+52.5%)*400^0.5*7*1*1.4=3350.816 (骑兵攻击值*兵种数量^0.5*回合数*等级系数*兵种系数)
          2:步兵抗伤值
          (6*(1+206.65%+37.5%)+7*(1+209.4%+37.5%))/2=22.466 ((步兵防御值+步兵生命值)/2)
          3:战损
          3350.816/22.466 =149.1505
          为什么战损是相近的?因为我测试时候发现无论怎么推算都不可能得到准确的数值,只能是在±5%范围内的答案,所以回合数是带小数点的!只不过官方把它省略了,所以数值会有稍微的偏差。
          为什么要带莫德雷德,因为只有这个英雄才有回合数显示,而回合数暂时没找到计算方式。
          还有就是进攻方和防守方攻击顺序一定要固定,防守方会比进攻方多出更多回合的攻击次数,会增加进攻方的死亡率,所以一定要注意


          最后步兵带多少和总行军量带多少根据自己情况而定,行军数量越大越准确,但是行军数造成的回合数不能超过40回合。因为莫德雷德上限40回合,然而最大回合数是没有上限的,超过40的就看不到,目标兵种必须要在战斗后没死完所看到的回合数才是最稳定的!至于进攻方带步兵是防止战损对回合数的影响。双方的总行军量会影响回合数,但是回合数的机制尚不明确,然而对测试结果不影响,所以这个数量不限制,只要不死一个兵就可以。不同的步兵有不同的数值,注意区分。
          最后是测试弓手和轻骑兵种对后排伤害的方法,由于这个这个太复杂,中间可能会有错漏,所以就不赘述测试的方法,我在这里直接给出测试的结果:
          轻骑会有概率把自身伤害的0%或10%或20%分配到后排的弓兵上,弓手也是如此按比例分配到骑兵上,从而造成不同的伤害结果!所以有时候在一些试炼活动里,本来打不过的关卡多打几次可能就打赢就是这个原因。
          我的测试方法可能还存在着漏洞或者数据不对的地方,就请有能力的朋友自己去重新整理吧。


          IP属地:广西5楼2022-04-29 21:07
          回复
            三、如何计算准确的配兵
            计算方法还是根据这个公式来算,因为每个兵种的伤害都是不同的,所以这是个一个线性规划的数学题,如何把每个兵种分配到合适的数值才能最大化。后面那一大串属性的公式计算会把计算弄得很复杂,因此只用这个公式简单说明一下数学计算的方法,理解了的朋友再把属性什么的代入计算。
            回合数:由于这个无法确定,所以先把这个因子省略
            兵种伤害:由于公式复杂,暂时用兵种攻击替代
            公式变为:

            这是很明显的一个幂函数,伤害最大化就是多个这个公式相加,获得的最大值
            所以配兵就成了:当多个幂函数相加,每种兵各为多少的时候有最大的伤害?
            解法如下:
            假设有三个兵种,攻击为:A兵=5 B兵=4 C兵=3,总行军量50,总伤害为D
            有:D=5*A^0.5+4*B^0.5+3*C^0.5 ① 50=A+B+C②
            当每个幂函数的斜率一样时候,有最大值,设斜率为Y
            把每个幂函数进行求导,有Y=5/(2*A^0.5)=4/(2*B^0.5)=3/(2*C^0.5) ③
            化简下:A=(5/2Y)^2 B=(4/2Y)^2 C=(3/2Y)^2
            代入②有:(25+16+9)/(4*Y^2)=50
            求得Y=1/2 代入③
            有A=25 B=16 C=9 代入①
            所以当A=25 B=16 C=9时 伤害D有最大值50
            过程有点复杂,涉及高等数学求导,下边给个简单的计算公式:


            第一个公式可以求出Y斜率,第二个用Y求出任意一种兵的数量
            根据这个思路后续可以把兵种的加成,被打的兵种属性陆续加入进去进行计算配兵
            按照我的计算思路是按照对手带步兵的等级和类型进行计算配兵,只有打掉了步兵后排的兵种就是脆皮一打就死的那种,后排的脆皮数量可以不用考虑进配兵里,这就是为什么不会存在多带一种兵克制从而致胜的原因,只有伤害最大化才能致胜!
            以上就是我想表达的配兵方法,或许有漏洞或者错误,觉得有问题的朋友可以自己去开发或者改进


            IP属地:广西6楼2022-04-29 22:37
            收起回复
              我能把属性和行军数发给你,你帮我配一对兵吗


              来自iPhone客户端7楼2022-04-29 23:40
              收起回复
                四、补充
                ①经朋友提醒,第二部分的图贴错了,重骑兵的战报变成了轻骑兵,是我的疏忽,在这里补上正确的战报

                这个是重骑兵的战报数据
                上边贴错图的那个轻骑兵的战报数据其实也可以计算:
                1:骑兵造成的伤害
                4*(1+209.4%+65.5%+52.5%)*400^0.5*7*(1/0.9)*1=2659.378
                (骑兵攻击值*兵种数量^0.5*回合数*等级系数*兵种系数)
                2:步兵抗伤值
                (6*(1+206.65%+37.5%)+7*(1+209.4%+37.5%))/2=22.466 ((步兵防御值+步兵生命值)/2)
                3:战损
                2659.378 /22.466 =118.3734
                ②第三部分为什么没有步兵的数量有两点
                1.因为回合数不能确定,所以能在多少回合击破步兵也无从计算
                2.因为对手的配兵和属性不确定,需要多少步兵能抗住伤害也无法确定,只能尽量根据实战选择
                如果算上步兵该怎么计算配兵呢?这个很简单:
                通过公式:总行军量=步兵量+其他兵种数量,用总行军量减去想要带的步兵量就是需要计算的其他需要带兵数值
                那如何选择哪几种兵为最佳呢?
                首先是步兵的选择:
                通过公式可以发现,战损和步兵的承伤成反比,也就是说防御和生命越高的步兵越能抗,所以最高级别的步兵就越是最优的选择
                之前很多的王国使用双步兵流,我就稍微解释一下双步兵流的优劣势以及为什么不推荐使用双步兵
                优势:需要大量充钱的游戏低级的玩家属于比较多的群体,那么人多的优势就是有足量的步兵去提供进行战斗
                劣势:1.根据前边说的,低级的步兵没有高级步兵能抗,同样的配兵,带着低级步兵的战损会比带高级步兵的战损要多很多,战斗胜负的原理很多人都知道,就是谁的战损比率小谁就赢,既然战损多了,战损比率就高,很容易战败。2.按照现在暴击配兵的大环境,兵种被限制在六种兵,那么多带一种步兵就少带了一个输出兵,少带就意味着你带着四种输出兵比人家带五种输出兵的伤害要低一节,人家输出高了,相对的你的战损就多了,更容易战败。
                再说说输出兵的选择:
                按照前边说的配兵的计算方法,每个兵种都有攻击,攻击再算上属性加上系数再扣除减伤以及目标步兵的承伤就会算出每个兵种相对于目标步兵的特定伤害,之后在其中选择最高的五个就是最佳的配兵兵种
                例如:前边用ABC三种兵的计算,
                A兵输出5带兵量25
                B兵输出4带兵量16
                C兵输出3带兵量9
                可以看出A、B的伤害明显高于C,如果配兵里三选二那就选择A、B两种兵进入配兵即可
                也就是输出越高带兵量也越高,谁高选谁。


                IP属地:广西8楼2022-04-30 13:02
                回复
                  3种兵怎么配兵


                  IP属地:广东来自iPhone客户端9楼2022-04-30 17:46
                  收起回复
                    字太多,懒得看


                    IP属地:广东来自Android客户端10楼2022-04-30 18:50
                    回复
                      厉害厉害


                      IP属地:江苏来自iPhone客户端11楼2022-04-30 22:21
                      回复
                        鼎一个


                        IP属地:海南来自Android客户端12楼2022-04-30 22:39
                        回复
                          厉害


                          来自Android客户端13楼2022-05-22 04:19
                          回复
                            莫德雷德每回合攻击都递增,为何用最终的攻击全程参与计算,不应该平均一下吗,然后实际情况就是由于阵亡和受伤,每回合双方的兵数量都在变化,这也要考虑呢


                            IP属地:四川来自Android客户端15楼2022-06-18 15:59
                            收起回复
                              厉害


                              IP属地:北京19楼2022-06-21 16:30
                              回复