本篇教程由作者设定未经允许禁止转载。
我看了这位伙计的教程,我的意见是:很可怕。
首先,我极其不推荐去自己修改,去编译jar文件(如果这个jar模组属于你当我没说)。
其次,有了一个汉化文件我更推荐去i18n的官方直接提交你的语言文件,毕竟你都翻译出来了XD。
也可以去将你的语言文件发送到原作者那里请求提交一下,也是可以的。
好吧,在我说了那么多前置后,如果你只是想汉化你自己的整合的话,那就开始吧。
做过1.14+魔改的伙计肯定也知道一个叫做“kubejs”的mod,这个mod功能很强大,它包含了从材质到事件的所有需求。
那么我们这次就来利用一下它的资源覆盖。
我找到了一个没有汉化的mod物品:
这个物品的语言文件位于primutils-1.0.4-hotfix.jar\assets\primutils\lang\en_us.json。
那么根据这个物品的语言位置,在kubejs\assets文件夹下也建立一个同样位置的文件夹,并且将这个文件丢进去:kubejs\assets\primutils\lang\en_us.json。
然后打开kubejs复制出来的这个文件,修改成你需要的语言:
(这里是jei的翻译,翻译时注意一下这个语言键到底是在翻译什么)。
然后刷新一下你的资源包(虽然我更推荐退出重进,因为刷新资源包有时候时候有点小问题)。
接下来,你就能看到你的物品就是中文的了。
那么中文呢?中文也是一样的。
我找到了一个错误的翻译:
这东西在核科学应该是氚单元,因为聚变反应需要氘单元和这个,但是很明显他不应该是“空单元”。
那么我们还是一样的,找到核科学的语言文件:Nuclear_Science-1.16.5-0.4.0-1.jar\assets\nuclearscience\lang\zh_cn.json。
但是,因为核科学有中文文件,所以你必须去找到他的zh_cn.json覆盖掉,不然那没什么作用。
然后根据上一步,创建一个相同的位置,并复制核科学之前的中文翻译进去:kubejs\assets\nuclearscience\lang\zh_cn.json。
找到那个东西的位置,并且修改,然后就完成了,非常的简单。
那你可能会说了:
“这和我手动去jar覆盖有什么区别?”
诶不,这种区别很大,首先你要知道,这种方法他不是靠修改jar覆盖的,这意味着你可以在各种地方发布你的整合包(当然如果不是可以省略)。
其次,这种方法还可以轻松调整模组物品的语言使其更加适合你的整合。
当然,这么做也有缺点:因为是覆盖文件,所以原来的语言文件就不会显示了,比如你覆盖了en_us(英文),并使其变成了中文,那么即便你的mc是英文的它也依旧会翻译成中文!