H3战场地形研究
Yuuyuu
昨天研究了一下h4,算是稍微有了一些了解,特别佩服h4的天才设计,但是在玩h4中发现这样一个现象,h4的战场地形是可以通过S/L改变的。
联想到H3中的战场地形是无法S/L改变,而且在地图生成的同时,就已经决定了每一点的战场的结构。
那么战场地形信息存放在哪呢?
存放在生成的地图文件里?
有可能,但是这样的话,地图文件必须要容纳大量的战场元素信息,不可能文件就这么小了,而且,在对DW地图的几个版本的不同编辑中,我们发现就算在DW里加入(修改)了各种不同的新要素,战场的地图仍然是不会变化的。因此,影响战场布局的因素非常小。
结论:对于地图上某个点的战场地形,只和该点的坐标,以及地貌有关,与其他因素完全无关。
详细解释一下:
1,对于任意一张地图,光复地图也好,死亡地图也好;随机也好,固定也好;L1也好,XL2也好;只要坐标相同,地貌相同,那么两者的战场地图完全相同。
2,双层地图里,地下和地上坐标没有任何区别。但是,所有在地下层发生的战斗,无论你在游戏画面上看到的是什么地貌(比如可能是草地,沼泽等,一般都是地图编辑者手工画上的),一概无效,全是用 “地下(subterranean)”这个地貌战斗。而在地上同样的一点坐标,如果也人为的手工画上“地下(subterranean)”这个地貌,那么战斗画面也是完全相同的。此外,有三个特殊细节地貌,在金矿,废矿和水晶矿战斗无视所在地貌,一律算地下地貌。
3,海战有且仅有两种战场地形,一是打沉船鬼船地形,二是海上交战的甲板地形
用resedit这个工具(就是从系统中分离出全随机模版文件的那个工具,主页我那篇模版揭秘的文章里有提供下载)编辑data目录下的 H3bitmap.lod这个文件,可以看到全部的战场背景cmbk(xxx).pcx和全部的目标层ob(xx)L(No.).pcx,战场背景就是地貌,比如CmBkBch.pcx就是海滩地貌的背景,对应的寻找OBBHL02-OBBHL16全是海滩上可能有的目标障碍层,一共有12种不同的背景地貌:草地,沙地,熔岩地(地狱族),脏土(鬼),岩石地(野蛮),沼泽,雪地,海滩,船,甲板,魔法平原,诅咒地。(其实再细分还有一些,比如草地背景+ 山,草地背景+树,但是和战场地形应该是无关,所以不考虑了)。但是实际上影响战场的只是层,除了船和甲板地貌以外,其他的每一个地貌都只能唯一对应一种层面。一共有7种层面专属:海滩,脏地,草地,熔岩,岩石,雪地,沼泽。比如大家用鬼打多了,就会发现在脏地上经常出现一种地形,有两条分隔岩,把战场地形分成上,中,下三部分(这样的地形打野兵爽啊),这两条分隔岩就是dirt地的专属层,其他地形是绝对不可能出现这种层的。
根据上面一段的分析,再结合前面的结论,可以大胆的猜想,NWC不应该愚蠢到事先把每个战场的地形都固定在系统内,而应该是利用坐标,根据一定的算法,动态生成的(这样最节省内存),这个生成的过程很简单,只是根据不同的地貌背景,有规律的放上对应的层,形成了丰富多彩的战场地形,因此,大胆推断,战场的地形不但是固定的,而且是有规律的,完全可以不用预先查看,利用某种数学计算,就可以算出任意一点 (x,y),对应不同的地貌,一定是什么样的战场地形画面。 没有什么其他好的办法,只能用数学归纳法,先生成一批连续的战场截图,然后寻找他们的规律,我生成了从(0,0)-(0,49)一共50张草地战场地形截图,可惜,也许是数据不够,也许是我比较不擅长于形象分析的感性思维,因此到现在还没找到其中有什么规律(但也不是完全没有希望,就在这50张图里,我也发现已经有完全重复的战场地形了),希望nwc不要让我失望,不会愚蠢到真是无规律的手动指定每一个坐标的战场地形。
暂时放弃这个工作,期待有能力的人可以继续寻找规律,点击 这里 下载我已经做好的50张截图。
这个发现的应用:
1,单机:因为已经明确的知道了会出现什么样的地形,所以以后单机地图的设计者,完全可以在地形上做文章,有一些平常不可能完成的任务(比如力盾无法掩护足够的部队+弹药车),现在可以利用地形来实现了。
2,对战:如果你有两台计算机(不一定要联网),那真是恭喜你了,在对战里,你可以在另外一台机器上,任意随机生成一张地图,然后查看一下你要打的野兵的坐标and地貌,然后对应的看看该坐标对应的战场地形是什么;又或者你可以打了一半,紧急QQ好友,让他帮你生成一张坐标是(41,38)的沙漠战场地形给你发过来,你就对之后要打的硬战(or 决战?)的战场地形了如指掌,相应的应该怎么分兵,也不在话下。 记得当年某人,忘记是阿基还是牛背,惨败在沙漠里的一个地形,当时一怒而发豪语,要背下沙漠里所有坐标点的战场地形。实际这样做当然是没有必要,但现在我们要做,也未尝不可。
在没有找到规律前,我们只知道战场地形由,坐标x(行),y(列)和地貌三者唯一决定,因此可以搞一个战场地形库(三维数组),由大家提供数据来源,在每次作战前可以查询一下是否已经有人提供过该战场地形,如果没有,自己打完该仗,也截个图上传,日积月累,这个库会变的非常全(同时也为研究规律的人提供可分析的数据来源)。 战也,天时,地利,人和。
返回