[博物館へ] [博物館のRogueのページへ]

MASG
アブストラクトゲーム博物館: Software Design 2016 10月号連動
Rogue 5.4.4 攻略とビルド+インストール情報

ここは、Software Design 2016年10月号に寄稿した、「Unixコマンドライン探検隊」第6回のローグ(rogue)とロゴマチック(rogomatic)についての記事を補足する資料を提供するページです。取り扱っている情報は、技術評論社のSoftware Designサポートページで配布しているものとほぼ同じものです。本誌の記事とあわせて活用してください。また、技術的な情報、記事の修正などはSoftware Desingのサポートページを参照してください。

ローグ (rogue 5.4.4)攻略資料

ローグは、ソースコードと一緒に提供されるドキュメントも英語である上、難易度的に高いこのゲームを手がかりなしでの攻略はハードルが高いかもしれません。以下に、日本語訳したドキュメントを含む、ゲームの攻略情報を提供します。

これらの資料は、誌面で取り上げたrogue Version 5.4.4. の配布ドキュメントとソースコードから著者が読み取った情報です。ひょっとすると、誤りがあるかもしれません。もしもおかしいなと思う場合、不明瞭な部分があれば、英語原文、ソースコードを確認してみてください。

  1. rogue.html日本語版

    英語でないと意味が不明瞭な部分もあるので、ぜひ原文(ビルドした時にできるrogue.html)と一緒によんでください。もとの文章は30年程前の環境のために書かれているので、現在はあまり使われていないような、面白いことも書かれています。

    文中Unix関連のシェル、コマンドはRogueが配布されたBSD Unixが対象のようですので、シェルのプロンプトはcshのデフォルト“%”です。端末のスピード(1200 baud)などの記述があります。Ethernetなどではなく、シリアル(モデム経由やRS-232Cインターフェース)でホストシステムへ接続された端末を想定した話です。これが、一般的な環境でした。

  2. アイテム-メッセージ対応リスト
    これがないと、ダンジョンで何を拾ったのかわからないでしょう ;-)
  3. モンスター一覧
    モンスターの出現階、特殊能力、強さなどをまとめました。
  4. アイテム装備品など攻略情報
    全アイテム(薬, 巻物, 指輪, 杖, 武器, 鎧)、Strength(力)の値によるダメージの補正、罠、レベルアップに必要な経験値をまとめてあります。

Software Designe 2016年10月号 記事の補足

1. コラム:ソースが提供されているゲームの攻略

昔大学の計算機センターでよくあった話だろうと思います。センターでアドベンチャーゲームをプレーしていると肩越しに、「木に登って、鳥の巣を確認しろ」、次は「家に戻ってカーペットの下を確認するのだ」などと、口出ししてくる奴がいました。ゲームをすべてやり終えたのかと聞いてみると、自分はプレーしていない。でもソースコードを読んだから、よく分かっているということ。

Unixなどでのゲームは、商用目的ではないので、製作者も大体ソースコードを配布する形で広く遊んでもらえるようにしていました。だいたいどのゲームも、辛口のコンピューターナードをうならせるために難易度は高めです。もちろん、攻略本なんてありません。今日ではそうした人気のゲームは、どこかのWeb上に攻略情報があるかもしれませんが、以前はUsenetなどネットニュースを使っての情報のやりとりが中心でした。

今回の記事の執筆のため、ひさしぶりにローグのソースコードを眺めていて、改めて感じたことがあります。こうしたゲームはソースコードが攻略情報の源泉であり、さらにゲームを面白くしたり難易度を調整したいなら、自らプログラムをハックして楽しむのが正しいコンピューター技術者のゲームの楽しみ方だということです。

本誌でも紹介しましたが、ローグの後さまざまなローグライクゲームが登場します。hack(ハック)は、ローグが出て間もなく登場しました。ハックは後にNethack(ネットハック)として発展し今も多くのファンがいます。難易度は、ローグよりも高いかもしれません。ローグが決められた単純な行動しかできないのに対してありとあらゆることができるのも特徴です。アイテムや職業の選択、ともに旅をする動物、さらにダンジョンを進んでいくと様々な謎が待ち構えています。きっと製作者たちは、ローグにこうした要素があったらと思って、機能やシナリオを加えていったのでしょう。

