首页 > 技术文章 > 潜渊症汉化教程(一般适用)

darthcy 2021-11-24 18:09 原文

简介

潜渊症的mod社区还不是很完善,目前也只能用xml进行mod制作,同时由于读取方式的特殊性,对xml的mod进行汉化也有着一定的方法。

下面我就以我自己的例子来说明如何汉化或广泛一点,为mod提供多语言支持。

文件引入

这里我以Meaningful Upgrades Mod和我自己写的Meaningful Upgrades CN Mod为例。

filelist.xml

打开filelist.xml,你会看到以下内容:

点击查看代码
<?xml version="1.0" encoding="utf-8"?>
<contentpackage name="Meaningful Upgrades" path="Mods/Meaningful Upgrades/filelist.xml" corepackage="false" gameversion="0.15.13.0" steamworkshopid="2183524355" installtime="1636475772">
  <UpgradeModules file="Mods/Meaningful Upgrades/UpgradeModules.xml" />
  <UpgradeModules file="Mods/Meaningful Upgrades/CustomUpgradeModules.xml" />
  <Text file="Mods/Meaningful Upgrades/EnglishMeaningfulUpgrades.xml" />
</contentpackage>

这段xml里的<Text file="Mods/Meaningful Upgrades/EnglishMeaningfulUpgrades.xml" />就是引用语言文件。

EnglishMeaningfulUpgrades.xml

打开EnglishMeaningfulUpgrades.xml,你会看到以下内容:

点击查看代码
<?xml version="1.0" encoding="utf-8"?>
<infotexts language="English" nowhitespace="false" translatedname="English">

<upgradecategory.dischargecoils>Discharge Coils</upgradecategory.dischargecoils>

<upgradecategory.searchlights>Searchlights</upgradecategory.searchlights>

<upgradecategory.cameras>Cameras</upgradecategory.cameras>

<upgradename.sonarmonitorincreaserange>High-gain Sonar Array</upgradename.sonarmonitorincreaserange>
<upgradedescription.sonarmonitorincreaserange>Increase the view range of sonar systems.</upgradedescription.sonarmonitorincreaserange>

<upgradename.sonarmonitormineralscanner>Mineral Scanner Installation</upgradename.sonarmonitormineralscanner>
<upgradedescription.sonarmonitormineralscanner>Retrofitted detection array to provide mining scanner functionality. (Does not affect navigation terminal)</upgradedescription.sonarmonitormineralscanner>

<upgradename.turretdecreasereloadtime>Improved Autoloader</upgradename.turretdecreasereloadtime>
<upgradedescription.turretdecreasereloadtime>Increase the firing speed of turrets.</upgradedescription.turretdecreasereloadtime>

<upgradename.dischargecoilincreaserange>Discharge-Coil Amplifier</upgradename.dischargecoilincreaserange>
<upgradedescription.dischargecoilincreaserange>Increase the range of discharge coils.</upgradedescription.dischargecoilincreaserange>

<upgradename.dischargecoildecreasepowerconsumption>Energy Efficiency</upgradename.dischargecoildecreasepowerconsumption>
<upgradedescription.dischargecoildecreasepowerconsumption>Reduce power consumption.</upgradedescription.dischargecoildecreasepowerconsumption>

<upgradename.decreasenoiseproduction>Noise Reduction Systems</upgradename.decreasenoiseproduction>
<upgradedescription.decreasenoiseproduction>Reduce detectable noise produced by this device.</upgradedescription.decreasenoiseproduction>

<upgradename.searchlightincreaseoffsetonselected>Enhanced Periscopes</upgradename.searchlightincreaseoffsetonselected>
<upgradedescription.searchlightincreaseoffsetonselected>Increase the view range of all searchlights.</upgradedescription.searchlightincreaseoffsetonselected>

<upgradename.searchlightincreaserotationlowskill>Quicker Searchlights</upgradename.searchlightincreaserotationlowskill>
<upgradedescription.searchlightincreaserotationlowskill>Increase the rotation rate of all Searchlights when operated by insufficiently skilled crew.</upgradedescription.searchlightincreaserotationlowskill>

<upgradename.cameraincreaseoffsetonselected>Enhanced Periscopes</upgradename.cameraincreaseoffsetonselected>
<upgradedescription.cameraincreaseoffsetonselected>Increase the view range of all cameras</upgradedescription.cameraincreaseoffsetonselected>

<upgradename.increasecomponenthealth>Equipment Hardening</upgradename.increasecomponenthealth>
<upgradedescription.increasecomponenthealth>Increase ship systems durability against combat damage.</upgradedescription.increasecomponenthealth>

</infotexts>

其中<infotexts language="English" nowhitespace="false" translatedname="English">部分定义了这是英文的翻译文件,而<upgradename.increasecomponenthealth></upgradename.increasecomponenthealth>标签对中即是对increasecomponenthealth的对应英文翻译。

汉化操作

现在我们执行新建操作,新建一个叫Meaningful Upgrades CN的文件夹,再在里面新建filelist.xml和SimplifiedChinese.xml。

filelist.xml

复制Meaningful Upgrades的filelist.xml,对比原mod的<contentpackage></contentpackage>标签,我删除了steamworkshopid="2183524355" installtime="1636475772"部分,这是为了能够在工坊发布新mod。

