游民星空 > 攻略秘籍 > 攻略 > 正文

文明5:美丽新世界 地图生成关联指南

2014-08-22 11:14:22 来源:文明5吧 作者:石鬼面 编辑:异邦人 我要投稿

  看了一下代码,关于地图关联,大致是这样的:

  首先

  xml中设定了部分文明的地图关联,在地图生成时,会优先满足该文明的地图倾向。

地图关联有这些:

  英国沿海,

  奥斯曼沿海,

  西班牙沿海,

  玻璃沿海,

  丹麦沿海,

  阿拉伯荒漠,

  阿兹特克丛林,

  印度草原,

  易洛魁森林,

  俄罗斯苔原,

  蒙古平原(没错,是平原),

  印加丘陵。

  应该注意到:沿海之外的其他地貌关联且只关联唯一文明。

地图逆关联有:

  埃及无丛林和森林,暹罗无森林,桑海无苔原。可以注意到有逆关联的都没有地图关联。

  其次

  每种地图,都有自己的生成规则,生成规则中会有一个专属该地图的“默认”地貌倾向,比如沙尘暴的倾向就是沙漠,盘古地图应该是无类型,岛图是沿海。

  然后,程序会把地图分割成很多区块,计算每个区块的地貌比例,然后根据规则归类为“草原类”“苔原类”“混杂类”等等(比如苔原+雪原占区块面积30%以上就定义为苔原区块)。

  之后计算区块产出,并按照一定规则进行修正。比如荒漠地块粮食过少,而且地块内没有河流,那么就吧荒漠换成丛林,苔原地块粮食少就加鹿等等。从而保证每一个区块的产出都不会过少或者过多。

  与文明的优先倾向对比。如果满足,就把相应文明放在那,然后计算下一个文明的位置。

  其中,地图关联判定优先级为:沿海>沿河(目前无文明关联)>其他关联>逆关联>地图默认

  如果没有区块满足地图关联,比如砍2爷遇到整块地图都没有“丛林区块”的情况,那么就把他放到有相应地貌的区块,也就是说放到有那么一两个丛林的区块中。

  如果有相应地貌的地方无法设定初始位置,比如说离其他文明过近或者压根没有区块满足以上条件,或者文明本身就没有特定倾向,那么就把该文明强制归类为地图的“默认”类型进行分配。比如高海平面的岛图,全部都是小岛,不满足任何一种沿海之外的地貌标准(其他类型都要求陆地面积要达到一定数量),所以所有文明在高海平面的岛图中都是“沿海”属性。

  如果默认类型都没地方放了,那么就在主大陆临近的海里,生成一个1格大小的草原地貌,把该文明放上去。(前阵子那个I大打的孤岛衰图估计就这么形成的。。。)

  大致看过地图生成算法之后,大家可以猜测一下为什么沿海之外的每种地貌,只关联了一种文明。

  总而言之,地图关联就xml里列的那么几个,不用猜测了。但是要说两点,一个是在个别地图上,地图关联常常不满足条件,因而失效。另外一个是由于地图生成算法问题,不同的地形关联几率是不同的,有的地貌容易出现,就容易关联,有的地貌不容易出现,无关联的情况就比较多。

游民星空APP
随手浏览游戏攻略
code
    没有任何记录
    没有任何记录
单机游戏下载
休闲娱乐
综合热点资讯
游民星空联运游戏