• 573阅读
  • 10回复

[公示]经验值计算的详细流程和K82时需要注意的问题 [复制链接]

上一主题 下一主题
离线li68088
 
发帖
559
金钱
394
91币
0
信誉
0
资产
0 IST
在线时间
181 小时
注册时间
2008-03-28
最后登录
2011-06-29
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-03-24 13:38:41
经验值计算流程

第一步:计算怪物基础exp1;

第二步:引入游戏人数的影响—
Exp2=基础exp1+基础exp1*(游戏内人数-1)/2;              (1个怪物第1次出现在玩家视野时就决定了它的经验,根据当时的ROOM人数,已经被看见后,ROOM人数再变化也不影响这个怪物的经验)

第三步:引入结盟因素——

exp bonus=Exp2 * [1+89/256 * (同一区域内在Exp分配范围内结盟玩家数 - 1)];
注意:这里blizzard公布的恒定35%的partybonus是错误的,准确的说应该是每多一个玩家就多89/256≈35%;

第四步:分享exp—

Exp3=Exp bonus*CLVL/(同一区域内在Exp分配范围内所有玩家CLVL之和)

第五步:个人exp获得—

Exp=Exp3+Exp3*(神殿50%+%exp物品提供)/100

第六步:Exp惩罚
1。惩罚第1步:等级差惩罚
若CLVL<25          CLVL——人物等级    MLVL——怪物等级
CLVL-MLVL   exp%
 0-5      100
 6       81
 7       62
 8       43
 9       24
10或10以上   5

MLVL-CLVL   exp%
 0-5      100
 6       88
7         68
 8       36
 9       15
10或10以上   2

若CLVL>=25
CLVL-MLVL   exp%
 0-5      100
 6       81
 7       62
 8       43
 9       24
10或10以上   5

MLVL-CLVL   exp%
0-99            (CLVL/MLVL)

2,惩罚第2步:等级惩罚  (高等级惩罚 )
Exp在经过等级差惩罚后,再根据人物相应的Level乘上对应的ExpRatio,进行级别惩罚。70级以上才开始受惩罚。

Level   ExpRatio(单位 1/1024 )
70    976
71    928
72    880
73    832
74    784
75    736
76    688
77    640
78    592
79    544
80    496
81    448
82    400
83    352
84    304
85    256
86    192
87    144
88    108
89    81
90    61
91    46
92    35
93    26
94    20
95    15
96    11
97    8
98    6
99    5

注意:Exp分配范围为在怪物死亡地点2个屏幕以内.

相关的FAQ:
当两个中立玩家攻击同一个怪物的时候会如何?
  发出杀死怪物的那一次攻击的玩家将获得经验值

在噩梦或地狱难度中死亡时经验的减少
  在噩梦或地狱难度中,你每次死亡都会失去经验值,但不论如何你的级别都不会降低。你推动的经验值将是你由当前级别到下一级别升级所需的经验的5%(噩梦难度)或10%(地狱难度)。例如,如果你在经验值为1,000,000时达到了N级,达到N+1级时需要的经验值为2,000,000,那么你死亡时减少的经验值将为 (2,000,000 - 1,000,000)的5% 或10%。
捡回尸体时会恢复一定量的经验
  在噩梦或地狱难度中,当你死亡的时候会失去一些金币及你的尸体;在D2X的游戏里,如果你在事发当地捡回你的尸体,你会恢复所失去经验的75%(1.09中为50%--虫子注)。如果你选择了“存储并离开游戏”,你将无法取回所失去的经验。

杀死被其他怪物复活的怪物会获得经验值吗?
  不,你只有在第一次杀死一个怪物的时候才能得到经验值。

佣兵和召唤兽会偷取你的经验值吗?
  不,使用佣兵并不会减少你的经验值。事实上,由于佣兵杀死的怪物的经验值计入你的经验值,你的经验值会有所增加。

Nec的技能CE(尸暴)会影响以上Exp分配吗?
  不,CE和其他杀死怪物的方法和技能没有区别

其实我选择转这帖,更重要的原因是下面这个内容,它可以解释冲99的CHAR在K82获取经验时分82的人数1多经验就锐减。

关于exp 封顶情况的解释      by  Ruvanal

