标题: 英杰传士气的随机数问题:初始值取决于系统时间
性别:未知-离线 likelove

Rank: 2Rank: 2
组别 百姓
级别 破贼校尉
功绩 1
帖子 57
编号 56074
注册 2005-12-27


发表于 2005-12-27 18:38 资料 短消息 看全部作者
以前在win下面跟踪过软件(不过没跟过游戏),这个dos下的实在是没法跟,sice一启动,系统就不出来(Win95的机器,没有纯DOS)   GB可以跟到数值地址,但没有反汇编,没办法,暂时用静态反了。。谁能给个gametools啊  

这个随机没办法预测。  
攻略里有提到士气低到30以下时,有60%的机率混乱。通过跟踪士气,找到了这个地方,确实如此。里面用到2个word的随机数,并且每次计算时,这个随机数都会被更新,算法大概是* +的结合,不很复杂,但难预测。用到的初始种子是根据系统时间的年月日时分秒算来得。没办法。混不混乱纯靠运气了。

傻瓜的算法应该离得不远,这两天看看。。


顶部
性别:未知-离线 likelove

Rank: 2Rank: 2
组别 百姓
级别 破贼校尉
功绩 1
帖子 57
编号 56074
注册 2005-12-27


发表于 2005-12-28 09:08 资料 短消息 看全部作者
昨天晚上看了看,取随机数的过程被多次调用,不仅仅是士气的问题,可能下雨,反击等都信赖于此。
改时间不如直接改程序,随机种子的初始化只有一处,把那里初始成固定值即可,如果需要我可以贴出改法。初始值固定下来,猜想后面唯一能影响到随机变化的因素就是行动顺序和走位造成的链锁反应(现在不清楚是否有如每次存盘时间之类的因素)

另外,对于老大作出的反击、天气补丁我有不同看法,因为按程序的随机数生成来看,你很难能确定让它生成一个固定的随机序列(比如一直反击或一直下雨)或许满足固定的序列的随机数并不存在,补丁的修改可能影响到游戏的实质性问题,而不仅仅是S、L的替代。

龙老大把其它的差不多研究透了,接下来重点应该放在随机问题和NPC行动策略上面了(他们要是掉宝物就好玩了  ) 我现在只苦于没有一个合适的跟踪软件,没有纯DOS   只依靠静态分析太难了


顶部

正在浏览此帖的会员 - 共 1 人在线




当前时区 GMT+8, 现在时间是 2025-7-18 00:35
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.010136 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP