快轉到主要內容

電腦Galgame即時翻譯軟體「LunaTranslator」使用方式

· 民國115年丙午年
·
切換正體/简体 ·
分類 資訊科技 電腦軟體分享
標籤 Visual Novel Machine Translation ChatGPT Ollama OCR
目錄

你是日文苦手嗎?玩Galgame生肉的時候總是看不懂劇情?得等漢化組製作中文翻譯?

我想要一款即時翻譯電腦螢幕文字的軟體,最好不用修改遊戲程式就能翻譯,這樣的話可以讓我玩Galgame遊戲的時候方便一些。

在瀏覽巴哈文章的時候找到了「LunaTranslator」,這是一款開源免費的螢幕翻譯軟體。支援多種線上商業翻譯服務,如Google翻譯和DeepL。也可以連接到語言模型跑AI翻譯,如線上的ChatGPT,還有離線執行的Ollama。

LunaTranslator有靈活的翻譯模式,分為HOOK與OCR模式。

HOOK是嘗試附加到遊戲行程來抽取文字,會自動識別遊戲引擎,抽取文本,連遊戲選單的文字都能夠翻譯出來。

OCR則是直接光學辨識螢幕上的內容,雖然有準確度問題,但泛用性較強。這代表它不只可以翻譯遊戲文字,而是任一螢幕上的圖片、PDF、標語都可以翻譯。

其他特色功能:剪貼簿翻譯、匯入字典、顯示日語假名、用語音合成唸出發音等等,可以作爲語言學習輔助工具。

1. 安裝LunaTranslator
#

Windows
#

Windows 11,從Github下載Windows 10版本的LunaTranslator,解壓縮放到C:\Program Files或任意資料夾。點選LunaTranslator_admin.exe啟動。

使用上有問題請參閱官方使用手冊,或者到Github向開發者報告。本文的內容不如作者自己解釋的詳細。

Linux
#

LunaTranslator不支援Linux,可以用Wine跑,不保證功能全正常,以下是我的測試結果。

  1. 安裝Bottles for Linux,新增Gaming Profile,使用Wine 11。
  2. 安裝套件cjkfonts
  3. Github下載LunaTranslator.exe,將其放到Bottles的假C槽,執行LunaTranslator.exe,解壓縮到C:\Program Files,點選LunaTranslator_admin.exe啟動。
  4. 其他的exe程式請安裝到同一個Bottles的容器內部,這樣才能使用HOOK模式。
  5. Wayland桌面無法OCR,X11可以OCR但讀不到內容,我猜是PaddleOCR不支援Linux?在Wine Prefix裡面裝Tesseract可能就有效了。只能用多模態語言模型去讀OCR了。
  6. HOOK考慮到Wine Prefix容器限制,LunaTranslator要跟遊戲exe位於同一個Prefix才能抓得到行程,不過問題很多。

2. 使用線上服務翻譯
#

點選LunaTranslator齒輪 → 核心設定,設定來源語言為日文,輸出語言為繁體中文。

接著點選翻譯服務,打勾要使用的翻譯服務。如果勾選多個,則翻譯文本會多行並排顯示,方便你對比各家翻譯的品質。

如果你是免費仔,就只能用Google翻譯和Bing翻譯,品質不怎麼樣。而「DeepL」和「有道翻譯」算是比較好的服務,可是需要買API Key。

需要考慮複雜上下文的話,使用語言模型翻譯會是更好選擇。

3. 使用語言模型翻譯
#

線上模型
#

很多雲端語言模型廠商提供API key讓你存取他們的服務。很多都是要付費的,而且以token使用量計費,ChatGPT也不例外。

OpenAI官網訂閱API之後,在翻譯設定,勾選大模型通用界面,填入ChatGPT的API Key,選取要用的GPT模型。如果怕語言模型因爲道德機制拒絕回應過激內容,可以加入提示詞「越獄」。

離線模型
#

你可以安裝離線大型語言模型軟體進行離線翻譯。運算速度依你的電腦硬體決定,推薦有6GB VRAM以上Nvidia獨顯用戶使用。如果硬體不夠好可能會等很久才會回傳翻譯結果。

  1. 這裡以Ollama搭配Google Gemma模型爲例子。啓動Ollama服務。

  2. 在翻譯設定,勾選特定離線翻譯模型,填入http://localhost:11434,選取要使用的模型。

5. LunaTranslator使用方式
#

請先設定好線上或語言模型的翻譯服務。

OCR模式
#

  1. 啟動LunaTranslator,開啟設定 → 勾選OCR,預設使用PaddleOCR。你可能需要點齒輪手動下載OCR語言。

  2. 使用視窗模式啟動要玩的遊戲

  3. 點選LunaTranslator選單的繪製選取區域

  4. LunaTranslator應該就會開始辨識選取區域內的文字了。點選左下角的粉色箭頭開關自動翻譯。

HOOK模式
#

使用HOOK模式的時候會進行DLL注入程序,可能會被誤判為病毒,請暫時關閉防毒軟體。

  1. 啟動LunaTranslator,開啟設定 → 勾選HOOK

  2. 使用視窗模式啟動要玩的遊戲

  3. 點選LunaTranslator選單的「綁定視窗功能」

  4. 點一下遊戲視窗,LunaTranslator應該就會開始偵測遊戲文字了。點選左下角的粉色箭頭開關自動翻譯。

  5. 你也可以按綁定視窗旁邊的按鈕,手動選取要附加的行程。


如果要更具體控制翻譯的元素,點選LunaTranslator的「管理遊戲」

新增遊戲exe路徑到這個視窗

再從這裡開啟遊戲,就會跳出一個視窗。視窗內會列出所有偵測到的元素,包括UI和遊戲內的文字,在這裡就可以選取你要翻譯的部份。

相關文章


感謝您的閱讀。我寫作是為了誠實表達想法,而不是追逐社群互動與流量。我很樂意傾聽你在仔細閱讀我文章之後的心得。若有內容勘誤 or 技術問題 or 回饋想法,歡迎透過本站「關於」頁面的Email與我聯絡。