火花天龙剑 -> 精华区 -> 乱数系统分析(一、基础) BY 曹纲

桂木弥生 2002-11-27 00:11
乱数系统分析(一、基础)
在圣战之系谱中有着各种概率,命中率、回避率、必杀发动等等都会有明确的发动条件和计算公式,可是具体在游戏中是如何判断的呢?比如命中是80%,那么何时命中何时不命中呢?显然并不是随机确定的,因为同一个记录,无论我们重复多少次,同样过程的战斗结果也是一样不变的。事实上,这些都是对照乱数表来进行判断的,而记录的时候会将目前所使用的乱数全部记录下来,因此同样的记录会得到同样的结果。

有人会问,那么乱数表不是越来越长,记录也越来越大了吗?当然事实并不会如此,因为乱数表并不大,只是55个0~99间的数据而已,当用完这些后会自动根据这个表来计算出下一个乱数表。至于判定,则是比较发动率与使用到的乱数的大小,如果发动率≥使用的乱数则发动,反之则不发动,同样的情形也适用于命中、回避等的判定上。只是有一个要注意,这里的00实际上是100,也就是说只有100%才会发动,99%都不行……

先来说一下判断和判定的区别。我们用判断来表示那些直接由程序决定是不是发生的动作,这个并不占用乱数,例如是不是追击;而判定则是将发动率与使用的乱数所比较,此时占用乱数。此外还有一些特殊情况占用乱数却与之无关,并不用于比较,例如命中后的怒,如果满足发动条件,那么会占用一个乱数,却是100%发动的,此时称之为无效判定。

还是让我们先来有个感性的认识吧!举个最简单的例子,我方只有追击特技,敌方无特技,双方均为直接攻击,我方先攻击,无其他必杀条件,那么判定过程是(追击判断)→我方命中判定→敌方命中判定→升级判断(不追击);可追击则是敌方命中判定→我方命中判定→升级判断→依次进行HP、STR、MGC、SKL、SPD、LUK、DEF、MDF成长判定→战斗结束。

其实即使这最简单的战斗仍然有很多要补充之处,例如追击判断后会进行勇者武器判断,而有追加效果的如混乱剑、魔防剑则在命中后进行追加效果发动的判定,如果发动再进行持续时间的判定等等。再如最后的成长判定,即使某些数值已经到顶也会进行判定的。


查看完整版本: [-- 乱数系统分析(一、基础) BY 曹纲 --] [-- top --]


Powered by PHPWind v3.0.1 Code © 2003-05 PHPWind
Gzip enabled

You can contact us