Kenshi
Not enough ratings
如何進行中文翻譯
By [TW] chuanhsing
這是一篇將 Kenshi 的文件翻譯成中文的指南
   
Award
Favorite
Favorited
Unfavorite
感謝與參考資料
首先要感謝 AquariusBlack 的協助和討論,AquariusBlack 更是提供了簡體中文已經翻譯好的檔案作為參照。
https://gtm.you1.cn/sharedfiles/filedetails/?id=908585123

參考

pot 更新庫
翻譯前,先清除相關的檔案,避免 pot 合併錯誤,包括
  • __translations/
  • locale/zh_TW/

開啟遊戲,進入編輯模式(Launch Game Editor)
  • 到 Translation mode 區塊,勾選 Enable,選擇 New Translation,選擇繁體中文,點擊 DONE
  • 這時候會進入 FCS,點擊選單的 Translations,勾選 Export dialogue,點擊 Export

這時候檔案就會產生在 __translations/zh_TW/ 底下,包括
  • gamedata.pot
  • dialogue/ - 包括近千個 pot 檔案

這時候再把遊戲目錄的 locale/en_GB/LC_MESSAGES/main.pot 也拷貝出來
  • locale/en_GB/LC_MESSAGES/main.pot

這樣子更新翻譯所需要的檔案就已經完成了
  • __translations/zh_TW/gamedata.pot
  • __translations/zh_TW/dialogue/ - 包括近千個 pot 檔案
  • locale/en_GB/LC_MESSAGES/main.pot
po 翻譯庫
如果是完全沒翻譯過的檔案,可以直接把 .pot 改成 .po,如果是有翻譯的,就需要合併
  • msgmerge -U old.po new.pot
new.pot 是從 __translation/ 裡面新產生的檔案, old.po 是翻譯好的,這時要把 new.pot 新增的翻譯項目合併,產生為 new.po 後,再覆蓋回 old.po

因為合併需要對所有的 pot+po,所以建議使用程序來更新

翻譯完成後
  • gamedata.po
  • dialogue/ - 包括近千個 po 檔案
  • LC_MESSAGES/main.po

接下來需要 Forgotten Construction Set(FCS) 來把檔案匯入,將
  • gamedata.po
  • dialogue/ - 包括近千個 po 檔案

拷貝回遊戲的 __translation/zh_TW/,使用 Translations 的 Import 將翻譯匯入,會利用 gamedata.po 和 dialogue/ 下的所有 po 檔案,更新 __translation/zh_TW/zh_TW.translation
發布
將 __translation/zh_TW/zh_TW.translation 拷貝到發布目錄

main.pot 需要用指令轉為 main.mo
  • msgfmt LC_MESSAGES/main.po -o LC_MESSAGES/main.mo

這時候還有一些檔案是不在 pot 翻譯範圍的,像是小秘訣(tips.txt)

而中文字體也會需要額外加入,檔案要放在 gui/fonts/ 並且編輯該目錄下的 kenshi_fonts.xml

工作坊發布需要遊戲工具協助,而 Kenshi 的功能也是做在 FCS 裡面

開啟遊戲,進入編輯模式(Launch Game Editor)
  • 點擊 New mod,輸入名稱,點擊目錄,將上述的檔案結構拷貝到該 mod 目錄下
  • 點擊發布取得工作坊編號,這時候就發布完成了

發布目錄規範
到 mods/ 的目錄結構,放這邊可以和 FCS 上傳共用,一般都是放在這
  • mod/locale/zh_TW/zh_TW.translation
  • mod/locale/zh_TW/LC_MESSAGES/main.mo
  • mod/tips.txt
  • mod/gui/fonts/kenshi_fonts.xml
  • mod/gui/fonts/SourceHanSansTC-Medium.otf

SourceHanSansTC-Medium.otf 為思源黑體 2.0 https://raw.githubusercontent.com/adobe-fonts/source-han-sans/release/OTF/TraditionalChinese/SourceHanSansTC-Medium.otf
程式自動化
建立 po 目錄當作工作目錄: merge.php
  • msgmerge po/locale/zhTW/LC_MESSAGES/main.po locale/en_GB/LC_MESSAGES/main.pot
  • msgmerge po/locale/zhTW/gamedata.po __translation/zh_TW/gamedata.pot
  • loop: msgmerge po/locale/zhTW/dialogue/ __translation/zh_TW/dialogue/

建立 mod 目錄當作發布目錄: release.php
  • msgfmt po/locale/zh_TW/LC_MESSAGES/main.po -o mod/locale/zh_TW/LC_MESSAGES/main.mo
  • cp __translation/zh_TW/zh_TW.translation mod/locale/zh_TW/zh_TW.translation
  • cp po/*.txt mod/
  • cp -r gui/ mod/

Github: https://github.com/Chuanhsing/Kenshi_zh_TW
3 Comments
q29238756 23 Dec, 2019 @ 6:05am 
我有問題,它現在不是有一個簡體中文可是用之後選取項都是空白的找不到原因
請幫幫我
凌盟 21 Dec, 2019 @ 3:08am 
现在版本汉化了
MicBear 19 Feb, 2019 @ 6:59pm 
您好 我想汉化一些MOD 但是我用FCS EXCORT导出的时候gamedata.pot里面包含了很多游戏原版的东西,这个应该怎么去除呢