How-To: Install Tribes 2 for Linux

Last Update - 04 / 25 / 2008 By DarkRanger .

環境 :

Fedora 8

Kernel = 2.6.24.3-50.fc8

Tribes 2 v25034

Tribes 2 不僅是 DR 最喜歡的 FPS,也幾乎算是 DR 最喜歡的一款遊戲。雖然 Tribes 2 也有推出 Linux 的版本,然而它的 Linux 版是獨立發行的,並且很不幸的,原發行商 Loki Games 已經關門。在沒有購買管道的情形下,擁有 Windows 版的玩家如果想要在 Linux 上玩 Tribes 2,一個方法是用 Wine 來執行 Windows 版,或者就是利用諸如 BitTorrent 的線上方式來下載取得。如果已經取得了 Tribes 2 的 Linux 版,就可以繼續參閱以下的流程。由於 Tribes 2 也已經是款數年前的老遊戲,在缺乏支援的情況下,它在較新的 Linux 系統上開始需要處理各種的相容性問題,所以 DR 會在下列流程中說明可能遭遇的狀況以及解決方法。

1. 安裝 Tribes 2

- 先將 Tribes 2 的 Linux 版光碟掛載好,然後執行安裝程式,64 位元系統請加上 linux32 指令:

# linux32 ./setup.sh

這時會先啟動 Loki Update Tool 和 Loki Uninstall 的安裝程式,都可以不用裝,所以按『Cancel』即可,接下來就會進入 Tribes 2 的安裝程式:

ppp


後續的流程就跟其它的 Linux 遊戲一樣,可以自己選擇安裝路徑,例如 DR 是裝在使用者目錄底下,至於 Link path 的部分並不重要,因為安裝完後也可以自己建立連結。

2. 更新至 25034 版

( 更新檔可至 http://lokifiles.tuxgames.com/updates/tribes2/ 下載 ) 由於 Linux 版的更新檔本身有一些小問題,所以要先做一些修改,先將更新檔解開來:

# ./tribes2-25034-cdrom-x86.run --keep

如果執行時出現關於 tail 的錯誤,執行以下指令再重新作解開的動作:

# export _POSIX2_VERSION=199209

然後把修正過的 loki_patch ( 本站下載 ) 丟進解開後的 tribes2-25034-cdrom-x86/bin/Linux/x86 目錄裡,並且要設定為可執行:

# chmod 755 loki_patch

最後在解開的目錄底下執行更新檔安裝程式:

# linux32 ./update.sh

安裝程式應該會偵測正確的安裝目錄 ( 例如:/home/username/tribes2 ) 並執行更新。


3. 執行 Tribes 2

安裝完後的 Tribes2 目錄裡頭會有 t2launch 以及 tribes2 這兩個執行檔,執行 t2launch 的話會出現主選單,點選後即可開始遊戲:

ppp

或者,直接使用 tribes2 這個執行檔:

# ./tribes2 -online ( 線上遊戲 )

# ./tribes2 -nologin ( 區域網路或訓練模式 )

4. 如果 Tribes 2 無法執行

這時請留意執行後的輸出訊息,如果出現類似以下的錯誤訊息:

tribes2: xcb_xlib.c:82: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.

表示 Tribes 2 所包進的函式庫已經和你的系統不相容了,不過幸好 Tribes 2 還提供了動態連結的執行檔版本(tribes2.dynamic),讓使用者可以自行更換所連結的函式庫。請先執行以下指令去確認執行 tribes2.dynamic 所需的函式庫是否都存在於系統中;

# ldd tribes2.dynamic

有缺的話會出現 " not found " 訊息,以 DR
為例就缺了 libsmpeg-0.4.so.0 這個檔案,所以利用 yum 把它裝起來:

# yum install smpeg

然而除了改用系統本身的函式庫外,還要再另外連結兩個較舊的函式庫,請先至 http://gentoo-wiki.com/HOWTO_Running_Old_Loki_Games 下載由 Swanson 所打包的 Loki 相容軟體包(loki_compat_libs-1.2.tar.bz2)。然後找個目錄解開來,例如:/home/username/Loki_Compat,再使用以下指令即可順利執行 Tribes 2:

# LD_PRELOAD=/home/username/Loki_Compat/libSDL-1.2.so.0:/home/username/Loki_Compat/libstdc++-3-libc6.2-2-2.10.0.so /home/darkranger/tribes2/tribes2.dynamic -online

或者寫成 script:

#!/bin/sh
export COMPAT=home/username/Loki_Compat
export LD_PRELOAD=/$COMPAT/libstdc++-3-libc6.2-2-2.10.0.so:/$COMPAT/libSDL-1.2.so.0
cd "/home/username/tribes2"
./tribes2.dynamic -online

儲存後設為可執行(755)即可。

5. 其它問題排解

(1) 執行後聽得到聲音,但畫面全黑?

- 編輯
/使用者目錄/.loki/tribes2/base/prefs/ClientPrefs.cs,然後找到 $pref::Video::resolution 的部份將解析度調高試試。

(2) 解析度調高之後,畫面花掉?


- 重新啟動 X 即可。

(3) 沒有聲音?

- 將 ClientPrefs.cs 這個檔案刪除試試。

(4) 更新時出現某檔案不合的錯誤。

- 可以嘗試把 Windows 版光碟的檔案覆蓋過去再進行更新。

(5) 只能跑到 16 bit depth 或特定解析度?

- T2 的設定依 X-Window,如果 X-Window 設成 16 bit,則 T2 只會跑 16 bit,所以請調整 X-Window 設定。

(6) 相關設定檔的存放位置?

- /使用者目錄/.loki/tribes2/base/prefs/ClientPrefs.cs ( 系統設定 )

-
/使用者目錄/.loki/tribes2/base/prefs/MyConfig.cs ( 操作設定 )

(7) Script 的存放位置?

- 一般而言是:

/使用者目錄/.loki/tribes2/base/scripts/autoexec


參考網站:

http://t2.giantfriend.com/

http://faqs.lokigames.com/tribes2faq.html

http://gentoo-wiki.com/HOWTO_Running_Old_Loki_Games

http://www.icculus.org/lgfaq/

http://www.lokigames.com/

Back to DarkRanger.no-ip.org