作者oldgump1201 (nimama)
看板Dynasty
标题Re: [问题] Why「最大值+1」而不是「最大值」就好?
时间Mon Feb 10 11:03:55 2014
为什麽他都是「最大值+1」而不是「最大值」就好呢?
1F:推 playerlin:浮动值设定是 min..max-1 程式上理论的max发生率非常低 02/09 22:17
2F:→ playerlin:低到正常几乎不会出现。 所以最大值+1 patch就是直接让 02/09 22:18
3F:→ playerlin:那个Max值出来... 02/09 22:18
4F:→ playerlin:而最大值才是实际正常情况上的最大值~ 02/09 22:19
补充一下
比较以前程式的浮动值(or随机值)写法大抵都是由Random处理
炎龙系列的升级数值应该也是以Random为取得基础
那甚麽是Random?简单说就是电脑会给你一个0~1的值,不含0
可能是0.5656565656565656...下略
也可能是0.7878787878787878...下略
好,那Random如何创造出炎龙的升级数值呢?
举个例子吧
比如说英雄索尔升级了而他升1级的给予力量区间是10~15(举例啦,我没研究)
10,11,12,13,14,15共6个数值随机产生的方式
程式逻辑会写成
10~15
↓
10+(0~
5)
↓
10+[(0~1)*
6取整数]
↓
10+(Random*
6取整数)
因为Random再给予0~1的乱数时出现1.000000000的机率几近不可能
*6之後取整数也达不到6这个数字
所以10~15的随机区间就这样达成了
回到原PO疑问
为什麽炎龙最大值升级档都是最大值+1
应该修改者是把Random直接替代改为整数1
所以索尔10~15的区间就变成16了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.69.56.14
5F:→ eglaibls:喔...原来如此...不过我看青衫是有提供 仅最大值的修改法 02/10 15:02
6F:推 hhtj: 02/10 19:32
7F:推 playerlin:差一点其实就差40...如果不是说非常care这差距的话是还 02/12 19:14
8F:→ playerlin:好。当初所有升级最大值数值都是+1的修改是後来才有纯粹 02/12 19:15
9F:→ playerlin:最大值的改法... 02/12 19:15
10F:推 kirimaru73:这个+1在敏捷的影响会非常非常大 其它普通 02/18 12:56
11F:推 mingly:雷特王子的EV值用MAX+1,最後会超过255而归零重算 08/04 02:43