DemonsRing
日本ファルコムより1984年3月に発売
Story
デュムリンは一人、暗い森の中にいた。彼が見ているものはしかし、静かに眠っている木々ではなく、彼の立っているところより少し先に見える不気味な家であった。もうすぐ、悲しげな静粛がこの森にやってこようとしている・・。デュムリンは、ふと師のロイポスの言葉を思い出す。「デュムリンよ。これから伝えるわしの言葉を心に留めておきなさい。いままでお前に話さなかった秘密、そしてこれから先、お前がなすべきことについて話そう・・。ここより東に3日、南に4日行ったところにエレミアと呼ばれていた国があった。理想郷と呼べるすばらしい国だった。わしがここに隠居してから10数年後、滅ぼされてしまったのだ・・。滅ぼしたのはあの邪悪なる伝説の魔王サローン。なぜ暗黒の時の牢より解き放たれたのかわからない。エレミアが滅びる前に傷ついた兵士がわしのもとへお前を預かってきた。国王より預かった唯一の遺志を継ぐもの、そうお前はエレミアの王クロウリーの子なのだ。さあ、旅立て、そして魔王サローンを倒すのだ・・。」(マニュアルより抜粋)
ファルコムのオカルト路線
日本ファルコムが「ザナドゥ」や「イース」などの路線を確立する前の作品はマイナーなものが多い。そして実はアドベンチャーゲームを数多く開発していたこともあまり知られていない。ファルコムは、この作品以前に「ホラーハウス」、「狂気の館」、「モンスターハウス(MZのみ)」などのオカルト路線のアドベンチャーゲームを多く開発している。これは、当時のアドベンチャー、ロールプレイングゲームの多くがファンタジーや神話といったヨーロッパ的発想のものが多く、ファルコムも「オカルト」という分野で世界に通用するようなゲームを作りたいという加藤社長のこだわりから生まれているものであった(と当時のインタビューでは記録されているが、これは単なる美化で、実際は作者の宮本氏がオカルトが好きだったという理由ではないかと思うのだが)。
ゲームの出来は?
デーモンズリングのストーリーは、「魔王サローンに滅ぼされた国の王子であるプレイヤーが、魔王を倒し、正しき国を築く」というものである。スタイルとしては当時の典型的なアドベンチャーで、モノを探して拾い、それを使うべき所で使う、それだけだ。広告のコピーに「テキストアドベンチャーとして十分通用する内容です」と書かれているが、正直いって、どこからそんな言葉が出てきたのかと思ってしまう。そもそも設定自体が日本人にはなじみの薄いものだし、その世界感を理解するほどの情報も文字としてはでてこない。また、このゲームはよく死ぬゲームのベスト5に入るほど、死ぬ場面が多い。ちょっとコマンドをミスしただけで死んでしまう。それをリアリティがあるという表現をされたら何も言えないが、これは勘違いしたゲームの難易度の上げかたであり、トリックやシナリオで場がもたないことの裏付けにも感じ取れる。
さらに物語後半には陰険な迷路まで出現する。この迷路が、それまでの「死」という安易な難易度アップにさらに泥を塗る形になっている。この迷路、相当広いのだが、さらにある程度迷わないと、出口が開かないようになっている。なんて陰険なんだろうか。「迷路」という要素は「ウィザード&ザ・プリンセス」もそうだが、シナリオに必要以上に干渉すると、ユーザーは興ざめであるし、しかもこれで難易度をアップしたり時間を稼いだりしては、アドベンチャーゲームをプレーしているのか、単なる3D迷路ゲームをしているのかわからなくなってしまう。そういう意味で、筆者はデーモンズリングのオープニングでこの迷路がデモっていたときに、非常に嫌な予感がしたことはたしかである。また、プレーしている途中で風のたよりに「この迷路の先にあるアイテムがある」と聞いたときには、もはやこのゲームを攻略する気さえも萎えてしまっていた。
最後に
いろいろと悪い点ばかりを書いてしまったが、筆者がこのゲームに惹かれたことは確かだ。それは、瞬間画面表示にびっくりしたこともあるが、ホラー調のオドロオドロしい広告やグラフィック(魔王や、ワニ男の不気味さ)にも何か興味や神秘性を感じた。そもそも西洋の化け物というのは、当時あまり馴染みがなかったので、画面の中に出てくるものすべてが、得体の知れない不気味さを放っているように感じた。ただ、期待していたシナリオがあまりに貧弱だったために、いまこのゲームについて考えると、つい苦言が多くでてしまうのだ。
このゲームは、"瞬間画面表示ができたからとりあえず作ってみました"的な感じがするゲームだった。しかし、次の「アステカ」では瞬間画面表示の技術も上がり、さらにウィンドウシステムという画期的な試みを入れるなど、確実にレベルがあがっていった。
瞬間画面表示
このゲームの最もウリな部分は画面が約2秒で表示されるという瞬間画面表示だ。この時期、システムソフトの「ミコとアケミのジャングルアドベンチャー(以下ミコアケ)」というゲームも発売され、こちらも瞬間画面表示であった。どちらが先という論争には結論はでないが、ミコアケのお試し版ともいえるものが、PC-8801mk2model20以降に同梱されており、これを考えるとミコアケの方が早く世に出た、といえるだろう(そもそもミオのミステリーアドベンチャーで瞬間画面表示が使われていたから、デーモンズリングが業界初ということは絶対にない)。
<以上:Y.ROMI>
日本ファルコムのソフトでは、デーモンズリング・アステカ以降はほぼ同じ画像圧縮技術が使われている。この圧縮手法は次のようなものである。専門的に言えば辞書式圧縮にランレングスを加えた方式となる。
1.R,G,Bのプレーン単位(モノクロデータ)で、ある行の横方向の並びに着目する。
2.一定値が続く(フィル)か、いま着目している行より上方の行と同じか(コピー)かに分類する。X方向すべてについてフィルまたはコピーできなくても、左端から数えてある程度の量が稼げればよい。
3.フィルもしくはコピーできなかった残りの部分について、残りのデータを添える。この際に一定データが連続する場合は若干ランレングス処理(データ+長さで記録する)を行う。
デーモンズリングの画像データを分析すると、タイルパターン等が一つ上、二つ上のラインと同一となっている場合がよくある。またラインだけ見ると、単純な塗りつぶしで構成されている場合も少なくない。こういった場合に威力を発揮する圧縮方式といえるだろう。また辞書式圧縮は圧縮効率がよく、展開が高速化できることが知られている。そういった意味でもベストマッチの方式といえ、この時代にこれだけの先進的な圧縮技術を使っていたのは驚嘆に値する。
なお解凍ルーチンでは3.の残りの部分を得るために42との比較"CP 2A"というコードが何回か現れる。このため私はこの圧縮方式を"CP 2A方式"と呼んでいた。もちろんこれは全くの通称名で、正式名は別にあると思われる。
デーモンズリングのような高速グラフィック描画では、上で説明したような効率の良い圧縮はもちろんディスクアクセスの高速化が大きく影響する。ここではいかにアクセスを速くするかについて説明する。
まずフロッピーディスクの構造を検討する。PC-88で一般的に使われている2Dディスクでは、表面・裏面の2つに分かれていて(2Dの"2"が示す)、それぞれに倍密度記録(2Dの"D"が示す)がなされている。一つの面は同心円状にトラックと呼ばれる輪に区切られていて、倍密度記録では1面あたり40のトラックが存在する。トラックの構造を詳しく見ると、セクタと呼ばれる領域に細分され、このセクタにユーザデータが記録される仕組みになっている。以上の構造により、ディスクアクセスにはドライブ・サイド・トラック・セクタの各パラメータの指定が必ず必要であることがわかる。1つのセクタに記録されるデータ量は何パターンかあるが、良く使われるのは256バイト・512バイト・1024バイトのいずれかである。これはソフトによって異なるが、よく使われるのはトラックあたり256バイト×16セクタか1024バイト×5セクタのパターンである。
またディスクアクセスの際はドライブ内でメディアが回転するが、この回転速度は一定となっている。原則として1回転で1トラック分のアクセスができるので、ここで物理的な速度限界が決まってくる。逆に言えばこの限界速度にいかに近づけられるかが高速化のキーとなる。
この限界速度に遠く及ばない例として、N88-DISK BASICを考えてみる。純正のDISK BASICを使った方ならわかると思うが、このOSのディスクアクセスは異様に遅い。これはFATと呼ばれるファイル管理方法に原因がある。この手法の詳細は省略するが、ファイルアクセスの際にFATと呼ばれるテーブルを見て次にアクセスするサイド・トラック・セクタを得る構造となっている。この方式は柔軟性がありメディアを無駄なく使えるメリットがあるが、実際にはセクタ進行に従い連続してファイルが収められているケースが多い。この連続配置の場合に極端な低速化がおこる。なぜならFATから次の位置を取得したときは一定回転のためヘッドは既に目的の位置を通り越しているからで、こうなったらもう一回転するまで待たなくてはいけない。そして目的のセクタを読んで、またFATから位置を拾って、一回転待って...とやっていると、とてつもなく遅くなってしまうことが分かると思う。勿論速いCPUならFAT解釈してから読み始めても間に合うのだが、4MHzのZ80程度ではFAT解釈を入れてしまうとフロッピードライブの回転速になかなか追いつけないのが現実だ。
この現象を回避する一つの方法として、ディスクをフォーマットする際にセクタを飛び飛びに配置する(インターリーブフォーマット、スキューをかけるとも言う)方法がある。つまり1,2,3,4,5と配置するのではなく、1,4,2,5,3と配置すれば毎回回転待ちをする手間が省ける。ただこれでも最低2回転しないと5セクタすべてにアクセスすることは出来ない。出来れば1回転でアクセスしたいものだ。
以上を踏まえ、デーモンズリング・アステカ等の日本ファルコムのソフトでは、N88 DISK-BASICとは違ったアクセス方式をとっている。この方式では全ファイルを連続配置とし、FATを持っていない。この場合次のセクタ位置をFATから取り込むのではなく、単純な計算で取得できる。これにより1回転で1トラックのアクセスを実現している。また次のトラックに移動する場合でもヘッドの移動量が最小で済むため、ここでも速度を稼いでいる。
ただこのファルコムDOSであってもまだ無駄が生じている。なぜならヘッド移動時にもディスクは絶え間なく回転しているため、ヘッド移動が完了した時はヘッド位置が少し先にあるからだ。これを利用して、トラック0:1,2,3,4,5 トラック1:2,3,4,5,1 トラック2:3,4,5,1,2という風にトラック単位でスキューをかけることで更なる高速化が図れる。ただ実際にはここまでやっているソフトはさすがにほとんどないようだ。
<以上 PI.氏>
「デーモンズリング」に関連するすべての画面写真、パッケージ写真の著作権は日本ファルコムに帰属します。