轩辕春秋文化论坛 » 步步为营 » 三国志英杰传反击率分析


2004-7-9 18:00 龙吟
三国志英杰传反击率分析

经过对三国志英杰传执行代码的分析,龙吟现给出反击概率公式:

   1)只有贼兵(山贼、恶贼、义贼)和武术家能反击敌军的物理攻击。
   2)敌军兵种为骑兵、贼兵、猛兽兵团、武术家、异民族时,才可能
        产生反击。敌军兵种为步兵、弓兵、军乐队、妖术师、运输队时,
       不可能发生反击。
   3)反击概率=我军武将武力÷150。
       例如:魏延武力为92,反击概率为 92÷150=0.613,即 61.3%。

   所以,可以产生以下结论:
   1)谁最适合反击?
       武术家:
           魏延 武力 92   反击概率  61.3%
           藩宫 武力 62  反击概率 41.3%
          陈式  武力 67 反击概率  44.7%
       贼兵:
           赵何 武力 55  智力 47  反击概率 36.7%
           董梁 武力 69  智力 32  反击概率 46%
           周仓 武力 85  智力 40  反击概率 56.7%
           刘辟 武力 67  智力 59  反击概率 44.7%
      魏延和周仓自然名列榜首,按平均每回合有三只敌军攻击我军(当然需要良好的布阵)每次反击得到4点经验(我军等级远高于敌军)。魏延比赵何每回合可以多获得:
      (0.613-0.367)*3*4=2.952~3.00点经验值。
      按一场战斗36回合计算,即可多得1级。

   2)反击概率高与反击伤害高的制约关系。
      武力高,意味着反击概率高,也意味着反击伤害高。
     影响物理攻击伤害的要素有六:
           武将武力、部队兵种、士气、地形、宝物、兵种生克。
     对于武术家和贼兵而言,兵种生克无效。因此可以从一下方面减少
    物理攻击伤害。
         (a) 不要给武术家和贼兵携带武器。
         (b)尽量使敌军处于有防御加成的地形上(依赖布阵)。
         (c)不要让恶贼升级到义贼。
             恶贼的兵种攻击比义贼少10,反击时可以减少
             10*2*(等级+10)÷10÷2=(等级+10)的伤害。
         (d)尽量降低我方的士气。
              士气每降低1点,可以减少
              1×(等级+10)÷10÷2=(等级+10)÷2的伤害。
             为避免部队混乱,贼兵的士气保持在30-50间是最好不过的。

    3)要提高反击次数,需要良好的布阵,尽量使贼兵的身边都是
         骑兵、异民族、猛兽兵团、武术家和贼兵。
         其中异民族兵种防御高达80,兵力也多,虽然统率较低,相当不错。
         近卫队兵种防御60,兵力也多,统率一般不错。
         武术家兵种防御60,兵力和统率比近卫队略低。
         义贼兵种防御60,只是兵力比近卫队少,统率比近卫队略低。
         猛兽兵团兵种防御只有30,有点可惜。

[[i] 本帖最后由 阿尔法孝直 于 2009-3-2 20:31 编辑 [/i]]

2004-7-9 20:13 马超将军
高,此帖加精。解决了长期以来疑惑的问题,果然武力越高反击率就越高。

2004-7-9 20:39 phone
太强了,不过能说说你是怎么得到的这些数据么?

2004-7-9 21:14 重拳猛击
多谢龙吟老大!

大家可否把关于程序的悬而未决的问题都拿出来,哪个高手什么时候有空就帮忙分析了。

我先说两个:

敌人什么条件呆在村里不出来,据我的经验是40%血不出来追杀,但未经证实。

看到了策略伤害公式,但不知各种计策的加成是多少,以及相关的随机数。如果大家确定随机数很小(个位数),我就来测试,回头把结果拿出来。
非攻击系策略的影响(混乱系和补给系)。
还有相应的书。
如果有人已经知道请帮忙贴一下。

先此谢过

2004-7-9 21:17 周瑜
龙吟老大很久没出手了,果然一出手就是高招,赞一个!

2004-7-9 21:22 Ultramind
如此好贴,不得不顶!

2004-7-10 12:13 龙吟
事实上,英杰传反击率的算法是这样的:

使用DS:0970和DS:0972的两个双字节整数为计算依据,计算出一个
0-65535之间的数,然后用该数,然后用它去除150,将余数和
武将的武力比较,如果低于武将武力,则产生反击,因此武力越高越容易
产生反击.

