« ゲームの小ネタを二つ | トップページ | xu4のパッチ、改良版 »

2004/03/23

xu4

少し前にダウンロードしたまま放っていた「xu4」というソフトをインストールしました。このソフトは、DOS版のウルティマIVをLinuxで遊んでしまおうという主旨のもので、つまるところ、ユーザーが自前でプログラムを移植してしまったんですな。いやはや、海外のゲーマーは凄いですわ。勿論、それをメーカーが容認しているからこそ可能なのですが。

ところで、「LInuxで」と書きましたが、xu4にはウィンドウズ版なども存在します。幾つか機能が拡張されており、dos版をそのまま遊ぶより快適なので、興味がある方はどうぞ。

xu4の公式サイト
コンパイルに必要なものは以下の通り。
SDLライブラリ
SDL_mixerライブラリ(上のサイト内、Librariesのコーナーからどうぞ)

また、Midiを演奏出来る環境と、oggvorbisライブラリがインストールされていないと、殆んどの音が出ません。最近のディストリなら、oggvorbisは最初からインストールされてるんじゃないかとは思います。Midiは、SDL_mixerライブラリに、TiMidityというソフトウェアシンセが内蔵されてるみたいなので、音色データと設定ファイルさえ揃えば大丈夫でしょう。音色データと設定ファイルのインストールに関しては、長くなるので割愛。データを置いてあるサイトのリンクだけ用意しておきます。
音色データはここから

そうそう、これはxu4だけに限った話ではありませんが、SDL_mixerライブラリは、ソースの一部を修正した方が良いでしょう。そのままでは、timidityの設定ファイルをカレントディレクトリから探そうとしますので。具体的には、SDL_mixer-x.x.x/timidityディレクトリにある、config.h を編集します。このファイルの中に、「#difine CONFIG_FILE "timidity.cfg"」と書かれた行があるので、それを探して下さい(1.2.5では、209行目でした)。この、timidity.cfg という部分を、例えば「/usr/local/share/timidity/timidity.cfg」に変えてやります。この例は、TiMidityが標準で読みに行く設定ファイルのディレクトリを指定するので、無難です。

あと、実際にゲームを遊ぶには、DOS版のデータが必要となりますが、何とDOS版のウルティマIVは、現在フリーソフトとして配布されており、xu4のサイトからもダウンロード出来ます。これらのデータを何処にインストールすべきかは、附属のREADMEファイルで調べて下さい。

うちの環境では、インストール時に不都合が発生したので、その解決法を紹介しておきます。もし不都合が発生したのなら、同じ方法で行けるでしょう。
u4/srcにあるMakefileに、
$(INSTALL) -D (云々)
という行が幾つも並んでいます。この、-Dというオプションが問題の源であるようなので、このオプションを全て消してしまいます。すると、普通にインストールされました。

これで、無事ウルティマIVがLinux上でも遊べるようになります。ただ、そのままでは気に入らない部分が幾つかあり、自分の手に負える範囲だったので、ソースを修正しちゃいました。

無印xu4は、ゲームのセーブデータをカレントディレクトリに作成してしまいます。読み込みも、カレントディレクトリからしか行いません。このままでは、プログラムの起動を常に同じディレクトリから行わなくてはいけない、という状況になってしまいます。そんなのは嫌なので、ソースを修正しました。この改造版xu4では、ホームディレクトリに「.xu4」というディレクトリを作成し、その中にセーブデータを収納します。ついでだから、環境設定ファイルもこの中に収録するよう、修正しました。

xu4-0.9へのパッチ

u4ディレクトリに移動して、
$ patch -p1 < ../xu4-0.9.patch
あたりで行けます。パッチファイルのディレクトリは、各自で適当に調整して下さい。

それと、もう一つ。DOS版ウルティマIVのデータも一緒にインストールされるように、Makefileを少しいじってみました。

Makefileへのパッチ
パッチの当て方は、上のと同じ。上記の -D オプションも削られます。

雑な改造なので、あらかじめ u4/ULTIMA4ディレクトリにDOS版のデータが展開されていないと、エラーが出て止まります。ちなみに、u4ディレクトリで解凍を行うだけで大丈夫です。u4upgrad.zipも利用する場合は、こちらはu4/ULTIMA4ディレクトリにて解凍して下さい。

この方法の利点は、自前でパッケージを作成した時に、DOS版データもパッケージに含まれる点です。つまり、パッケージをアンインストールすれば、DOS版データも一緒に削除されるわけです。言い換えると、それ以外の利点は特に無いような気がします。

|

« ゲームの小ネタを二つ | トップページ | xu4のパッチ、改良版 »

ゲーム」カテゴリの記事

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/17092/340792

この記事へのトラックバック一覧です: xu4:

« ゲームの小ネタを二つ | トップページ | xu4のパッチ、改良版 »