◆このごろ堂 >  ◆ゲーム論考
Name:山北 篤

25年前のネットワークゲーム

Date:2005/12/4(日) 12:21

 今回は、昔話をしよう。

 パソコンを使ったネットワークゲームというのが、いつ出来たか。

 あれは1980年、25年前の話だ。当時のパソコンは、PC-8001(88ですらない)とか、ベーシックマスターとか、そんな8ビット機の初期世代がようやく出ていたころだ。MSXすら、まだ存在していない。

 そんな時代に、パソコンをつないでネットワークを作ろうとする大馬鹿者がいた。しかも、どこかの企業でも、大学の研究室でもない。(当時は)部室一つ持たない、単なるクラブのメンバーだ。

 元々、クラブのT先輩が、卒論でLANの基礎理論をやったことが始まりだ。普通なら、紙の上で論文を書いて、それでお仕舞いになったはずだった。だがこのT先輩、作りたがりでやりたがりだったもので、クラブにやってきて後輩に、ネットワークは面白いぞと炊きつけたのだ。

 とはいえ、話だけなら誰も動かなかっただろう。ところがこの先輩、ハードの自作が大好きで、実際にパソコンのRS-232C端子(シリアルインターフェースの一種)にぶら下がる接続用のハードウエアを作って持ってきてしまった。それを見て、ふと乗せられてしまった後輩が二人いた(私と、O君という同学年の友人)。この二人、同じ下宿の隣の部屋に住んでいたものだから、そのハードを借りてきて、ケーブルを隣の部屋まで引いてしまった。

 当時、アスキーでオセロリーグというコンピュータオセロのトーナメントが行われていた。そして、それに参加していた彼らは(といってもやっていたのはO君のほうで、私は時々対戦相手を務めるくらいの協力をしていただけだが)、発表されていた前年度のオセロのソフトにパッチを当てて、回線から打ち手の入力をするようにしてしまったのだ。

 何と便利なんだろう。今まで、毎回手で入力して、勝敗をチェックしていたのに、今やプレイを命令しておきさえすれば、2台のコンピュータが通信して、勝手に結果を出してくれる。

 こいつは便利だ。その光景を目にした友人たちは、誰もがそう思った。これなら、やってみる甲斐がありそうだ。後で、この決断を悔やんだ人も多かったに違いない。こんなに大変だとは思わなかったと。

 当時、確かにイーサネットは存在した(規約が決まるか決まらないかの頃)。ただ、コネクタ一つがウン10万もする時代、そんなものでパソコンをつなごうなどと考えるものは誰もいなかった(誰が本体より高いコネクタを買うものか)。だから、パソコンユーザーはネットワークというものを、見たことも聞いたことも無かったのだ。

 そもそも、LANって何? ネットワークってどうやって動いているの?

 誰も、そんなことは知らなかった。T先輩も、概念は知っていたと思うが、実際に制作したことなど当然無い。だから、そもそもネットワークの接続はどうなっているのか、というところから学び始めなければならなかった。ネットワーク接続が、レイヤーという概念で、管理されていることも知らなかったし、始めのうちは聞いてもちんぷんかんぷんだった。

 そもそも、今まで存在しなかったネットワークを作るのだから、決めなければならないのは、ソフトの仕様だけではない。ハードウェア仕様から、コネクタの形状・ピン配置まで、全て自分たちで決めなければならなかった(もちろん、殆どはT先輩が決めたのだが)。私ですら、生まれて初めてロジック回路を設計することになった。

 具体的なハードウェアとしては、物理レイヤは、20mA電流ループ。そう、テレタイプと同じ(つってもテレタイプを知っている人がどれだけいるやら)仕様だ。これと、パソコンのRS-232C端子(中には、それすらなくてシリアル入出力ボードを組んでソケットに挿すことになったappleIIなんかもあったけど)とを変換する回路が、物理レイヤとなった。もちろん、大事な大事な(学生には高価なものだった)パソコンが破壊されてはいけないので、フォトカップラで電気的には分離した。

 ソフトウェア的には割り込みの使えない機種も多かったことから、ネットワークを見に行っているときだけしかアクセスできないという半端な仕様だった。だが、これもあらゆるパソコンで動くようにしようという意図から、やむをえないものとして採用された(データを受け取るまで待っているサブルーチンと、ちょっと待ってデータをもらえなければ失敗として返ってくるサブルーチンの両方を作成して、少しでも便利にしようという努力は払われた)。

 プロトコルも、管理ユニットがポーリングシーケンスで順番に発信権を回すタイプと、それぞれのマシンがネットワークの空きを待って送信するいわゆるCSMA/CD方式の、両方を開発した。

 10人以上で半年以上かかったが、ある程度のものが動くようになった。つながるマシンも、PC-8001、TK80-BS、ベーシックマスターLevel3、AppleII、PET等、当時出ていた殆どのパソコンで動くようにした。

    ※

 さて、ネットワークは出来た。だが、これってなんの役に立つんだ。通信ができるというだけでは、意味が無い。通信することで、コンピュータが楽しく便利にならなければ、通信する意味など無いではないか。

 そこで、いろんなものがネットワーク上で作られ始めた。

 実際、一番役に立ったのは、『NBASICトランスファー』というソフトだ。これは、当時カセットからロードするしかなかった(高価なフロッピードライブなど、持っている人は殆どいなかった)プログラムを、ネットワーク経由でロードできるようにしたソフトだ。当時、唯一フロッピーが搭載されていたパソコンがAppleIIだった。そこで、AppleIIのフロッピーに、PC-8001のソフトを入れておき、ネットワーク経由でロードしようというわけだ。ネットワークの速度は、わずか4800ボー。笑ってはいけない。これでも、当時のカセットインターフェース(300ボー)の10倍以上速く、しかも読み込みエラーなど起こさない超高速ローダーだったのだ。

 PC-8001用の、プロトコルと『NBASICトランスファー』を焼いたROMが量産され、クラブのPC-8001ユーザーは全員このROMをパソコンに挿した。そして、AppleIIのオーナーのところに、フロッピーディスクを持っていって、データをセーブしてもらったのだ。学園祭のときにこいつは非常に便利で、AppleIIのフロッピーからあらゆるマシンのプログラムをロードするという、現在のディスクサーバそのものの役割を果たしてもらった。

 プリンタサーバーも作った。当時プリンタも大変高価だったので、誰もが持っているものではなかった。そこで、作ったのが、プリントセンター。要するに、プリンタの付いているパソコンに、出力データを送って、そこでプリントしてもらおうというわけだ。もちろん、そんなこと今では当たり前のことだ。だが、忘れないでくれ。これは25年前のことだってことを(考えてみると、プリンタサーバーの発明者も我々なのかもしれない)。

 これも、学園祭などで、かなり活躍をしてくれた。当時の学園祭では、部費の足しにするために、コンピュータ占いなどをやっていた。もちろん、結果はプリンタで出力して渡すわけだ。ところが当時のプリンタは遅くて、しかも出力中はコンピュータを占有する。これでは、次々と客の相手をすることができない。そこで、お客さんの相手をしてデータ入力をするコンピュータと、プリンタで出力するコンピュータを分けてしまった。すると、前のお客さんのプリントをしている間も、次のお客さんの誕生日などを入力することが出来て大変便利であり、しかも客を待たせることが無いので、好評だった。

 そしてもちろん、ゲームだ。何しろ、みんなが面白いと思ったのは、オセロの自動対戦が始まりだったのだから。みんなが色々なゲームを作り始めた。

 最初に出来たのは、テニスだった。PONと呼ばれる。画面の両端に縦棒があって、それを上下に動かして球を打ち返すというだけの簡単なゲームのネットワーク版だ。だが、考えてみると、このゲームこそが、おそらく世界最初のリアルタイム通信対戦ゲームなのだ。

 次に出来たのが、レーダー作戦ゲーム。もちろん、2台のパソコンをつないで、お互い相手の船の場所は見えないようになっている。これも、おそらく世界初の通信対戦シミュレーションゲームと言えるだろう。

 そして、U君の作ったロボットバトルというゲーム。これは、FPS(一人称視点シューティング)対戦ゲームの元祖にあたり、フィールドを移動して、敵を攻撃する。もちろん、後ろに回りこんで敵の背中を撃つことも可能なリアルタイムシューティングゲームだった。

 正直、こいつはものすごく面白かった。そもそも、FPSゲームすらほとんど無かった時代に、その通信対戦版が突然現れてしまったのだ。2台のAPPLEIIでプレイするこのゲーム、余りに面白すぎて酷使されたキーボードが壊れてしまったほどだ(仕方が無いので、みんなで寄付を募ってキーボードを買った)。

 学園祭でも、このゲームは異常なことにプレイ待ちの列が出来てしまうほどだった。プレイヤーは、真剣に(何しろ敵は馬鹿なコンピュータではない。本物の人間なのだ)対戦していた(もちろん、学園祭の後でもキーボードは壊れた。今度は、部費でキーボードを買った)。

 ただ、見ている人には、何が起こっているのかわからない。また、待っている人が暇になってしまう。そこで、学園祭1日目の夜にフィールドを上から見下ろしたマップを表示するプログラムを書き、それを待っている人が見えるように表示した。もちろん、表示するコンピュータはゲームをしているのとは違う3台目のコンピュータ(貴重なappleIIをこんなことに使うのはもったいないので、暇だったベーシックマスターにやらせた)で、そこに両者の位置などのデータを通信で送って表示させているのだ。すると、今度はギャラリーが、後ろだ右だと、やたらうるさくなってしまった。

 これらの内容は、当時のアスキー誌(1981年7~10月)に連載で記事を書いたので、古いコンピュータ技術者などは見たことがあるかもしれない。

 当時でも、ミニコンや大型機で通信ゲームを作った人はいたかもしれない。しかし、そもそも我々以外にパソコンをつないでいた人がいなかった(少なくとも、雑誌などで見たことは無い)以上、パソコンを使った通信ゲームに関してなら、多分世界で最初と言ってもいいはずだ。ネットワークゲームの発明者は我々だと言っても、自信過剰ではないだろう。