这里可以发现:如果使DS:0970和DS:0972为固定值,可以令计算出的
值正好被150除尽,那么余数为0,则反击率可以提升到100%.

大家对DS:0970和DS:0972还有映像吗?对,我在<物理攻击/策略伤害分析>
的贴子中也提到过它.英杰传中每次使用DS:0970和DS:0972计算出某个值
时,就会根据计算出的值产生出两个双字节整数,回填到DS:0970和DS:0972中,
这样下一次计算的值就会发生变化.由于采用了特定算法,并且在计算DS:0970
和DS:0972使,英杰传还会代入两个参数,如计算反击率的参数是<0,150>.所以
第一次计算出的值和第二次计算出的值会有较大不同.在计算机术语中,这叫做
"伪随机数算法".

下面不谈专业知识,只是说结论:因为英杰传中人物攻击/使用策略/补给/天气变化等
等都会调用伪随机数算法,因此甲先行动,乙后行动和乙先行动甲后行动对DS:0970
和DS:0972的影响是不一样的.所以从理论上来说,精心安排行动顺序可以使反击率
提升到100%.当然实际上是不可能做到这一点的.但是,不断S/L使行动顺序变化到
的确可以提升反击的概率.我没有测试过,但估计如果在可以忍受的范围内S/L,争取
每一回合都提升反击率,那么反击率提升3-5个百分点还是有可能的.

另:是否需要制作贼兵必反击补丁呢?我有点犹豫,这好象优点破坏游戏系统?如果
有人需要,请给我回帖,如果需要的人多的话,我就发布一个.

[[i] 本帖最后由 阿尔法孝直 于 2009-3-2 20:32 编辑 [/i]]

2004-7-10 12:40 phone
[quote]原帖由[i]龙吟[/i]于2004-07-10, 12:13:55发表
事实上,英杰传反击率的算法是这样的:

使用DS:0970和DS:0972的两个双字节整数为计算依据,计算出一个
0-65535之间的数,然后用该数,然后用它去除150,将余数和
武将的武力比较,如果低于武将武力,则产生反击,因此武力越高越容易
产生反击.

这里可以发现:如果使DS:0970和DS:0972为固定值,可以令计算出的
值正好被150除尽,那么余数为0,则反击率可以提升到100%.

大家对DS:0970和DS:0972还有映像吗?对,我在<物理攻击/策略伤害分析>
的贴子中也提到过它.英杰传中每次使用DS:0970和DS:0972计算出某个值
时,就会根据计算出的值产生出两个双字节整数,回填到DS:0970和DS:0972中,
这样下一次计算的值就会发生变化.由于采用了特定算法,并且在计算DS:0970
和DS:0972使,英杰传还会代入两个参数,如计算反击率的参数是<0,150>.所以
第一次计算出的值和第二次计算出的值会有较大不同.在计算机术语中,这叫做
"伪随机数算法".

下面不谈专业知识,只是说结论:因为英杰传中人物攻击/使用策略/补给/天气变化等
等都会调用伪随机数算法,因此甲先行动,乙后行动和乙先行动甲后行动对DS:0970
和DS:0972的影响是不一样的.所以从理论上来说,精心安排行动顺序可以使反击率
提升到100%.当然实际上是不可能做到这一点的.但是,不断S/L使行动顺序变化到
的确可以提升反击的概率.我没有测试过,但估计如果在可以忍受的范围内S/L,争取
每一回合都提升反击率,那么反击率提升3-5个百分点还是有可能的.

另:是否需要制作贼兵必反击补丁呢?我有点犹豫,这好象优点破坏游戏系统?如果
有人需要,请给我回帖,如果需要的人多的话,我就发布一个. [/quote]

[[i] 本帖最后由 阿尔法孝直 于 2009-3-2 20:33 编辑 [/i]]

2004-7-10 12:54 周瑜
贼兵必反击补丁就好比游戏修改工具一样,其本身并没有错,关键是怎样去用它。支持龙吟放出此补丁,等待中......

2004-7-10 17:15 重阳
原来是除150,我曾猜想是除200,看来感觉上的反击概率偏低了一点。
不过因是伪随机数,实际概率也难说就一定相符。

2004-7-10 20:24 ssbye
pfpf,真是太厉害了,虽然很少玩英杰传,但是看到以前很久都没有弄懂的问题被解决掉,不得不顶一个.

