ゲームのキャラは秒速3.7ブロックの速さで歩く

Gayaline

 タイトル通りですが、今回も以前に引き続きゲーム内の速度を測定してみました。対象となったのはファミコンRPGのキャラの歩く速さ。調査の結果、歩く速さはファミコンの仕様と関係していることがわかってきました。詳しくは以下をご覧ください。

今回のプラン 

 前々回前回とゲーム内の動作にかかる時間を測定し、テンポを数値化する試みを行ってきた。今回もそれに続き、さまざまなゲームの時間を測定する。

 前回は戦闘中のいろいろな動作時間を計ってみたが、今回は計るのは1箇所とし、その代わり対象とするゲーム数を増やすことにした。計るのは多数のゲームが比較可能な「歩く速度」である。ひとまずはファミコンのRPGを対象に選んでみた。

 測定方法は、1ブロックが明確に存在しているRPGで、フィールド以外の場所で10マス移動するのにかかる時間を調べた。歩き出しにラグがあるゲームも存在するので、純粋な速度を知るためにその外のブロックから開始ブロックに突入し、終了ブロックを通過するまでを計った。

測定結果

 では早速、その結果を見てもらおう。速度を出すために、「10/かかった時間」でブロックあたりの秒速も求めてみた。

作品名 かかった時間 ブロック/秒
FF1 2.69 3.72
FF2 2.70 3.71
FF3 2.68 3.73
DQ1 2.71 3.70
DQ2 2.71 3.69
DQ3 2.70 3.71
DQ4 2.70 3.70
貝獣物語 2.71 3.69
サンサーラ・ナーガ 2.70 3.71
TAO 2.72 3.68
百鬼夜行 2.71 3.69
北斗の拳3 2.70 3.71
星をみるひと 5.71 1.75
ヘラクレスの栄光 2.87 3.49
ヘラクレスの栄光2 2.72 3.67
MOTHER 2.72 3.67
桃太郎伝説 2.73 3.67
メタルマックス 2.66 3.76
ラグランジュポイント 2.67 3.75
ラストハルマゲドン 2.71 3.69
ウルティマ恐怖のエクソダス 2.89 3.46
ウルティマ聖者への道 2.71 3.69
ドラえもんギガゾンビの逆襲 2.70 3.70
ナイトガンダム物語2 1.37 7.33
ウルトラマン倶楽部3 1.53 6.56
ダークロード 1.39 7.22
天地を喰らう 1.36 7.37

以前計ったFFやドラクエについてもより正確になるように計り直した。ざっと見ても、速度はきわめて一定していることがわかるだろう。グラフにしてみるとこのことはさらに顕著になる。

見ての通り、ほとんどの作品で速度は一定の、秒速3.7ブロック程度である。例外なのはヘラクレスの栄光、ウルティマ恐怖のエクソダスと星をみるひとで、前2者は少し遅い程度だが、星をみるひとは標準の半分以下である。歩くのが遅いと言われている理由がよくわかるだろう。今回はNPCのいない場所で計ったが、本作は町の人などが動くとその間動きが止まるので、実際の速度はもっと遅い。

 他方で、標準より速度が速いものもある。下の4作品がそれで、だいたい標準の倍速といえるだろう。SFC時代には倍速移動は普及したものの、ファミコンの段階ではまだ珍しく、FFやドラクエはまだ採用していない(前者は5、後者は6から倍速導入)。この中でも一番発売が早いのは天地を喰らうの1989年であり、この点で本作はかなりイノベーティブだったといえる。

なぜ歩く速度は一定なのか?

 では、なぜここまで数値が同じなのかを考えてみたい。最初は後続のゲームがドラクエやFFを模倣したからだと推測していたが、模倣するにしてもあまりに速度が一定すぎる。ここまで等しくするには今回のように厳密に速度を測定しなければいけないが、これほど多数のゲームでそれが行われていたとは考えにくい。

 そこで別の考えに至った。この一致は意図的なものよりも、何か技術的な制約の結果ではないだろうか。たとえばファミコンはスプライトの関係上、キャラはだいたい16×16ドットである。そのことが関係しているのではないだろうか。このことを確かめてみよう。ファミコンの解像度は256×240なので、横に何ブロックあるかを計れば1ブロックあたり何ドットのなのかがわかるが、実際に今回扱ったすべてのゲームで1ブロック16ドットだった。

 では今までのブロックをドットに直してみよう。単純に結果を16倍すればいい。そうするとこのようになる。