左は4人麻雀。もちろん、4台での通信対戦。
右は電子メールと呼んでいるが、実質的にはチャット。
ロボットバトル
両側がプレイヤー用ディスプレイ。右のディスプレイには、敵(左側プレイヤー)のロボット(実は赤いザクだったりする)の背中が見えている。
真ん中のディスプレイは、観戦モード用ディスプレイ。



 今考えてみると、「2台のコンピュータを通信でつないで、リアルタイムゲームを行う仕組み」とか「多数のコンピュータを通信でつないで、共有データで一つのゲームをプレイする仕組み」とかって、特許が取れたような気がする。前者は、いわゆる対戦ゲーム全てをカバーする特許となっただろうし、後者はネットゲーム全てをカバー出来たような気がする。

 冗談で、もし特許をとっていれば、俺たち今頃大金持ちになっていたかもしれないなと言うことはある。だが、当時の我々は、そんなことなど考えもしなかった。ただただ、自分たちが楽しいことをしていただけなのだから。

 ただ、これらのことが周知の事実となっているため(広く販売されている雑誌に記事が掲載されているし、当時朝日新聞主催のコンピュータショーでネットワークの展示と資料配布を行った)、もはやネットワークゲームの特許を取ることは誰にも出来ないはずだ。

 これは非常にいいことだと思う。こっそりネットワークゲームの特許を取って、あちこちのゲーム会社に金払えとかいうソフトウェアゴロのような真似は、絶対にできないからだ。それが判っていれば、今後も安心して色々なネットワークゲームを作ることが出来るということだから。