注册 | 登录

游侠NETSHOW论坛





查看: 7696|回复: 7
打印 上一主题 下一主题

[注意] 关于原版和新版1年12回合系统的区别说明 [复制链接]

欢乐颂军乐手

帖子
7045
精华
4
积分
5184
金钱
13472
荣誉
86
人气
16
评议
0
跳转到指定楼层
楼主
发表于 2009-11-30 20:50:31 |只看该作者 |倒序浏览
关于三国1年12回合新旧两种系统脚本有些不同之处,在此我把原理和特点说明一下,这样大家也好分辨哪种比较好。

A.相同点:
都是1年12回合,1年1个冬天,1年长1岁。

B.不同点:
1.旧版系统包含顾问提示功能,就是每回合给你念古诗或兵法那个设计。而新的系统为了节省空间提高游戏运行速度已经取消了。
2.旧版1年12回合系统数据量达1374K,新版系统只占1K,最新版的也不过才2K。游戏引型每回合要扫描系统脚本的数据以进行即时的变化,因此脚本数据多少会影响系统扫描的时间也就是电脑思考的时间。
3.旧版系统时间很准时,新版系统重进游戏时的读档会影响时间精确度,具体由下面的原理进行解释。

~~~~~~~~~~回~~~合~~~原~~~理~~~分~~~析~~~~~~~~~~
A.旧版回合系统的原理:
通过锁定每1回合的季节设定来达到1年12回合的变化效果,一共设计了2483回合的数据,因此数据量庞大,且超过2483回合后就恢复1年2回合的原版罗马设计。

B.新版回合系统的原理:
通过内存逻辑计算每12回合刷1个冬天,时间不限。所以如果你动不动几回合就重新游戏的话就会造成时间停滞不前....不过一般谁会那么无聊整天退出游戏呢?如果你是游戏中读档那不要紧,回合仍然会继续计算。(当然注意别读取时间差别太远的存档,否则会造成12回合以内的时间差)因为回合计算是在内存中进行的,游戏中读档并不能影响内存运行。除非完全退出游,内存结束回合才归0,也就是说当你下次进入游戏时才重新计算。当然这种设计如果用去其它那些没特殊人物的MOD就不是什么问题了,因为谁会在乎差1~2岁的关系呢,而且其它MOD一般喜欢用1年4回合,回合越少偏差越小。

C.最新的三国专用回合系统原理:
考虑到三国有很多未成年武将的设计,如果采用上述新版回合系统时,在反复读挡的过程中难免出现时间差,造成将领不能准时成年的问题。因此我对新系统进行的再优化。最新的系统采用半锁定半计算的运行方式,解决了时间差的问题。因为未成年将领设置最小的为1岁,因此我设计了前15年的锁定周期,也就是说在最小的未成年将领成年以前时间都不会受读档的影响啦!15年后才自动转成逻辑计算,反正后面出生的人都是虚构人物,所以大家没必要太计较年龄了呵呵。这样既保证了不影响原版设定又节省了大量游戏资源。

D.关于新系统的误差多少:
大家可能比较关心这个,按理说误差一般是使时间延误了。比如你要玩12回合才长1岁,可是你11回合就退出游戏了,等到下次再玩时要重新计算,所以你等于是多玩了11回合人却没长大。

[ 本帖最后由 jyh4nt 于 2009-12-3 11:00 编辑 ]
已有 1 人评分金钱 收起 理由
笨得像豬 + 30 + 1 原创内容,值得鼓励!

总评分: 金钱 + 30  + 1   查看全部评分

使用道具 举报

帖子
408
精华
0
积分
214
金钱
1071
荣誉
1
人气
1
评议
0
沙发
发表于 2009-11-30 21:30:08 |只看该作者
不懂,学习学习

使用道具 举报

欢乐颂军乐手

帖子
7045
精华
4
积分
5184
金钱
13472
荣誉
86
人气
16
评议
0
板凳
发表于 2009-11-30 22:37:13 |只看该作者
关于大家对新系统里刷季节太明显,我新列关于季节脚本的深入说明。

[ 本帖最后由 jyh4nt 于 2009-11-30 22:38 编辑 ]

使用道具 举报

东罗马帝国雅典男爵

帖子
780
精华
0
积分
610
金钱
3398
荣誉
22
人气
0
评议
0
地板
发表于 2009-12-2 08:42:28 |只看该作者
顶一下,jyh4nt 真是造福大众啊  
MU已死,有事烧纸
可爱无罪!YY有理!萌即是正义!!!

使用道具 举报

帖子
123
精华
0
积分
62
金钱
644
荣誉
0
人气
0
评议
0
5#
发表于 2009-12-3 07:25:03 |只看该作者
  看了一下有点不明白,你这个循环是
set_counter dates 0
        monitor_event FactionTurnStart FactionIsLocal
        console_command season summer
        inc_counter dates 1
                if I_CompareCounter dates = 4
        console_command season winter
        set_counter dates 0
        end_if
        end_monitor
就是说4回合过后清零,重新开始算。是不是说要连续玩4回合(一整年)不退出游戏才不会出现时间差?

可我玩三国 或者罗马基本上每打一回合就推出一两次 ~~我总是边打边调整兵种文件 或者 新建武将卫队
一退出时间又从头算了?[汗水]   前15年的锁定周期就是用的和原版一样的方法?

使用道具 举报

帖子
196
精华
0
积分
98
金钱
1494
荣誉
0
人气
0
评议
0
6#
发表于 2009-12-3 09:58:57 |只看该作者
说的真具体啊,,受用啊!!!!!!!!!
问鼎天下
        
豪气一生忠胆义,
誓闯天下步康庄。
胸中打铁精钢铸,
犹有雄心壮志踌。

自创诗一首于武汉

使用道具 举报

帖子
884
精华
0
积分
452
金钱
638
荣誉
1
人气
0
评议
0
7#
发表于 2009-12-3 10:20:20 |只看该作者
误差大得可怕,
玩了11个月年龄没有长。。。。。。。。。。。。。。。
坚决发表自己的意见,坚定自己的立场,绝不向小白妥协!
全身心支持伟大的游侠论坛!!游侠万岁!!!

使用道具 举报

欢乐颂军乐手

帖子
7045
精华
4
积分
5184
金钱
13472
荣誉
86
人气
16
评议
0
8#
发表于 2009-12-3 11:03:09 |只看该作者
原帖由 maxgug 于 2009-12-3 10:20 发表
误差大得可怕,
玩了11个月年龄没有长。。。。。。。。。。。。。。。

注意是重进游戏的读档才会有误差,你在游戏里的读档不影响。如果你不是游戏有毛病整天跳出的话,每次游戏不可能才玩11回合吧!比如你每天玩1次,每次碰巧都是在11回合时退出游戏,玩了10天也就误差10年。而且时间延迟对大家来说是好事,活得久点不是更好么呵呵。

如果是中2的话,魔戒里老外设计的那种1年4回系统也一样会误差。误差大小跟我这个一样,都是跟回合多少有关。反正只要是节省数据的回合系统就无法避免误差问题。

[ 本帖最后由 jyh4nt 于 2009-12-3 11:11 编辑 ]

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

手机版|Archiver|游侠NETSHOW论坛 ( 苏ICP备2023007791号 )

GMT+8, 2025-8-26 07:43 , Processed in 0.388767 second(s), 13 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

分享到