SDL中文论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 5967|回复: 2
打印 上一主题 下一主题

[MOD] 游戏编辑器

[复制链接]

149

主题

331

帖子

2445

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2445
跳转到指定楼层
楼主
发表于 2020-11-29 11:33:50 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
运行
  • 下载的是运行包:<kingdom-ins>\editor.exe
  • 下载的是资源包:<kingdom-res>\editor.exe

编辑器主界面


第一次使用编辑时,需要手动设定资源包(制作mod)或运行包(想修改武将资料)所在目录。操作:近左上角的“……”按钮,选择路径


二楼:察看、编辑、增加武将
三楼:xwml目录下bin文件
回复

使用道具 举报

149

主题

331

帖子

2445

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2445
沙发
 楼主| 发表于 2020-11-29 11:37:34 | 只看该作者

察看、编辑、增加武将

一、选择武将数据文件hero.dat
展开左侧树形视图,一直到<War of Kingdom 0.1.8>\xwml\hero.data,双击hero.dat,这时会出现以下界面


二、编辑武将数据
在武将数据显示窗口,对应一条武将记录上按鼠标右键,这时会出现弹出菜单
!!!操作“Delete”时要特别小心,它会改变武将序号,可能会倒致游戏中武将错乱

选择“Edit”,这时会弹出编辑对话框,在此处就可以编辑武将相关数据(不能编辑序号、姓名和列传。序号由编辑器按武将次序生成,poedit编辑姓名和列传,具体怎么编辑见之下的“增加武将”)


三、增加武将
1、右键弹出菜单中选“Add...”会弹出添加武将对话框。

修改好相应数据后(不必管姓名和列传),按右上角“Save and Exit”退出对话框。

2、补充姓名和列传
为什么姓名和列传要分开呢?——在不同语言环境下,这两个参数往往显示是不同的。像姓名,简体中文下是“刘备”,英文下是“Bei Liu”,要补充它们需要借用gettext机制,使用poedit。

(1)编辑武将资料模板文件,<kingdom-src>\po\wesnoth-hero\wesnoth_hero.pot 确保存在“name-215”、“desc215”这两个关键字。
(2)执行poedit,打开<kingdom-src>\po\wesnoth-hero\zh_CN.pot(英文则是en_GB.po,繁体中文是zh_TW.po),“类目”——“从pot文件更新”,选择wesnoth_hero.pot,对name-215和desc215翻译成你希望字符串。
(3)“文件”——“保存”,会生成zh_CN.mo。把这文件改名为wesnoth-hero.mo,替换掉<data>\translations\zh_CN\LC_MESSAGE下的同名文件。

这时再次打开武将资料话框,这时会显示你修改后的姓名和列传。

3、补充武将图像
图像格式:240x240,png。
存放位置:<data>\core\images\hero。
命名规则:<武将图像编号>.png。图像编号可以在武将编辑对话框对中设置,默认时它等于武将序号。如果游戏运行过程中没有发现<武将图像编号>.png这个文件,它会用default.png进行显示。

四、保存修改
一旦数据有过修改,工具条中的第一个按钮“保存”会被使能,一旦按下该按钮,这当中编辑、删除、增加操作所作修改就被保存入文件
回复 支持 反对

使用道具 举报

149

主题

331

帖子

2445

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2445
板凳
 楼主| 发表于 2020-11-29 11:38:42 | 只看该作者

xwml目录下bin文件

制作mod时以WML格式写文本形式cfg文件,在Release时须要把这些文本文件转换成二进制格式的bin文件,编辑器一大功能是实现这个转换过程。转换生成的bin被统一放在xwml目录下。

bin文件分为系统bin文件和战役bin文件
系统bin文件
xwml直接根下的都是系统bin文件
  • data.bin:游戏主配置数据。
  • data2.bin:游戏主配置数据,相比data.bin,它多了一系列[terrain_graphics]块。
  • editor.bin:运行地图编辑器需要的配置数据。
  • mplay.bin:运行多人对战需要的配置数据。
  • gui.bin:显示对话框需要的配置数据。
  • language.bin:语言配置数据。


战役bin文件
xwml/campaigns目录下存的是战役bin文件。一个战役bin文件对应某一个战役。

通过bin文件核对*.cfg书写结果
由于WML语法使用一些特色,像宏,看cfg文件往往不能直观明了其中的块、属性拓扑结构。bin既然由*.cfg转换而来,正好可以用它察看cfg中定义的拓扑结构,核对*.cfg书写结果。
=>
左侧是01_battle_nanjun.cfg,右侧则由该cfg所属的legend_of_bei_liu.bin读出的结构片断。
编辑器显示bin结构时一些规则:
  • 每一块下总是先显示属性,再显示子块。
  • 属性会被按字符串进行排序。子块则是依它在cfg中的出现顺序。
  • bin中显示的已是解析完全了的值。像{DAWN}宏,它其实是个[time]块。

当前版本显示可翻译字符串值时有问题,会出乱码。
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|丽谷软件|libsdl.cn

GMT+8, 2025-5-1 22:40 , Processed in 0.049545 second(s), 22 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表