假定一个英文MOD名为:test mod
MOD的路径为
x:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Mods\test mod
路径 test mod\Assets\XML 目录存在,并且有子文件夹和XML文件。
要处理的有两个地方:
test mod\Assets\XML\Art\CIV4ArtDefines_Misc.xml
test mod\Assets\XML\Text\*.xml(目录下的所有XML文件)
Assets\XML\Art\CIV4ArtDefines_Misc.xml
这个文件只要修改一处:搜索 CITY_BILLBOARDS,再把下面的 fScale 由 1.0 改成 -1.0
作为前人,我以经写好程序来处理了,下载:[MOD工具]BTS 3.19 英文版改 3.19 汉化/日文版
运行后,转到“XML”页,你会看到有个框,把test mod\Assets\XML\下的Art文件夹直接拉到框内,放手,程序就会检查是相应的文件是否存在
存在就会列出来,你只面要点“修改”按钮,一下就完成了。
test mod\Assets\XML\Text\*.xml
这里放的都是语言文件,要做的是向他们添加“第6个语言数组”,下面解释为什么这样说。
不用去管程序是如何载入语言XML,语言XML上如何定义叫什么都无所谓,例如:
情况一:
1 2 3 4 5 6 7 8 9 |
<TEXT> <Tag>TXT_KEY_TEST_1</Tag> <English>English</English> <French>French</French> <German>German</German> <Italian>Italian</Italian> <Spanish>Spanish</Spanish> <Chinese>Chinese</Chinese> </TEXT> |
情况二:
1 2 3 4 5 6 7 8 9 |
<TEXT> <Tag>TXT_KEY_TEST_1</Tag> <Italian>Italian</Italian> <English>English</English> <Chinese>Chinese</Chinese> <French>French</French> <Spanish>Spanish</Spanish> <German>German</German> </TEXT> |
当要读取语言显示时,例如要显示“TXT_KEY_TEST_1”数组的第5,情况一输出“Chinese”,情况二输出“German”。
以上的只是作为一种认知,处理时请按照“国际惯例”,为了自己也为了他人,用情况一的定义顺序。
另外,语言是可以自己随意加的,不过汉化包里freesand作了一些特殊处理,自己改下
X:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Assets\Python\Screens\CvOptionsScreen.py
从320行开始,程序猿看几眼就明的了。
下面讲如何处理:
方法一:用XML工具,你自己用惯的,或者用xmlspy,一个个文件手改,保证第5个是Chinese
记得要改XML文件的编码字符集
1 |
<?xml version="1.0" encoding="GB2312"?> |
方法二:下载:[MOD工具]文明4 TEXT XML 文件多功能操作程序
方法一如果文件量小的还不紧要,但要处理几十个文件时,你觉得呢。
第一步:
运行后,转到“其它XML操作”页,把test mod\Assets\XML\下的Text文件夹直接拉到框内,放手,程序就会检查是相应的文件是否存在,存在就会列出来。
第二步:(如下图)
第三步:(如下图)
第四步:
好了,基本完成了,但是还要一个个文件检查一下,因为MOD的作者水平掺差不齐,而且那些英文MOD好多都是左整合右整合。
用XML工具检查一下Chinese是否正确,有些文件突然会有些语言多了出来,用XMLSPY直观地看比较好。
意外和查错:
当改好所有语言XML后,运行游戏载入时,如果出现某个XML读取某行时的提示,自己去检查一下那个文件相应的位置。
如果游戏载入后,切换至你加的那个语言时,什么都空白了,就是没字,那么一定有某个文件某行出问题,数组不齐。
建议你用排除法,先将所有语言XML移走,一次移几个(量自己定)去Text文件内,运行游戏看显不显示字,有的话就关游戏再移一批进去再试,试到不显示字的那批,后面不用再说了吧。
复制和翻译:
程序的“XML对比复制”功能可以从以有的翻译(例如汉化包)内找出当前能用的项目,但也不要太抱期望能有多少,可能什么也没有。
翻译就把Chinese内的东西变成中文,慢慢努力吧。