<Text file="Mods/Meaningful Upgrades CN/SimplifiedChinese.xml" />这部分的引入则修改为了我们当前的汉化xml。

例子如下:

点击查看代码
<?xml version="1.0" encoding="utf-8"?>

<contentpackage name="Meaningful Upgrades CN" path="Mods/Meaningful Upgrades CN/filelist.xml" corepackage="false" gameversion="0.15.13.0"">

 <Text file="Mods/Meaningful Upgrades CN/SimplifiedChinese.xml" />

</contentpackage>

SimplifiedChinese.xml

复制EnglishMeaningfulUpgrades.xml的内容,并修改<infotexts language="English" nowhitespace="false" translatedname="English"><infotexts language="Simplified Chinese" nowhitespace="true" translatedname="中文(简体)">,标注其为简体中文汉化文件。剩下的英文标签对内则填写对应的中文汉化名称。
例子如下:

点击查看代码
<?xml version="1.0" encoding="utf-8"?>

<infotexts language="Simplified Chinese" nowhitespace="true" translatedname="中文(简体)">

<upgradecategory.dischargecoils>放电线圈</upgradecategory.dischargecoils>

<upgradecategory.searchlights>潜望镜</upgradecategory.searchlights>

<upgradecategory.cameras>摄像机</upgradecategory.cameras>

<upgradename.sonarmonitorincreaserange>高增益声纳阵列</upgradename.sonarmonitorincreaserange>

<upgradedescription.sonarmonitorincreaserange>增加声纳系统的视野范围。</upgradedescription.sonarmonitorincreaserange>

<upgradename.sonarmonitormineralscanner>矿物扫描仪安装</upgradename.sonarmonitormineralscanner>

<upgradedescription.sonarmonitormineralscanner>改装检测阵列以提供挖掘扫描仪功能。(不影响导航终端)</upgradedescription.sonarmonitormineralscanner>

<upgradename.turretdecreasereloadtime>改进自动装弹机</upgradename.turretdecreasereloadtime>

<upgradedescription.turretdecreasereloadtime>增加炮塔的射击速度。</upgradedescription.turretdecreasereloadtime>

<upgradename.dischargecoilincraserange>放电线圈放大器</upgradename.dischargecoilincreaserange>

<upgradedescription.dischargecoilincreaserange>增加放电线圈的作用范围。</upgradedescription.dischargecoilincreaserange>

<upgradename.dischargecoildecreasepowerconsumption>能源效率</upgradename.dischargecoildecreasepowerconsumption>

<upgradedescription.dischargecoildecreasepowerconsumption>降低电力功耗。</upgradedescription.dischargecoildecreasepowerconsumption>

<upgradename.dcreasenoiseproduction>降噪系统</upgradename.decreasenoiseproduction>

<upgradedescription.decreasenoiseproduction>减少由该装置产生的可检测噪声。</upgradedescription.decreasenoiseproduction>

<upgradename.searchlightincreaseoffsetonselected>增强探照灯</upgradename.searchlightincreaseoffsetonselected>

<upgradedescription.searchlightincreaseoffsetonselected>增加所有探照灯的视野范围。</upgradedescription.searchlightincreaseoffsetonselected>

<upgradename.searchlightincreaserotationlowskill>灵活探照灯</upgradename.searchlightincreaserotationlowskill>

<upgradedescription.searchlightincreaserotationlowskill>当被技能不足的船员操作时,增加所有探照灯的旋转速度。</upgradedescription.searchlightincreaserotationlowskill>

<upgradename.cameraincreaseoffsetonselected>增强潜望镜</upgradename.cameraincreaseoffsetonselected>

<upgradedescription.cameraincreaseoffsetonselected>增加所有摄像机的视野范围。</upgradedescription.cameraincreaseoffsetonselected>

<upgradename.increasecomponenthealth>设备硬化</upgradename.increasecomponenthealth>

<upgradedescription.increasecomponenthealth>提高潜艇系统的耐久性,防止战斗损伤。</upgradedescription.increasecomponenthealth>

</infotexts>

安装汉化

到这一步,你拥有了CN的mod文件夹以及filelist.xml和SimplifiedChinese.xml两个xml文件,这时你的文件结构应该是这样的:

将CN的mod文件夹放置到Steam\steamapps\common\Barotrauma\Mods,即潜渊症mod文件夹。

启动游戏。在mod列表里同时勾选原mod与汉化mod,进入游戏就能看到已经汉化的内容,那么汉化就成功了。

如果你想上传工坊,那么就点游戏主界面的自定义-创意工坊-发布,找到你的mod,检查完毕后点击右下角的发布项目即可。默认的描述文本是在英文用户界面显示的,稍后可以在创意工坊内对mod进行描述方面的更改。

可能存在的问题

原mod没有提供英文翻译文件

那说明他的物品名称在物品定义xml里就被定义了,这个稍微有点麻烦,后面我会专门开一篇说明。

为什么我的汉化失败了/部分物品没有汉化

如果修改原来的英文翻译,但游戏内的英文名称也没有任何变化,那就说明这个物品的名称在物品定义xml里被写死了,目前的操作无法在外部对其进行翻译,这种情况的翻译后面我会专门开一篇说明。

推荐阅读