2004-7-10 22:42 真定赵云
PFPF,  强烈赞同加载贼兵反击补丁,那样周仓就不用太费心思了

2004-7-10 23:04 KYOKO
???????
反击率只同武力有关吗
不是行动也会影响反击率的吗

2004-7-10 23:21 phone
[quote]原帖由[i]重阳[/i]于2004-07-10, 17:15:51发表
原来是除150,我曾猜想是除200,看来感觉上的反击概率偏低了一点。
不过因是伪随机数,实际概率也难说就一定相符。 [/quote]
根据大数定律,频率总是趋向于概率的吧?

2004-7-11 19:03 龙吟
[quote]原帖由[i]KYOKO[/i]于2004-07-10, 23:04:27发表
???????
反击率只同武力有关吗
不是行动也会影响反击率的吗 [/quote]
行动影响的是计算出的随机数,的确会影响到是否反击.但根据概率论,你不特别注重行动顺序的话,反击的概率只与武力有关.

反击概率是无限多次行动中反击出现的百分比.

2004-7-12 13:37 phone
龙大大研究研究关于混乱的问题吧。

2004-7-12 22:40 易水
不赞成必反击补丁,那和修改有何区别呢?

2004-7-12 23:34 重阳
大家曾普遍感觉到反击有一定的连续性,莫非没这回事?龙吟看看伪随机数是怎产生的,会不会和这个有关。

2004-7-13 16:03 315
用工具锁定一些数据的值,应该就可以。永远晴天,村庄补血永远250,永远反击,策略永远失败。。。。。

2004-7-13 16:20 游客丁
呵呵,其实能自己控制是否反击就好了,有时候并不是每次都反击就好。
比如说开始士气高的时候反击太多,敌人的生命有限
另外还有在村庄养敌人的时候,不想一下把他反击死需要停一停。

但总的来说这样会好很多,至少打法上会固定一些,不用那么多sl,对练级利大于弊
如果老大能做出这个补丁,相信22个99级很容易就可以实现,23也有可能了

2004-7-13 17:01 周瑜
开个玩笑,每次贼兵和武术家受到攻击以后,弹出一个对话框,反击么?然后选择可或否,这样便可弥补一些缺陷。
比如打江夏的时候,前面一些回合S/L不让贼兵反击,把敌人引进树林又把自己的士气降下来后S/L不停反击,反正最后一定要把敌人全部反击完,可能每个敌人能多被反击1次弱一点。

2004-7-14 10:06 游客丁
我早就这样想了。。。

2004-7-14 11:23 Ultramind
如果有了必反击补丁,敌人也是必反击吧?那初期的敌人贼兵还是挺厉害的,呵呵

2004-7-14 22:38 易凡
[quote]原帖由[i]周瑜[/i]于2004-07-13, 17:01:50发表
开个玩笑,每次贼兵和武术家受到攻击以后,弹出一个对话框,反击么?然后选择可或否,这样便可弥补一些缺陷。
比如打江夏的时候,前面一些回合S/L不让贼兵反击,把敌人引进树林又把自己的士气降下来后S/L不停反击,反正最后一定要把敌人全部反击完,可能每个敌人能多被反击1次弱一点。 [/quote]
同感!不过还是先做个随时S/L补丁吧。。。幻想中

2004-8-2 15:32 jiang791016
实在是高,把这也能分析清楚,楼主实在是厉害啊

2004-8-2 15:36 真定赵云
不愧是节度使,高,实在是高  

小声的说:这确实是一个很好的想法,不知道龙老大能不能实现

2004-8-4 17:52 白河寒秋
非常同意,期待能有这样一个补丁,一定会引起新一轮的英杰传练级狂潮

PS:顺便每回合还可以选择村庄等的恢复兵力,如果无的话就默认为补兵250,士气补将 近20点,呵呵

2009-4-13 08:39 xigua
强人啊

2009-4-30 14:33 仅次于狼
请问这个补西现在出来没有啊?能不能给我一个,谢谢龙吟大哥,我一个朋友叫龙丹~~~~

2009-4-30 22:32 KYOKO
从有GB4那天开始反击率已经不是简单的公式了
现在有了补丁。。。

页: [1]


Powered by Discuz! Archiver 5.0.0  © 2001-2006 Comsenz Inc.