在d2的各种数据计算中,对单个数据会有不同的上限。
一般来说是4294967295(或者十六进制的FFFF FFFF)和2147483647(或者是十六进制的7FFF FFFF)。
任何游戏计算中的中间数据都不能突破这种上限。
Peter Hu(应该是游戏开发人员)在代码中增加了大量的检测函数以确保数据在超过最大上限的时候停留在最大值而不是造成溢出。


由此我们来看看kb的情况:
hell baal exp1=4536276
8pp game下,exp2=4536276*(1+7/2)= 20413242
考虑最多的exp bonus情况,exp3= 20413242*(1+89/256*7)=70090780
还是远远小于2147483647,怎么解释在kb时出现的exp封顶呢?

这是因为在游戏中,由于在十六进制表达下,除法的计算与乘法相比要消耗很多的时间。
所以系统通常优先执行乘法运算,然后将部分除法的除数相乘后再做一次总的除法,从而减少游戏计算的时间。
只有一种情况例外,即除数是2的若干次方的情况下。此时在十六进制意义下相除只是简单的右移。


回头再来看游戏对于kb exp的计算。
monstats.txt
hell difficulty Baal, Exp(H)=6460
monlevel.txt
L-XP(H) for a level 99=70221
所以hell baal exp1=6460*70221%=4536276

但是再考虑到上面所说的情况,真实的计算过程应该是
6460*70221=453627660,而除以100的计算被推后。
如果在exp计算中起作用的上限是7FFF FFFF(2147483647)的话,是可以在3-4 pp game中达到的。
因为在exp计算中,真正的上限和乘除法的计算序列是未知的,所以无法准确的得出不同情况下kb的exp封顶人数。

估计是,分82的人过多后(据说2人为宜),由于计算中达到了数字上限,1部分人数增加造成的提升经验的效果失效,但是分配时却照样分给那么多人,所以人数1多经验就锐减。
离线killennon
发帖
3830
金钱
541
91币
0
信誉
0
资产
0 IST
在线时间
2297 小时
注册时间
2008-08-28
最后登录
2012-06-15
只看该作者 沙发  发表于: 2009-03-24 13:46:26
不错 沙发
离线青藤蔓舞
发帖
*
金钱
*
91币
*
信誉
0
资产
0 IST
在线时间
小时
注册时间
*
最后登录
*
只看该作者 板凳  发表于: 2009-03-24 13:46:50
学习中
离线pato
发帖
986
金钱
-38
91币
0
信誉
0
资产
0 IST
在线时间
953 小时
注册时间
2007-10-31
最后登录
2021-07-27
只看该作者 3楼 发表于: 2009-03-24 13:58:26
刚在impk上研究过,哈哈
离线bamboo77777
< BT战队 >
发帖
4937
金钱
253456
91币
90
信誉
0
资产
26.25 IST
在线时间
2117 小时
注册时间
2009-02-20
最后登录
2024-11-23
只看该作者 4楼 发表于: 2009-03-24 13:59:29
太多了。看的我头晕。
离线fyr777
发帖
17
金钱
0
91币
0
信誉
0
资产
0 IST
在线时间
9 小时
注册时间
2009-02-13
最后登录
2009-04-03
只看该作者 5楼 发表于: 2009-03-24 14:15:00
学习中
发帖
99
金钱
100
91币
0
信誉
0
资产
0 IST
在线时间
80 小时
注册时间
2009-03-18
最后登录
2009-08-17
只看该作者 6楼 发表于: 2009-03-24 14:24:10
转帖请说明原出处 谢谢
离线hesky80
发帖
637
金钱
503
91币
0
信誉
0
资产
0 IST
在线时间
246 小时
注册时间
2008-05-28
最后登录
2016-02-16
只看该作者 7楼 发表于: 2009-03-24 14:26:59
反正我3开自己一人混KB 的经验就比8PP 下混KB经验少几万~~
离线chendy1985
发帖
1366
金钱
377
91币
0
信誉
0
资产
0 IST
在线时间
368 小时
注册时间
2009-01-05
最后登录
2012-02-14
只看该作者 8楼 发表于: 2009-03-24 14:41:45
看不懂........
离线li68088
发帖
559
金钱
394
91币
0
信誉
0
资产
0 IST
在线时间
181 小时
注册时间
2008-03-28
最后登录
2011-06-29
只看该作者 9楼 发表于: 2009-04-01 13:34:15
转 玉林
快速回复
限100 字节
 
上一个 下一个