热血传奇
升级武器
本人46区英雄 风铃中的刀声(3区飞鸿 早期玩家 笨笨熊) 3个小号 分别为 只升武器不PK1 只升级不PK2 只升武器不PK3 进入正题:
下面文章可能会涉及一些基本的计算机原理 但是很简单 大家应该都会看的懂我也是学经济的下面的东西都是我自己实践出来。
]传奇是在C语言下开发的一种程序,我们已经公认 武器升级 喝油 挖矿等都是返回随即数字的,稍微有点计算机常识的人都知道,计算机只能产生伪随即数列, 而在C语言环境下 产生伪随即数列最普遍的方法就是 线形同余法, F[i+1]=(a*F(i)+c) mod m 计算机语言表现为rand函数,这些基本道理不再多说。大家知道,种子一定的话产生的随即数列也是一定的,武器升级会不会这样设置呢,我研究后发现,同样是传奇里的 伪随即数列, 挖矿因子,彩票因子,都是已经给出的,就是说产生的伪随即数列确定的,而喝油 和升武器却没给出种子,可以大胆的猜想,为了增加 升刀和喝油的随即性,随即种子一定会设置为 time函数 ,每隔一定的时间产生一个种子,来增加数列的随即性和不可控制性。后来经过我的实验,证明我的猜想是正确的。传奇服务器启动成功后,第一个升刀的种子就是当前time函数产生种子,这个数据会被保留15分钟(为什么是15分钟而不是10分钟或者20分钟,是我做的大量实验后才确定的,这个实验花费了1 个月时间,碎到2000元宝的刀。喝了500元宝的油),如果15分钟内没人再去第2把刀 ,这个数据将被删除, 第2个取刀的人将会重新调用一次time函数 来做种子。如果15分钟内有人取刀,那么返回的数据就是第一个数据F(X)的下一个数据F(X+1),。
简单来说 升刀系统是每间隔15分钟调用time函数一次,记得15分钟是2把刀之间的时间 ,而不是自然时间15分钟。
在禁止话题中,攻、魔、道3 者返回的数据是 是被统一记录的,(就是说如果现在取的是裁决的话,5分钟后取龙问 仍然采用上次裁决保留下来的数据),盛大做了修改,攻、魔、道3者的数据是被 分开独立记录的,(也就说是如果现在取的是裁决的话,5分钟后取龙问,如果15分钟前没有取加道的刀,这把龙问将不采用5分钟前的裁决数据,而是再次调用一次 time 函数),大家多看下这段话,就会明白我说的意思。
做过传奇禁止话题的朋友都知道