作品名 ドット/秒
FF1 59.6
FF2 59.3
FF3 59.7
DQ1 59.1
DQ2 59.0
DQ3 59.3
DQ4 59.2
貝獣物語 59.1
サンサーラ・ナーガ 59.3
TAO 58.9
百鬼夜行 59.0
北斗の拳3 59.4
星をみるひと 28.0
ヘラクレスの栄光 55.8
ヘラクレスの栄光2 58.8
MOTHER 58.8
桃太郎伝説 58.6
メタルマックス 60.2
ラグランジュポイント 59.9
ラストハルマゲドン 59.1
ウルティマ恐怖のエクソダス 55.4
ウルティマ聖者への道 59.0
ドラえもんギガゾンビの逆襲 59.3
ナイトガンダム物語2 117.2
ウルトラマン倶楽部3 104.9
ダークロード 115.5
天地を喰らう 117.9

どのゲームも秒速59ドット前後だということがわかる。この数字はほぼ60であり、秒間60といえばファミコンのフレームレートである。本当にファミコンのFPSは60なのかとか、画面更新の周期と処理の周期は同じなのかとかの疑問もあるが、松浦健一郎、司ゆき著『ファミコンの驚くべき発想力』72ページでは、「ファミコンのゲームは、基本的に60分の1秒を周期にして動きます」「ファミコンのゲームは60分の1秒ごとにキャラクタや背景を少しずつ動かし、画面を更新します」と語られている。

 つまり、速度の一致の謎はファミコンRPGのキャラは1フレームに1ドット動いているという、ごく当たり前の話だったというわけである。60ドットより下方にぶれているのは処理に微妙に時間がかかっているか、あるいは実際のフレームレートが60未満なのかもしれない。

 さて、そうなると星をみるひとの問題がさらに大きくなってくる。秒速28.0ドットの数値を叩き出している本作は、2フレームに1ドットの移動も行えていないか、あるいは処理速度が普通のゲームの半分かということだろう。これは明らかにプログラミングに問題があるということであり、歩く速度の計測はこうしたプログラムがヤバいゲームもあぶり出せるのだ。

 一方、例外なのは秒速104.9ドットのウルトラマン倶楽部3である。本作も確かに横は16ドットだが、倍速よりも微妙に遅い。ドットに端数はないので、60フレーム中53フレームほどに2ドット動かし、7フレームは動いていないということなのだろうか。何か特殊な処理を行っていることが想定される。

 いずれにせよ、プレイの快適さに影響するキャラの速度については、少なくともこの時期は技術的制約がそのまま反映されており、特にこだわってデザインされていたわけではないということがわかる。もちろん、倍速の作品などはそうした配慮が存在しているのだが、全体に比べるとごく一部である。

まとめ

 今回わかったことをまとめてみよう。

  • ファミコンRPGのキャラクターはほとんどが、1秒に3.7ブロックの速さで歩く。
  • それは、1フレームに1ドット動かしていることから生じる結果である。
  • 同様に、ファミコンRPGはことごとく1ブロックが16×16ドットである。
  • この時期のキャラの歩く速さは、特に工夫せず1フレーム1ドットとしていた。
  • ただし一部のゲームは、1フレームに2ドットの倍速移動を導入している。
  • 歩く速度が60ドットルールから外れているゲームは、何らかのプログラム上の特殊性が推定される。

ということである。今回は違いがあまり出なかったが、SFC時代には歩く速度が多様化しているはずである。次回はSFCのRPGを計測してみよう。

コメント

「名前」をクリックし「ゲストとして投稿する」にチェックすると登録せずにコメントができます。