[技术文章] 传奇版本地图Objects.wil与map文件的关系

[复制链接]
查看4734 | 回复0 | 2020-5-15 00:50:10 | 显示全部楼层 |阅读模式
  传奇服务端版本想添加幽灵船地图,map文件分别放入了服务端和客户端,并且把小地图、地图的属性和刷怪都设置好了,但是还有个Objects.wil文件,这个文件既不能覆盖客户端的文件,也不能随便导入到客户端里的同一名称文件,要怎么加入幽灵船地图的地砖图片,使得不影响其他地图文件。

  先说明 地砖是地砖,标准素材是标准素材,连这基础都不知道还回答的,全部是小白,Tiles.wil 和 Objects.wil 是完全不同性质的,

  当然幽灵船地图我没看过,不知道会不会利用到Tiles.wil里面的地砖,但说真的,现在的技术好象对地砖来做图没什么兴趣,人人都是喜欢找张大图,然后切片,导入,拼装

  这就是为什么现在都喜欢用地图Objects的原因,而且会导致有的时候人物半透明现象,甚至全透明,图切大了,懒惰人的做法,,
  你只要确定新地图只有利用了OBJ的话 那其实很简单了,,导出数据,再导入新的OBJ里,然后拿地图编辑器去自己贴图,,,别忘了做封边,,,这个办法相对简单,但往往太累,

  我之前做过一张4000多*2000多的图,切了几千张小图自己拼,,花了我半天时间,蛋疼得很,

  其实还有其他方法的,,拼地图的方法应该都那样,都会小图拼成大的标准数据吧,,就利用这个标准数据的代码,,,找下有幽灵船的客户端,,,找到里面的*.set文件,一般地图编辑器自动读取的是mir2.set ,先用地图编辑器打开 确定有标准数据的时候(这里用之前有幽灵船的OBJ) 确定有的话,记事本打开mir2.set 这里就出现一个dingwei问题了。

  这就必须要靠计算了,,,我这边因为所有工具都是自己写的,所以我的地图编辑器一点标准数据,序列就出来了,,但一般的地图编辑器没这功能 只有靠自己去算,,
  算法也简单,一个OBJ是65535(这个数值不陌生吧)所以你先用资源编辑器去打开那个OBJ
  找到一张幽灵船的图,,假设是2505.,那么OBJ数值是多少呢? 假设是OBJ13吧
  那么65535*13+2505 那数值就是854460

  然后你就用记事本搜索功能 搜索854460 找到地方后,往上拖 找到一个带数值的大括号
  比如 [2500] 这样的,然后把整段代码复制下来,,,这里其实已经包括封边了 ,其他代码是什么意思你有兴趣可以去分析的 ,,一直复制到 [2501]前面 ,,数值都是打比方的,你到时候自己判断就行,

  这代码复制出来是有用的,,,然后你可以把所有素材导入到自己新编辑的OBJ里,,比如是OBJ14 假设你自己的 MIR2.SET里有3000个标准数据
  那么你打开自己的SET文件,添加一个 [3001]把刚才的代码全部复制过来(当然[2500]就不用了,到你这就是3001了) 接下来就是改具体的图的数值了,因为从OBJ13转到了OBJ14 图就要重新计算下,然后针对每张图来修改,,再次假设下 你现在是从 OBJ14 的第100张开始的,

  那么之前的 854460 图的数值要改成 14*65535+100 所有带有数值的都重新对应修改一次就好了,

  这样一来所有的标准数据,带封边的 都全部抄袭过来了,再次打开地图编辑器,去贴下图,就搞定了,,,这部分地图的标准数据就看地图大小 ,作者做了几个标准数据了,,

  有几个你就要复制几个过来,,,以后要任何的其他标准数据 全部可以用这方法搞定的

回复

使用道具 举报

本版积分规则