标题: 求曹操传武将加入等级计算方法
性别:未知-离线 JJWW的

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 1
编号 425135
注册 2011-5-19


发表于 2011-5-19 00:42 资料 短消息 只看该作者
求曹操传武将加入等级计算方法

如题  所有武将等级为降序排列的情况下:
  新加入武将等级 = 等级最高的 n 人的等级总和 / n
  (n = 新武将加入前队伍中的总人数 < 超过15时取15 >
这个方法的就别说了 是错的


顶部
性别:男-离线 墨眉如龙

Rank: 5Rank: 5
组别 校尉
级别 偏将军
好贴 1
功绩 14
帖子 352
编号 2140
注册 2003-11-14


发表于 2011-5-19 08:28 资料 文集 短消息 只看该作者
引用周瑜大大的帖子
来源:三国友盟论坛,原作者:piccolo

在 雪涟漪,XYZ,bbschat,van,重阳 等各位大侠的不懈努力下,新加入武将等级终于有了精确的计算方法了。
还要特别感谢 van 提供的程序bug报告,使该项工程进展得到了质的飞跃。提议对 van 进行嘉奖。
在下做了一下整理,希望能方便大家参考。

新加入武将等级具体计算方法如下

下列计算中若产生小数,则自动取整,小数点后全部舍去。如 3.97 取整后为 3 。
1。所有武将等级为降序排列的情况下:
    新加入武将等级 = 等级最高的 n 人的等级总和 / n
    (n = 新武将加入前队伍中的总人数 < 超过15时取15 > )
    例如:
        曹操(lv17)、其余16人(lv3),则
        新加入武将等级 = ( 17 + ( 14 * 3 ) ) / 15 = 59 / 15 = 3.93 = 3

2。所有武将等级非降序排列的情况下:
    新加入武将等级 = ( 等级最高的 n 人的等级总和 + A ) / n
    (注:n = 新武将加入前队伍中的总人数 < 超过15时取15 > )
    A 的计算方法如下:
        由于所有武将等级非降序排列,所以相对于按照等级降序排列时的位置排列,必定有人的位置向后移动了(我们这里只要关注位置后移的人,前移的人不用管)。
        先找出所有位置后移的人,然后再这些人中找到后移位数最多的人。如果有多个人的后移位数并列最多,则取其中按照武将顺序排列时排位最靠后的那人。记住此人的等级是多少,最后再找低于该等级的所有武将中的最高等级,即为 A 的值。

    例如:
    当前所有武将顺序排列如下:
        1:曹操(lv9)、2:夏侯敦(lv6)、3:曹仁(lv9)、4:夏侯渊(lv5)、5:乐进(lv8)、6:李典(lv4)、7:曹洪(lv6)
    如按照降序排列则应当为:
        1:曹操(lv9)、2:曹仁(lv9)、3:乐进(lv8)、4:夏侯敦(lv6)、5:曹洪(lv6)、6:夏侯渊(lv5)、7:李典(lv4)
        (注:若等级相同时,则保持原来的武将排列顺序,所以曹操排在曹仁之前、夏侯敦排在乐进之前)
    其中按武将顺序排列时的位置,相对于按照等级降序排列时位置后移的武将有:
        曹仁—— 2 -> 3 后移 1 位
        乐进—— 3 -> 5 后移 2 位
        曹洪—— 5 -> 7 后移 2 位
    后移最多的是后移 2 位,有乐进和曹洪2人。但是按照武将顺序排列时,曹洪排在乐进后面,所以记录下曹洪的等级为 6。然后找到低于 lv6 的武将有夏侯渊(lv5)和李典(lv4),取等级最高的是夏侯渊(lv5),即 A = 5。则
   新加入武将等级 = ( 9 + 9 + 8 + 6 + 6 + 5 + 4 ) + 5 / 7 = 52 / 7 = 7.43 = 7

另:若同时有多名武将加入时,则要按照加入的先后次序,逐个分别进行计算,因此可能发生同时加入武将的等级不同的情况,至于加入的先次序,可以参考游戏中的剧情。例如:吕布包围战后加入的3人顺序就应当是 貂蝉、张辽、贾诩。

此外,关羽加入时在上面的计算结果上另外还有 3 级的加成。这算是个特例吧。看来光荣公司确实把关羽作为一个特殊的人物来对待了。

顺便说一句,改来的敌方武将不会参与到等级的计算中。
而计算敌方出场武将等级时是会考虑改来的敌方武将的

http://www.xycq.net/forum/viewth ... horuid=0&page=1


顶部
性别:未知-离线 KYOKO
(★御姐控★)

唐国公
荆南节度使
★★

Rank: 22Rank: 22Rank: 22Rank: 22
柱国(正二品)
组别 节度使
级别 大将军
功绩 1456
帖子 65612
编号 32
注册 2003-8-19
来自 BWL


发表于 2011-5-19 11:46 资料 个人空间 短消息 只看该作者
说实话,好复杂,没完全看懂

以前各位大大在研究的时候,说这计算方法其实是制作者出错了,也就是bug,原意很可能就是1中前15最高等级的人平均
顶部
性别:未知-离线 火凤大好

Rank: 5Rank: 5
组别 校尉
级别 护军
好贴 1
功绩 24
帖子 430
编号 358815
注册 2010-2-3


发表于 2011-5-19 14:45 资料 文集 短消息 只看该作者
简单说就是(最高的15人等级之和+A)/15

A的计算方法是:找到一个进步最多的人(有多人进步一样时选最后一个),然后按照等级排序,排在进步最多的人后面那个人的等级才是A。

所以等级排序和出场排序一样的话,即曹操>夏侯惇>曹仁>。。。,那么没人进步,A就是0,这种时候最能压低新加入武将的等级。这就是为什么曹操17级,其他人3级也能收3级张辽(因为A=0),但曹操3级,夏侯惇最多只能14级,一旦到15级张辽就是4级的了(因为夏侯惇超过了曹操,A=3)。
顶部

正在浏览此帖的会员 - 共 2 人在线




当前时区 GMT+8, 现在时间是 2024-11-20 15:31
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.011537 second(s), 8 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP