訪客留言簿

星期日, 9月 06, 2009

用 Ubuntu Linux 及 Wine 執行日文程式、玩日文遊戲

前言

為什麼很多教人用「LANG=ja_JP.UTF-8 wine」的網站都不順便說一下 locale-gen 呢……

也在此感謝 Ubuntu Taiwan 上不厭其煩為我解答的各位。→在 Wine 使用的登錄檔中正常寫入中日文全形字(雙位元字) [論壇 - Ubuntu 影音及遊戲] - Ubuntu 正體中文站

另外我個人的環境大概是「Ubuntu 8.04.1 、 Wine 1.1.28 、 有用 LazyScript 安裝中文字型、有把 Windows 字型複製到 Ubuntu 中」。

還有在這要強調一點,用 Wine 跑 Windows 程式往往不在程式設計師的計算之內,所以就算出什麼錯,也不能說是程式設計師的問題。

重要步驟

  1. 使用 Ubuntu 6.06 (Desktop) 以上的版本
  2. 安裝 Wine
  3. 複製 Windows 相關字型檔案
  4. 設定 locale 語言檔案及相關設定
  5. 用終端機或自訂的啟動圖示以特定 locale 設定執行 Wine
  6. 看看別人玩遊戲時是否有碰上問題

Ubuntu 版本

請從「Ubuntu 正體中文站」下載。我個人是用 8.04 (Desktop),不過用 9.04 其實也不錯啦,但我不太會升級或重裝,所以一直遲遲沒升級上去。

安裝 Wine

因為 Wine 並不是 Ubuntu 內建套件清單中的軟體,所以你得自己把 Wine 的下載資訊寫進套件資料庫中,並下載 Wine 的驗證金鑰。安裝方式請參考 Wine 計畫的網站,或是 Ubuntu Taiwan 的 Wiki 資料。

複製 Windows 字型

有些程式或遊戲,可能沒設定通用字型(Generic font families),所以會強硬要求某種指定的字型才肯動。若你手上有貼了合法的 Windows 授權貼紙的說明書的話,應該就可以合法把 Windows 字型移到 Ubuntu 中使用。

而一般需要的字型是正體中文的細明體(mingliu.ttc)、日文的 MS ゴシック(msgothic.ttc)和 MS 明朝體(msmincho.ttc)這三種。

不過我其實也不確定這步驟是不是一定要,所以等改天有要重裝時再來寫吧。

設定 locale 語言檔案

雖然從 Ubuntu 的「系統 → 管理 → 語言支援」中似乎可以下載日文字型之類的,但是有些語言檔案的支援,還是得靠終端機和純文字編輯器來處理。

首先,我文章開頭會指定要 Ubuntu 6.06 以上是有原因的,這是因為檔案路徑和作法會不相同。

總之到「 /var/lib/locales/supported.d/ 」這路徑下,應該會看到類似 en 、 local 或 zh 一類的檔案,那些都是文字檔。請先開終端機,用 sudo 管理者權限打開你的純文字編輯器(我常用的是 madedit 但內建的 gedit 也不賴),再把 en 或 zh 任一文字檔案,用滑鼠拖拉進你的純文字編輯器中。(註:下面的 $ 是叫你開終端機,輸入在 $ 後面的指令的意思。)

$ sudo gedit

以 en 為例,打開這檔案後,應該會看到好幾行類似 en_HK.UTF-8 UTF-8 的文字,不過在此請先另存新檔,將這新檔的檔名改為 ja,然後清光這些文字內容。

接下來,請在裡面輸入以下內容。(請注意文末要有個空行)

ja_JP.UTF-8 UTF-8

接著要在終端機中執行 locale-gen,好讓這些 locale 語言檔案的設定能起功用。如果沒什麼問題的話,應該花兩三分鐘就會跑完,有碰上什麼問題的話,請再跑個一兩遍試試。

$ sudo locale-gen

用指定語言檔案及設定來執行日文程式或遊戲

在 Linux 下,並不需要重開機,就可以讓指定的軟體,在指定的語言環境下執行,一切只需要一行指令及一個參數「Lang」,所以就來打開終端機或建立啟動圖示吧。

$ LANG=ja_JP.UTF-8 wine [要執行的程式位置及名稱]

上面的「[要執行的程式位置及名稱]」,如果是跟你目前的終端機所開啟的路徑(即 $ 前的那些字)相同位置的話,只要輸入類似 abcdefgh.exe 這類的檔名(及副檔名)就可以了。

查詢遊戲的安裝及執行情況

WineHQ - Wine Application Database 上可以查詢很多 Windows 程式,用 Wine 安裝或執行的情況(由使用者提供的報告),不過這些並不是全部就是,所以有些程式你還是得在專門討論該程式的地方問看看。

其它懶得解說的

  • 啟動圖示是啥?
  • 以目前開啟的檔案管理員視窗所在路徑來執行終端機(或者該說在檔案列表空白處按右鍵開終端機就移動到現在所在路徑?)
  • winetricks 怎麼用?
  • Virtualbox 是啥?
  • 遊戲影片不能正常播放?
  • DirectX 要怎麼安裝?
  • LANG=ja_JP.UTF-8 是啥意思?
  • Wine 不是 Windows 模擬器是啥意思?
  • 為啥切換虛擬桌面時會讓 Wine 視窗不見?
  • 輸入 sudo 開頭的指令後畫面就不動了……抱歉,忘了請你輸入管理者密碼了,也就是你當初裝 Ubuntu 所建立的第一個使用者的密碼。
  • 為啥開音樂播放器時,Wine 執行的遊戲就會沒聲音?

個人測試的幾款遊戲的報告


免安裝,執行正常(可能無法播放影片),文字正常,全螢幕化有點問題。


免安裝,執行正常(可能無法播放影片),文字正常,全螢幕化有點問題.


正常安裝,文字正常(僅試過體驗版),會因播放影片失敗而關閉。


免安裝,執行正常(但播放影片失敗時會讓聲音失效),文字正常,寬螢幕及全螢幕化有點問題。


免安裝,執行正常(可能無法播放影片),文字正常,全螢幕化有點問題,會在使用者家目錄下建立存檔資料夾,淡出淡入特效會有點吃重。


免安裝,全螢幕化有點問題,進出選單和戰鬥特效動畫有點吃重。

補充說明 (20091122)

有人說用 winetricks 裝好 DirectX (d3dx9) 和 ffdshow 就可以,不過我都安裝好後的情況似乎並不是那麼順利,也許得找機會用 LiveCD 重測了。……其實用 Virtualbox 也行啦。 XD

另外附上在終端機中執行 winetricks 的必要指令(終端機所在路徑要和 winetricks 在同一目錄,不然就得自己輸入 winetricks 的完整路徑。):

$ sh winetricks

補充資料(2010.01.15)

部分遊戲引擎在 Linux 上也有開放源碼的版本或非正式支援的開源計畫,能搞定字型問題的話,用開源的遊戲引擎應該也行跑一些用了類似引擎的遊戲。

補充資料(2010.02.26)

最近在查看些資料時,發現我之前的「系統 → 管理 → 語言支援」裡,一直沒有勾選「日本」,而是勾了個「javanese」的樣子。總之如果有在語言支援裡勾過日本,卻一直沒辦法正常使用 LANG 指令來跑日文軟體的話,請再參考本文重試看看。

0 comments:

 

本站著作(不包含圖片、影音以及回應留言)係採用 Creative Commons 姓名標示-非商業性-相同方式分享 2.5 台灣 (中華民國) 授權條款授權