Project1

标题: 请问如何把自己做的地图保存下来,分享给别人 [打印本页]

作者: 精灵是个球    时间: 2017-6-20 21:11
标题: 请问如何把自己做的地图保存下来,分享给别人
我们两个人做游戏,他负责画地图,我负责其他的,但是 MV好像没有单独导出地图的功能,每次只能他传来地图素材,我根据他画的地图又重新画一次,这样特别浪费时间。
作者: 鑫晴    时间: 2017-6-20 21:27
本帖最后由 鑫晴 于 2017-6-20 21:29 编辑

把data文件夹里面有关Map的json文件发给队友

Project1\data\Map001.json
Project1\data\Map***.json

Project1\data\MapInfos.json


作者: 精灵是个球    时间: 2017-6-20 21:29
本帖最后由 精灵是个球 于 2017-6-20 21:30 编辑
鑫晴 发表于 2017-6-20 21:27
Project1\data\Map001.json
Project1\data\Map***.json


但是这样导出MAP00几那些文件会 覆盖其他人原本的地图,比如我已经做好了MAP001的地图事件也写好了,再导入他传来的MAP00几文件 我原本的地图 就被覆盖了,事件也没了,有没有办法像载入官方范例地图那样不影响原本地图的情况 导入其他人的地图呢?
作者: 鑫晴    时间: 2017-6-20 21:58
本帖最后由 鑫晴 于 2017-6-20 22:19 编辑
精灵是个球 发表于 2017-6-20 21:29
但是这样导出MAP00几那些文件会 覆盖其他人原本的地图,比如我已经做好了MAP001的地图事件也写好了,再导 ...



也不是完全覆盖,你可以用文本编辑器打开.json文件,然后替换相关的行


举个例子

现在有两个工程   Project1     我的游戏  

  Project1   是画师的工程,用来画地图
  我的游戏   是游戏的主工程


两边现在都有新建了一个相同大小的地图。

  Project1   地图画好了,没有事件
  我的游戏    地图是随便画的,但是里面写了事件


然后让画师把  Map001.json 和  MapInfos.json 都发给了你




打开    Project1     的 Map001.json,发现里面是这样的

  1. {
  2. "autoplayBgm"
  3. "data":[2624,2624,2624,2624,2624,2624,2624,2624,2624,2624,2624,2624,2624,2624...]
  4. "events":
  5. }
复制代码


第二行的"data"是储存地图信息的,选中整行复制它。(请关闭自动换行)


然后打开   我的游戏    的  Map001.json, 发现里面是这样的

  1. {
  2. "autoplayBgm"
  3. "data":
  4. "events":
  5. [null,
  6. {"id":1,"name":"EV001","}
  7. {"id":2,"name":"EV002",}
  8. {"id":3,"name":"EV003",}
  9. ]
复制代码

"events": 是储存你的事件



把刚刚   Project1    的"data"一行覆盖    我的游戏    的"data" 一行


保存后,重新打开工程即可

注意,覆盖前记得备份

注意,覆盖前记得备份

注意,覆盖前记得备份

注意,覆盖前记得备份

注意,覆盖前记得备份




作者: 精灵是个球    时间: 2017-6-20 22:16
鑫晴 发表于 2017-6-20 21:58
也不是完全覆盖,你可以用文本编辑器打开.json文件,然后替换相关的行

十分详细的解答,非常感谢版主大人,
作者: 精灵是个球    时间: 2017-6-21 01:03
鑫晴 发表于 2017-6-20 21:58
也不是完全覆盖,你可以用文本编辑器打开.json文件,然后替换相关的行

试过了 打开项目提示无法打开 MapInfos
这个是画师的地图
[
null,
{"id":1,"expanded":true,"name":"测试170620","order":1,"parentId":0,"scrollX":817,"scrollY":460},
{"id":2,"expanded":false,"name":"研究室","order":2,"parentId":1,"scrollX":809,"scrollY":460}
]


我复制后
null,
{"id":1,"expanded":false,"name":"开场","order":1,"parentId":0,"scrollX":1078.6666666666667,"scrollY":878.6666666666666},
{"id":2,"expanded":false,"name":"序章","order":2,"parentId":0,"scrollX":1089.3333333333333,"scrollY":612},
{"id":3,"expanded":true,"name":"小镇","order":3,"parentId":0,"scrollX":811,"scrollY":732},
{"id":4,"expanded":false,"name":"军事设施","order":5,"parentId":5,"scrollX":1082,"scrollY":1142},
{"id":5,"expanded":true,"name":"小镇","order":4,"parentId":0,"scrollX":811,"scrollY":760},
{"id":6,"expanded":false,"name":"MAP006","order":6,"parentId":5,"scrollX":832,"scrollY":640}
{"id":7,"expanded":true,"name":"测试170620","order":1,"parentId":0,"scrollX":817,"scrollY":460},
{"id":8,"expanded":false,"name":"研究室","order":2,"parentId":1,"scrollX":809,"scrollY":460}
作者: ekmomo    时间: 2017-6-23 19:54
本帖最后由 ekmomo 于 2017-6-23 20:14 编辑

不用这么麻烦吧,他直接把工程传过来你在MV里Ctrl+C Ctrl+V不就好了。
作者: 精灵是个球    时间: 2017-6-23 22:30
ekmomo 发表于 2017-6-23 19:54
不用这么麻烦吧,他直接把工程传过来你在MV里Ctrl+C Ctrl+V不就好了。

恩.....的确第二天我就发现这个办法了 之前感觉自己好蠢{:2_248:}




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1