みなさんも、ソースコードが提供されているお気に入りのゲームを、ソースを読んで攻略し、自分なりのオマージュ作品を作ってみてはいかがでしょうか。

2. パッチファイルを使ったビルドの全手順

a) まずは、作業用ディレクトリを作成し、その中に移動

$ mkdir Rogue+Rogomatic
$ cd Rogue+Rogomatic
        

b) オリジナルのソースを取得して展開

wgetではなくcurlを使うなら -O オプションを指定

$ wget http://www.anthive.com/rog/rogue5.4.4-ant-r1.1.2-src.tar.gz 
$ wget http://www.anthive.com/rog/rogomatic-r2.0.2.tar.gz
$ tar xvzf rogue5.4.4-ant-r1.1.2-src.tar.gz
$ tar xvzf rogomatic-r2.0.2.tar.gz
        

c) パッチをSDサイトからダウンロード

$ wget http://image.gihyo.co.jp/assets/files/magazine/SD/2016/201610/download/rogue_rogomatic.patch_20160623
        
作業用ディレクトリにパッチファイルがあることを確認しパッチを当てる
$ patch -p0 < rogue_rogomatic.patch_20160623
        

c-osx) OS Xでは、以下の作業が必要

$ wget http://image.gihyo.co.jp/assets/files/magazine/SD/2016/201610/download/make_brew.patch_20160621
$ cd rogue5.4.4-ant-r1.1.2
$ patch -u Makefile < ../make_brew.patch_20160621 
        

d) ローグからビルド

$ cd rogue5.4.4-ant-r1.1.2
$ ./configure
        
ここで、不足のパッケージをyum, apt, brewでインストールする
(例えばubuntuでは、ncursesのライブラリが必要かもしれない)
# Ubuntuでの例
$ sudo apt install libncurses5-dev
          

(arm64bit環境では、config.guessが古くてconfigureに失敗するかもしれない)
$ wget -O config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD'
$ wget -O config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD'
          
不足のパッケージをインストールしたら再びconfigureを実行
configureが成功するまで続ける
makeを実行し、コンパイル
$ make
        
問題がなければインストール
$ sudo make install
        

e) 続いてロゴマチック

$ cd ../rogomatic-r2.0.2
$ ./configure
        
ここで、不足のパッケージをyum, apt, brewでインストールする
不足のパッケージをインストールしたら再びconfigureを実行
(例えばubuntuでは、autoconfが必要かもしれない)
# Ubuntuでの例
$ sudo apt install autoconf
          
configureが成功するまで続ける
makeを実行し、コンパイル
$ make
        
問題がなければインストール
$ sudo make install
/var/games/rogomaticは手動で作成する、アクセス権限は誰でも読み書き可
$ sudo mkdir -p /var/games/rogomatic
$ sudo chmod 777 /var/games/rogomatic
        

f) 最後にシェルスクリプトr-o-mをインストール (任意)

作業ディレクトリの一番上に移動して
$ cd ..
/usr/local/binにr-o-mをインストール
$ sudo cp r-o-m /usr/local/bin
$ sudo chmod 755 /usr/local/bin/r-o-m
        

これで、ビルドとインストールは完了

実行用のディレクトリを任意の場所に作って実行するとよい
ここでは、作業用ディレクトリの中に作って実行
$ mkdir playground
$ cd playground
        
ためしにrogomaticを10回実行させる
$ r-o-m 10
        

3. 動作環境について

著者がビルドと動作確認をした環境は、Ubuntu 16.04とOS X 10.11.6 + brew です。 Linuxであれば、他のディストリビューション、バージョンなどでもおそらく動くだろうと思います。

OS X + portを使っては確認していませんが、必要なライブラリが用意できればおそらく動作するだろうと思います。

4. ダウンロード+リンク

リンク

SD誌面連動のパッチファイル

SD2016年10月号のUnixコマンドライン探検隊の記事に沿ったパッチファイルです。詳細はSD誌を御覧ください。以下、右クリックで「リンク先をダウンロード」してください。

[博物館へ] [博物館のRogueのページへ]