- UID
- 11419
- 帖子
- 2378
- 精华
- 3
- 威望
- 12
- 阅读权限
- 100
- 性别
- 男
- 注册时间
- 1970-1-1
|
156#
发表于 2005-7-1 00:17
| 只看该作者
芊芊,2005-07-01, 00:08:33
[QUOTE]rufus,2005-06-30, 23:42:38
[({35+BaseLv×5+1.1×(100 + Vit)/100]×1.25 + 装备补正)×卡片效果]
这公式不对啊,括号对不齐,我把括号全部按我理解解释了,装备补正去掉
Floor((35+99*5+1.1*(100+RVit)/100)*1.25*(1+卡片/100))
这个明显不对
Vit效果忒差了 一下找不到相关的计算了,把模拟器里的计算公式套上参数给你吧
maxhp = Math.floor(blv * 5) + 35;
for (i = 2; i <= blv; i++) maxhp += Math.round(110 * i / 100);
maxhp = Math.floor(Math.floor(maxhp * 1.25 * (100 + vit) / 100 + bonusdata[7]) * (100 + bonusdata[9]) / 100); [/QUOTE]
嘿,刚看完,晚了5分钟发帖
翻译成类Basic的吧,看的懂得人大概多点(VB里面大概没有Floor,是Int?太久不用了)
MaxHP = Floor(BaseLv*5)+35
For i=2 to BaseLv
MaxHP = MaxHP+Round(110*i/100)
Next i
MaxHP = Floor( Floor( MaxHP*1.25*(100+Vit)/100 + 卡片量增加HP ) * (100+卡片百分比增加HP) /100 )
一个自2到BaseLv的累加是必须的,而且因为Round的存在,用等差数列求和做肯定会有误差
还是有问题,不太对
经验公式算了,十字刺客血量
MaxHP=Floor( Floor(5979*1.25*(100+Vit)/100 + 卡片量增加HP ) * (100+卡片百分比增加HP) /100 )
5979是模拟器反凑出来的 |
|