1994年頃、アメリカに留学していたときに出会ったのが、CompuServeというパソコン通信上に作られたメタバース「WorldsAway」でした。当時は、文字でのコミュニケーションですら簡単ではなかったネット空間に、アバターという考え方を導入し、着せ替えによる個性の主張や、トークン経済すらも構築した稀有な存在でした。このWorldsAwayの原型となったHabitatについて、Chip Morningstar氏らが書いた論文を訳してみました(原文へのリンク)。もしも、この世界を作った彼らがブロックチェーン技術を持っていたら何をするでしょう?
イントロダクション
ルーカスフィルムのハビタットプロジェクトは巨大規模のマルチユーザー仮想環境を作り出そうとした最初の試みの一つであった。高度なユーザーインターフェースと一人当り数万ドルに及ぶコンピュータ使用料を消費する他の仮想空間と違い、ハビタットは公共回線と家庭のコンピュータを利用した、安価なオモチャのようなものとして誕生する。このような「庶民」向けのサービスでありながら、ハビタットは驚くほど大きな発展性を秘めていた。数万人の人口を擁する仮想都市の中で、人々は話し、遊び、冒険をし、ときに恋に落ち、結婚し、そして離婚する。事業を起こし、宗教に出会い、そして、戦争を起こすことも、それに反対することも、そして、小さな政府さえ作ることができた。
ハビタットは真の意味での仮想世界を作り上げることができる可能性を示した。ハビタット世界を作り、それを運営することで、われわれは仮想世界を作り上げるうえで、大切なことを学んだ。この論文では、その「大切なこと」について語ってみたいとおもう。わたしたちは、次世代の仮想空間をつくるひとびとのためにこの記録、特にわれわれの失敗が役にたつことを望んでいる。
ここでは、技術的なことについては多くを語るつもりはない。また、ビジネスとしてのこのプロジェクトについても同様である。将来の展望などについてもある程度のことは述べるつもりだが、多くはいずれ別の機会に語ろうと思う。
われわれがハビタットから学んだこと。それは、仮想空間において最も大切なことは、最新のテクノロジーを使って飾りたてることではなく、そこに住む「役者」同士の「交流」である。DataGloveもヘッドマウントスクリーンも、特殊なレンダリングエンジンもその魅力的な響きとうらはらにむしろ場違いな印象さえあたえる。「仮想空間」とは「誰もが参加できる空間」のことなのである。その空間で、どれだけのことができ、どれだけ個性的なひとびとに出会うことができ、そして、どれだけお互いに影響しあうことができるかがとても大切なことなのである。たとえ、どれだけきれいに飾りたてた世界を作っても、そこに基礎となる「交流」が存在しなければなんの意味もない。
ハビタットとは?
ハビタットは、ネットワークマルチプレーヤー仮想環境であり、ひとびとの新しい娯楽として位置づけられる(その意味でそこに住むひとをプレーヤーと呼ぶことにする)。まず、プレーヤーはそれぞれの自宅のパソコンを利用して、ホストコンピュータにネットワーク経由でアクセスする。パソコンはユーザインターフェースを提供して、ホストコンピュータの上の世界のどこで、誰が何をしているかをプレーヤーに伝える役目を果たす。ホストコンピュータは世界を作り、ルールを決め、すべてのプレーヤーに必要な情報を流すために働く。大切なことは、プレーヤー同士が「交流」することができる点にある。
ハビタットを作るきっかけは、昔のコンピュータハッカーSF「True Names」(1,Vernor Vinge著)から来ている。もちろん、子供の頃のごっこ遊びや、もっと最近のロールプレイングゲームや、その他もろもろの経験が生きている。それに、ちょっとのまぬけさと、サイバーパンク(2,3)とオブジェクト指向プログラミング(4)の味付けを施した。
最初のハビタットはCommodore 64というパソコンを使用した。(なぜ、Commodoreかというと、ハビタットはQuantumLinkというネットワーク用に作られ、そのネットに接続できるのがCommodore 64だったわけである。いってみれば、他に選択の余地がなかったというところか?)画面のほとんどは画像表示用のスクリーンで占められる。そこには、プレーヤーがいる場所から見える空間が写しだされる。画面には家や木など、目にみえるものが整然と配置されている。そして、プレーヤー自身は「アバター」と呼ばれる動く人形になる。アバターはほぼ人間に近い形をしているが、必要以上には人間らしくない。この図は、二人のアバターが会話をしているところである。
アバターは歩いてものを拾ったり捨てたり、装置を操作したり、お互いに表情やしぐさをまじえて話しをしたり、すべてがプレーヤーの意のままに動く。操作はジョイスティック、話すことはキーボードからの入力である。それぞれの「せりふ」はアバターの上に「ふきだし」として現われる。
ハビタット世界はいくつもの「リージョン」とよばれる仕切られた空間からできあがっている。プロトタイプのハビタットは20000ものリージョンからなっていた。ひとつのリージョンは最大4つのリージョンとつながっており、その方向に「歩く」ことで移動できる。扉や通路はさらに他のリージョンへとつながっている。それぞれのリージョンにはアバターがそこでできることを決めるさまざまな「オブジェクト」が置いてあり、プレーヤーはそれをパソコンの画面上で見るわけである。
多くのオブジェクトは演出のための景色を提供する。たとえば空や地面、そして、家やポストなどである。いくつかはある機能を持っている。扉はアバターを別のリージョンへ導き、また鍵をかけたりもできる。ATM(Automatic Token Machines)はアバターの銀行窓口である。ベンディングマシンはハビタットの通貨「トークン」とひきかえに、便利な「物」を提供する。そして、たくさんのオブジェクトはアバターが手に持ったり、ポケットに入れて運んだりすることができる。たとえば、コンテナ、お金、武器、道具、そして、魔法の道具などである。表1に重要なもののリストをあげておく。すべてのオブジェクトの数は数百にも及ぶ。
表1
クラス | 機能 |
ATM Avatar Bag, Box Book Bureaucrat-in-a-box Change-o-matic Chest, Safe Club, Gun, Knife Compass Door Drugs Elevator Flashlight Fountain Game piece Garbage can Glue Ground, Sky Head Key Knick-knack Magic wand Paper Pawn machine Plant, Rock, Tree Region Sensor Sign Stun gun Tleport booth Tokens Vendroid | アバターの銀行窓口 ハビタット世界でのプレーヤー ものをしまって持ち運ぶためのもの アバターが読むことができるドキュメント(新聞など) シスオペとの会話用 性転換 保存用 武器 西極(北極みたいなもの?訳者)を指し示す 他のリージョンへの扉 鍵がかかる 様々な効用 傷の治療など エレベーター 暗いところを照らす 景色 システムデザイナーとの連絡用(?) バックギャモン、チェッカー、チェスなどの駒 いらないものを捨てる オブジェクトをくっつける 世界の下絵を提供 カスタマイズできるアバターの頭部 扉や箱の鍵 役にたたないもの 主に装飾用 ほとんどすべてのことができる 記述用 手紙としても使われる ものの買い取り 景色 リアリティーの根源 世界の見えない部分を感じ取る テキストを他のオブジェクトにはりつける 危険のない銃 遠くの場所への移動手段 ハビタットの通貨 ものを売るための自動販売機 |
ここで、簡単にシステムについて説明する。
ハビタットの心臓部はオブジェクト指向の世界観である。
パソコンのプログラムははシステムカーネルとオブジェクトから成る。カーネルはメモリーの面倒をみたり、画面を描いたり、ディスクの管理をしたり、ネットワーク、その他のシステム管理を行なう。オブジェクトは世界そのものを構築する要素である。それぞれのタイプのハビタットオブジェクトはアニメーション情報を含む画像、音声、それ自体の実行可能なプログラムの塊などを内包している。それぞれのオブジェクトに書き込まれたプログラムはプレーヤーの操作やシステムの命令に応じて、様々な効果をもたらすようにできている。ちょうど、クラス、メソッド、メッセージといったものを使うSmalltalkに似ている(5)。それぞれのオブジェクトはパソコンのメモリーを消費するので、すべてのオブジェクトを同時に読み込むことはできない。そこで、必要なときだけ、ディスクからメモリーに読みこんで、いらなくなったら、捨てるということを繰り返す。
あるオブジェクトが必要になったとき、メモリーに必要な空領域を作る。始めの数バイトがすべてのオブジェクトに共通の、オブジェクトの場所や表示方法などをストックする。この情報はカーネルによって読み込まれ、実際の画面に反映される。その他の部分はオブジェクトによって異なっており、オブジェクトに組み込まれたプログラムによってのみ利用される。
オブジェクトの動きはプレーヤーの命令に反応するようになっている。それぞれの動きは単純なサブルーチンの繰り返しであるが、ときには他のオブジェクトにさらなる命令を送ったり、ホストコンピュータに要求を出したりすることもある。このような基本的な動き以外に、ホストコンピュータから直接下される命令も存在する。
ホストコンピュータもオブジェクト指向型の世界管理をおこなっている。ちょうどプレーヤーのパソコン上と同じようにオブジェクトはメモリー上で、決められた動きをする。ホストコンピュータ上では、世界のすべての事象を管理するために、必要ないオブジェクトの「状態」をディスクに保存もしている。ホスト上でのオブジェクトの動きはプレーヤーのパソコンから送られる命令によって支配されている。たとえば、プレーヤーのパソコンからある動作をするようにメッセージを受け取ると、ホスト上の世界情報に若干の変化が起こり、その変化を命令を送ったプレーヤーと同じリージョンにいるすべてのプレーヤーのパソコンに送り返す。
レッスン(ハビタットから学んだこと)
限られた紙面で、少しでも多くの情報を提供するために、できるだけ、具体的な例を交えて述べる。より細部にわたる説明や理論はまた別の機会に述べることにする。
最も重要な原則についてはすでに述べた。
複数のユーザーが参加できることが仮想空間の必要最低条件である
仮想空間において最も根源的な原理は複数のユーザーが参加できる環境を提供することであることに間違いはない。ひとびとが仮想空間に求めるのはより豪華で、複雑で、そして深遠であることである。しかし、現実の社会はもとより、人間そのものの複雑さにまさるものは存在しない。そこでわれわれは、本物の人間同士が「交流」しあう、「場所と方法」を提供しようと考えた。
われわれの目指すものが先に述べた仮想空間である以上、最低限のコミュニケーション手段を扱えることは必須である。しかし、ここで、もうひとつ重要なことがある。
ユーザーのコネクションスピードがボトルネックである
この点は、コマーシャルネットワークを利用するハビタットにとって、実にシビアな問題を提起した。たった300bps(公共のパケット通信網を利用する場合それプラス0.1から5秒/パケットの遅れ)で、ユーザーに満足を与えるものでなければならないのである。
たとえ、もっと近代的なネットワークを利用したとしても、経済学者が言うところの、「輸送手段には必ず限界がある」という法則に従わなくてはならない。需要と供給の法則によれば、どれだけのキャパシティーがあってもひとは満足することはないのである。たとえ、すべての人がギガbpsレベルのキャパシティーを持った光ケーブルを自宅に引けたとしても、そのころにはコンピュータテクノロジーはそれ以上を要求するようになっているだろう。プロセッサーがより多くの情報を処理するようになるおかげで、データ圧縮技術は永遠に捨て去られる心配はないわけである(その頃圧縮されているものといえば、高解像度、大容量のビデオデータか、さらにそれよりも深遠なるものであるだろうけどね)(6)。
コンピュータ学者には還元論者が多い。システムをより細かな要素に分解して理解しようとする傾向がある。画像中心の仮想空間で彼等がやろうとすることは、より小さなドット単位のイメージングか、あるいはポリゴンのようなものを使うことである。しかし、これらは破滅への最短コースでしかない。これらは単なる「技術」であって、システムの要求するものでは必ずしもないのである。
そこで、われわれの最も必要とするものはなんだろう。そう、人間の行動様式である。これはわれわれに都合の良い、じつにコンパクトで直感的な行動原理によって、表わすことができる。これを3番目の原理にする。
オブジェクト指向型の世界観
最近のプログラミングの風潮とあいまって、この原理に議論の余地はなかろう。しかし単にプログラム上の問題以上に、世界を構成するオブジェクト、人、場所、そして、もろもろの物でできた人々の仮想空間のイメージになじむ必要がある。だから、オブジェクトプログラミングだからポリゴンを使えばいいというのは短絡思考すぎである。
われわれが目指すものは、パソコン上でわれわれの日常生活で行なわれているひと同士、ひとと物の「交流」を実現することであって、見た目がどう変わるかをことこまかに計算することではない。仮想空間で重要なことは、そこに何があるのか、であって、その場所がどのように見えるかではないのである。オブジェクト同士の「交流」は物レベルのものではなく、「機能」レベルで行なわれなければならない。このレベルの「交流」をユーザーが感じ取るように翻訳するのがパソコン上で動くプログラムの仕事である。画像のレンダリングや力学計算もいいが、限られたコネクションスピードをそんなもののためにさく必要があるだろうか?結果はわかっている。 NAPLPSの崩壊である(7、8)。
さて、ここで一度現実問題だけでなく、コンセプトの問題にも触れてみたい。
動作環境やプラットフォームは比較的融通がきく
実際の動作環境とコンセプト的な問題は切り離して考えるべきではない。しかし、あえて、仮想的な環境を設定して、オブジェクトのことを考えることが、いろいろな動作環境にあるユーザーのことを考慮する結果につながる。たとえば、木のような景観オブジェクトはほんの少しのパラメータであらわすこともできるし、逆もまたしかりである。たとえば、Altair 8800の300bpsターミナルのようなテキストベースのローエンドマシンを考えると、この木は「ここに木があります」という一文で表わされることになる。ハイエンドのグラフィックコンピュータ上では、木はフラクタルを駆使して3次元的にモデリングされ、リアルタイムレイトレーシングされ、風にそよぐ音までもがヘッドフォンを通じてステレオで聞こえてくるような表現も可能である。ここで、この2人のユーザーが同じ場所、同じ時に同じ木を見て語り合うような状況も起こりうる。しかし、現実にはこのような状況はまず起こらない。なぜなら、まずより良いマシンが安く手にはいる状況であえて、例のようなポンコツを使うひとはまれである。また、逆の例にあるようなグラフィックコンピュータはまだこの世には存在しない。しかし、ここで言いたいことは、時代遅れのシステムもあれば、デザイナーのあこがれの的のようなシステムも存在する環境のことを考える必要があるということである。さて、結論その1。われわれは現在の技術を使って、現実的な仮想空間を創造できるということ。ハビタットがその良い例である。結論2。現代のテクノロジーの進歩について、少しばかり考慮することで、あなたのシステムは時代にとりのこされることなく成長できる。現実の世界の進歩にとりのこされないように、成長するためのキャパシティーを持たせることが、今後コミュニケーションの主役となるであろう仮想空間構築の鍵である。
仮想空間はユーザーインターフェースのモデルではなく,新しいコミュニケーションツールであり,オブジェクト指向の世界観であることから,最後の結論が導かれる.
データ転送形式を定めることが不可欠である
といっても,データ転送方式の基準を定めるというよりは,送られるデータそのものの形式を定めることが重要である.A地点から,B地点にどうやってデータを送るか,その方法にあまりこだわるつもりはない.ただ,注意して欲しいのはこれが決して軽視してよいものであると言っているわけではないことである.われわれが言いたいのは,仮想空間のオブジェクト指向の世界観を構築するために必要なものは何か.それを満足させるようなデータ形式を定めなければならないということである.オブジェクト同士は,表面的ではなく,機能的にデータをやりとりする.これは各コンピュータの中だけでなく,複数のシステムの間でもやりとりされる必要がある.
オブジェクト同士のコミュニケーションの定義が重要であることはわかっていた.しかし,ハビタットにおいては,本当の意味でのオブジェクト間コミュニケーションは実現できなかった.システムがより進化して,能動コンピュータシステムが実現した時点で,われわれは再びこの問題にたちむかわなければならないだろう.システムが進化するためには新しいクラスのオブジェクトを重ねあわせていくことができなければならないからである.
コミュニケーション形式の話しがでたので,ここでISOが定めるオープンシステム間の接続に関する定義について述べたいと思う(9).この多重構造は今日のデータ転送形式の根幹をなすものである.この定義はあまりに堅固なために,表2に示すような形式に沿わないようなシステムは事実上存在しない.下から4から5層までは比較的われわれのコミュニケーション形式を考える上で役にたったのだが,Presentation(表示)とApplication(アプリケーション)層は仮想空間のコミュニケーション形式とまったく矛盾するものであった.
表2 7階層のISOモデル
Level | 機能 |
7 6 5 4 3 2 1 | Application Presentation Session Transport Network Link Physical |
われわれは,ISOモデルには2つの欠点があったと考える:ひとつ目は,ISOモデルの区分が仮想空間構築の要求に応えてくれない点.もうひとつのより重要な点は,システムデザイナーを間違った方向に導くことで,多くの時間を浪費させた点である.特にPresentationとApplicationレベルの階層は仮想空間でのコミュニケーション形式に単にそぐわないとしかいいようがない.Presentation階層は画面の表示形式がすでに規定されているものと仮定している.すでに述べたことからわかるように,この様な仮定は必要ないし,あってはならないものである.Application階層が定めるメッセージベースの規格はわれわれが作ろうとしている能動的に進化するオブジェクトとは相反するものになってしまう.
そこで,われわれのプランによりマッチする新しい階層を定義しようと思う(表3):Message(メッセージ)階層はオブジェクト間で送られる低レベルのデータ形式(例えば数字)の梱包方法と,転送方法を規定する.Definition(定義)階層はMessage階層の上に位置しオブジェクトの表示形式を規定する.これによって,オブジェクトは複数のコンピュータの間をストレスなく行き来できるようになる.これらは,PresentationとApplicationの再定義に過ぎないではないか,といわれるかもしれない.しかし,現実にはISOの規格は現場のプログラマーの注意を本当に重要なものからそらしてしまうこともあるのである.
表3 ISOモデルの改良版
Level | 機能 |
6 5 4 3 2 1 | Definition Message Transport Network Link Physical |
世界の構築
ハビタットを作るにあたって,2つの壁を超える必要があった.ひとつは,テクノロジー:アニメーションエンジンや,オブジェクト指向の仮想メモリー,メッセージ転送のための仮想システムの設計,そしてこれらをあのCommodore 64にいかに詰め込むか(もちろん,ホストコンピュータ側にもいろいろと問題はあったが,それほどたちの悪いものではなかった).2つ目はハビタット世界そのものの設計である.これは多くの試行錯誤の結果であり,将来の仮想世界デザイナーの参考になりうるものであろう.
われわれは,最初,われわれエンジニアが陥りやすいもっとも危険な落し穴に落ちてしまった.それは,すべての計画は実行前に完成されているべきであり,まず,細かな定義を規定して,それにすべて従わなければならないと信じていたことである.少なくとも,学校で教わった,比較的単純で,技術的にも完成されたプロジェクトを実行する場合にはそれで良い.また,多くの現実的なプログラム構築に関してもあてはまるものである.だから,これはプログラマーの美徳と考えられてもおかしくないしろものである.しかし,Maslowの言葉を借りると「金槌しか持っていないひとの目には世界は釘としか写らないだろう」であり,われわれはそれが通用しないレベルに踏み込んだにもかかわらず,それに気付かないでいたのである.プロジェクトの複雑さが人間の理解の限界を超えていたことに.
例えば,システムが大きくなりすぎたときにそれは起こる.スペースシャトルやB-2 爆撃機の設計はひとの理解の限界を超えたところにある.それを補うために,時間のかかる多くのチェック作業や,その他の手順を規定して,それでも完璧を期することはできない.これには多くのお金もかかる.しかし,そのような大金を投じることのできるプロジェクトはごく限られており,大抵の場合は,限られた予算内でおこなわなければならない.その上,人間の限界はそういう大金を投じることのできるプロジェクトだけにあらわれるわけでもないのである.あまりに複雑になったシステムにカオス的な要素を導入して,デザイナーのコントロールできないところで実行させることもできないではない.自律形式のコンピュータなどがいい例であろう.しかし,ごくシンプルなコミュニケーションプロトコールのバグ取りが思いもかけないくらい難しかったりする理由のひとつとなっている.さらに,人間同士の関わりあいがからんできたりするともう自律コンピュータなんてレベルではないのである.これが,われわれの次の定義(そしておそらく最も重要な定義)になる.
事前にこと細かな計画をたてることは不可能である.けっして試みてはならない.
つまらない先入観のために大きな問題をかかえることになったプログラマーたちはコンピュータ学者より,経済学者や社会学者から多くを学ぶことになる(10ー15).ゲームやシミュレーションデザイナーはあくまで個人かせいぜい数人のグループを対象にした仮想空間を作ればよい.しかし,彼等がより多くのユーザー同時に参加する世界を作れるかというと,それは無理というものである.なぜなら,それぞれのユーザーはお互いになんの関わりも無く,同じ景色が何度も何度も繰り返し使われるのがゲームやシミュレーションだからである.たとえ,何千人ものひとが同じアドベンチャーゲームで遊んでも,お互いになんの関わりも,影響しあうこともないのである.だから,デザイナーは何千回も繰り返し使われるであろう背景や,デザインに集中していれば良いのである.
オンラインコミュニケーションを構築した人々は確かに大変な数のユーザーを相手にした.しかし,テキストレベルより高度な環境を提供しようとしたことはなかった.だから,増えすぎたユーザーは単に,ホストコンピュータのキャパシティーの問題として片付けることができ,決してシステムが複雑すぎるようになることはなかったのである.すべてのユーザーには同じ情報が提供された.これは先のアドベンチャーゲームの例とまったく同じ状況である.つまりユーザーの数によって情報の大きさや,複雑さが変わることはないのである.たしかに,情報量そのものはユーザーの数に比例して大きくなるだろうが,これらの情報はある決まった型にはめることによって,小人数でも簡単に取り扱えるものに過ぎない.だから,複雑さのツケはシステムデザイナーではなくユーザーに跳ね返るだけである.システムオペレータは交通整理をやっていればよい(これはわれわれが仮想世界を構築するときの,自分たちの役割だとも思っていた).
ハビタットの最初の設計は20000人のアバターをサポートできるよう定義された.それはさらに50000人まで拡張できる計画であった.どんなに低く見積もってもこれが複雑さの問題につながることは容易に想像できた.しかし,複雑さの限界は思ったよりも早く来た.人口が50人あたりに来たときに(これらの50人は苦痛に満ちた状況にあらかじめ充分対処できる「身内」であったにもかかわらずである).
さらに,ハビタットのような仮想世界は人口とともに拡張できなければならない.20000人のアバターのためには20000件のアパートを用意しなければならないし,そのためのショッピングセンターや娯楽施設,交通整理も必要になる.われわれは人々が一箇所に集まるのを防ぐために各町のあいだに荒れ地を設けなければならなかった.とにかく,なにもかも20000人分のものを用意しなければならなかったのである.かれらは面白い場所に集まりたがった.一箇所に入り切れない群衆は,結果,多くの面白い場所を必要とした.そして,新しい場所ができるたびに同じことが繰り返された.家,街,道,店,森,劇場,アリーナ,それぞれが個性を持つように,デザインしなければならなかった.われわれの全知全能シスオペ計画はもろくも崩れ去ったのである.
アパートや道路などの比較的普遍性のある場所は自動作製ツールにたよることもできた.実際われわれは多くのそういったツールを作ったし,この手のツールは未来の仮想空間でも重宝されるにちがいないものである.しかし,そういった手抜きリージョンはまた,最も魅力に乏しいものでもある.実際,すべてのアパートが同じ形をしていようと,それはさほど大きな問題ではない.しかし,すべての森が同じであることは問題である.特別な特徴を持った,少なくとも他と何らかの違いを持った場所は,どうしても手作りにたよらざるを得ない.これは大変な重労働であり,時間もかかる.デザイナーのイマジネーションにも限りがある.特に,今まで描いたこともないようなものを要求されればなおさらである.
世界を動かす
もし人々の興味や行動が画一的なものであれば,世界を描くことの問題も解決できるだろう.しかし,実際の人間はそれぞれみな違った興味を持ち,行動もまちまちである.普通のゲームのデザイナーはユーザーを自分の思った方向に誘導するようにゲームをデザインして,人々をただ決まったゴールに導けばよいので簡単である.しかし,ハビタットには決まったゴールもなく,ゴールがないことがむしろ特色なのである.プレーヤーは自分でやりたいことを選び,自分の嗜好にしたがって行動できる.われわれが提供するのは宝探しのような明確なルールと目標を持ったイベントから,ビジネスを起こしたり,新聞を発行したりといったプレーヤー主体の活動,そして,まったく自由な友達との会話といったものまでカバーされる.しかし,ほとんどの活動はある程度の準備とセットアップを必要とした.われわれは仮想世界の海で道を示す航海士であると同時にゲームデザイナーでもあり続けようとしたのである.
ハビタットで最初の,目標設定タイプのイベントは「D’nalsi Island Adventure」という名前の宝探しだった.企画に数時間をかけ,準備にはじつに数週間を費やした(そのために100リージョンから成る島を作ったのである).そしてそのあとの数日は役者の訓練にあてた.このイベントはアドベンチャーゲームの中でのパズルに良く似ている.実際このパズルは最初の15分で鍵を見つけた個人によって8時間程で解かれてしまったのである.そのおかげで,ほとんどのひとはゲームに参加する機会さえ与えられなかった.結果はたったひとりの人間がおおいに楽しんだだけで,多くは取り残され,準備にかけた時間もあっというまに無に帰すことになったのである.確かにわれわれはハビタットの住人にはさまざまなスキルを持ったひとがいることを知っていた.しかし,やってみるまで,参加すらできないひとが沢山いることまでは予想できなかった.実際,ばかげたイベントになってしまったのである.
イベントがまったく予期しない結果に終わることが,プレーヤーの行動の予測が不十分であるために起こるわけではなかった.実際,コントロールできない部分があるのである.より多くのプレーヤーが参加することで,その度合はますます上昇した.われわれができることは,面白い状況を作り出し,びっくり箱をしかけることくらいで,結果を規定することはできなかった.社会学は厳密な意味の科学ではない.(一説によれば,本当に注意深く実験を整えたところで,生物は自分勝手に行動するらしい).
これらの経験を踏まえて,われわれはイベントのデザインそのものをプレーヤーにゆだねることにした.これは,実際うまくいった.全体をある方向に押しやるより,自由に行きたいほうに行かせることにしたのである.ねずみの群れを見守るように,人々がどのように行動し,自分たちを導くのか観察することにした.デザイナーであると同時にわれわれはひとびとを手伝う立場となったのである.われわれは世界に新しい機能やリージョンを次々と持ち込んだが,そのほとんどが受け入れられ実際に利用された.なぜなら,それはひとびとの要求に合わせたものであったからである.システムを構築したものとして,ひとびとに新しいイベントを提案することもあった.このようにして,われわれはハンドルを握り締める必要もなく,システム全体を進化させることができるようになった.われわれの影響力は,自分達ですべてまかなおうとしていた頃以上に大きくなったのである.
このような巨大システムは,管理者による集中管理に対して疑問を投げかけ,進化論,経済論的な考え方の必要性を提案する(16ー18).このような考え方はすべてのタイプの複雑なシステムに適用できる.ひと同士の交流はいうまでもないことである.
大論争
ハビタット世界には銃をはじめとした武器も存在した.それは,ひとびとに言葉だけでなく,もっと生死にかかわるような影響を与え合う機会を与えるためである.昔の吟遊詩人ではないけれど,ドラマに戦いは不可欠であると考えた.もちろん,ハビタット世界での死は,現実の死とは異なる.アバターが殺されると,自分のアパートにテレポートする.手には自分の頭を,そしてポケットに入っていたものは失われ,手に持っていたものは殺人現場に残されるのである.死というよりも,むしろ「Chutes and Ladders」ゲームをリセットした時のようなものである.しかし,どんな形にしろ,死はひとびとの心に多大なる影響力を持っていた.殺人やその他の犯罪の可能性を秘めていることがハビタット世界に論争をもたらした.ひとの持ち物をかすめとるような,軽犯罪がそれに油をそそいだ.
はじめわれわれはほとんど法律のようなものを作らなかった.ハビタット社会がどうあるべきかについては多くの議論がかわされた.ほとんどの議論の焦点は:アバターは人間としてみなされるべきかということであった.つまり,現実の人間と同じように扱われるべきか,それともパックマンのキャラクターのように何千もの死を乗り越えるべきなのか.ハビタット殺人は犯罪か?武器を捨てるべきか?あるアバターが無差別にひとを撃ちまくったこともあった.議論は白熱し,われわれが決をとることになった.結果は半数がハビタット殺人は犯罪であるとし,残りは,ハビタットゲームに不可欠な娯楽であると答えた.
折衷案として,われわれは街の外でのみ,銃撃と窃盗を許すようにシステムを改変した.荒野は無法の危険地帯,街は市民が安心して暮らせる場所と定めたのである.しかし,これは問題の解決にはならなかった.そして,ひとりの反暴力派の代表が「Holy Walnut」というハビタット初の教会を開いた(彼は本物のギリシャ教会の牧師であった).彼は,その信徒に銃の不所持を説き,窃盗とあらゆる種類の暴力への関与を禁じた.彼の教会は大人気を博し,彼はハビタット社会で最も尊敬されるひとりになったのである.
その後,われわれがひとから直接ものを奪うことができなくしたにもかかわらず,ひとの隙をついたり,ものが地面に置かれた瞬間をねらった窃盗はなくならなかった.荒野で繰り返される暴力も一部のプレーヤーを悩ませていた.多くのひとびとはこのような犯罪は禁じられるべきであり,少なくとも罰せられるべきだと考えていた.ただどうすれば良いかがわからなかった.皆,法律や正義を与えられることに慣れてしまっていたのである.結局だれかが,保安官制度を提案した.われわれは急いで投票システムを作り,選挙のためにボランティアを募った.街のミーティングホールでの議論には多くのひとが参加し,3人の候補者が演説を行い,質問に答えた.そして,ポピュロポリス初の保安官が誕生した.
数週間が過ぎ,保安官はひとびとの尊敬を集め,ある程度の道徳上の権限を得ていた.しかし,われわれはどのような「力」を彼に与えるべきかで悩んでいた.彼が場所にかかわらずひとを撃つことができるようにすべきか?彼にもっと強い銃を与えるべきか?犯人を牢獄にテレポートさせる魔法の杖は?法廷はどうすべきか?法律は?弁護士は?結局,プレーヤーの国民投票にゆだねることになった.しかし,残念ながらテスト期間が終わり,結論を出す前にシステムダウンとなってしまった.しかし,明らかに,2つの勢力が存在した.無政府派と政府派である.この結論は将来の仮想世界の構築にゆだねられることとなった.しかし,大切なことは,始めから「政府」を作ってしまうのではなく,必要に応じて生み出されるようにすることであろう.
警告
すでに述べたように,世界のコントロールはユーザーにゆだねられるべきであるが,ここでひとつ警告を発したい.
誰も信じられない
これは,いまままで述べてきたことを否定するように見えるかもしれない.しかし,仮想世界のデザイナーとオペレーターは2つのレベルの仮想世界を同時に扱わなければならないのである.最初のレベルを「意識下レベル」つまり,リアリティーそのものが生み出される叩き台となる世界である.次のレベルは「知覚レベル」.ユーザーが見たり感じたりする世界のことである.このふたつの世界は完全に独立して管理されなければならない.最初のレベルは世界の物理的法則を構築する.この世界の崩壊は美的外観を損なうレベルから(見えるはずのないものが見えたりする),精神的な苦痛(できないはずのことができるひとがあらわれることにより,ひとの期待を裏切り,夢を奪う),そして完全な世界の破滅(だれかがシステムをクラッシュさせる)までさまざまな結果をもたらす.ユーザーにコントロールをまかせるというのは「知覚レベル」のコントロールのことであるから,間違わないように.「意識下レベル」へのアクセスを許可できるレベルにひとを信じることはできないということである.その良い例をあげてみよう.
ひとつのプログラムを作るとき,普通はユーザーとデータの間の交流が存在すると考える(いくつかのアプリケーションがデータを共有することもあるかもしれないが,原理は同じである).一般的に,ユーザーはアプリケーションがデータをどのように扱っているか知る必要はない.むしろ,良くできたアプリケーションはユーザーから,みっともない技術的な背景を見えなくするものである.技術的なことに興味のあるひとが内部構造に興味を持つことはあるかもしれないが,多くの場合,そういうものは隠しておいた方が良いものである.アプリケーションの目的は,データを簡単に取扱い,加工できるようにすることである.しかし例外もある.多くのゲームプログラマーはゲームを面白くするためにあえて障害を設ける.プログラムの裏側をのぞいて,データファイルを読みだし,プログラムを解読し,可能ならばそれを改造する.つまり「ずる」をすることもできる.しかし,この手の「ずる」は結局多くの場合「ずる」をしたひとの個人的な満足で終わる.
しかし,複数のプレーヤーでするコンピュータゲームでは,ひとりの人間が本当の「ずる」をすることができる.つまり,他のプレーヤーにばれないように自分に有利なようにゲームを改造することができるということである.ハビタットはそのようなゲームのひとつである.ハビタットのプログラムを作るときのわれわれの「大原則」はプレーヤーがいかなる方法ももってしても,ホストコンピュータにハックをかけることができないようにすることであった.それは,ハッカーがパソコン上のプログラムを改変して「自分に都合の良い機能」を付け加えるのを防ぐことであった.例えば,ハビタットには普通のゲームに見られる「スキルアンドアクション」が存在しない.つまり,改変されたプログラムにより虚偽の「当たり」判定が出ることがない.QuantumLinkはごく初期から,このことについて警告を発していた.実際彼等はすでにその手のハッキングを経験していたのである.100kbytesにも及ぶ堅固で異様とも思えるコードを解析する人間なんているのだろうか?答えはイエスである.やった人間がいるのである.われわれのプログラムも完璧にそのような攻撃から守られるようにはできていない.いくつかの機能はローエンドのプログラムをハックしても大勢に影響ないと仮定してプロテクトから解放することで,プログラミングが非常に簡単になるケースもあった.しかし,思いもかけない方法で攻撃されることもあるかもしれない.
世界全体の構築そのものにも注意が払われた.パイロットテストでも何人かのプレーヤーはシステムのバグを探しては,裏業として賞賛した.まず,アバターは2000トークンを持って産まれる.そして一日100トークンが自動的に口座に振り込まれる.事業を起こしたり,コンテストに入賞したり,隠された財宝を発見することでさらに収入を得ることができる.稼いだトークンを持ってベンドロイドと呼ばれる自動販売機に行き,物を買うことができる.ポーンマシーンは不要な物を買いとってくれる.
この自動化された経済をもう少し面白くするために,それぞれのベンドロイドは独自の価格設定を持っていた.つまりジャックの店で買ったほうが,スーパーマーケットで買うより安いということが起こりうる様にである.しかし,2つの離れたところにあるベンドロイドの2つの品物がポーンマシンが買い取る価格よりも安い値段で売られていたのである.人形(75トークン,買い取り価格100トークン)と水晶玉(18000トークン,買い取り30000トークン).何人かがそれを発見した.ある晩かれらは全財産を持って,まず人形のベンドロイドに行き,買えるだけの人形を買った.そのあと街の反対側のポーンマシンでそれを換金した.ベンドロイドとポーンマシンの間を何時間も行ったり来たりを繰り返して水晶玉を買えるだけのトークンを蓄えた.あとは,水晶玉で同じことを繰り返して,少なくとも3人のアバターが数十万トークンを稼いだ.われわれは翌朝,トークンの供給量が5倍になっていることで,このことに始めて気付いた.
われわれは始めソフトウエアのバグではないかと思ったが,バグは報告されていなかった.しばらく調査する内に,何人かのアバターの預金残高が異様に増えているのに気付いた.その中でももっとも多くのトークンをひと晩で稼いでいる2人のアバターにハビタットメールで問い合わせてみたところ,「合法的な方法で稼いだんだ.方法?教えないよ!」という返事が返ってきた.われわれの落胆した姿を見て,やっと彼等は方法を教えてくれた.われわれはすぐに価格を修正した.幸運にも彼等は自分達の主催する宝探しにこのトークンを使い,多くのひとが楽しむことができた.
「リアリティー」を大切に
「意識下レベル」を操作して「知覚レベル」を変えてみたいという衝動は,プレーヤーだけではなくシステムオペレーターにもある.しかし,彼等がそのような衝動にかられるのは非合法な利益を得るためではなく,合法的にシステムをより良くしたいという欲求からである.しかし,ここにも,重要な原則がある.
システムに手を加えてはならない
操作がより簡単になるとか,皆がもっと快適に暮らせるようになるための「知覚レベル」での操作はすべきである.これは,技術的な点にも社会的な点にもあてはまる.
たとえば,ちゃんとコントロールされたプレーヤーなら,われわれが技術的ボトルネックにならない限り,ハビタット世界をどんどん成長させることができる.新しいリージョンや機能を付け加えることはわれわれを通さなければならない.リージョンを作るにはわかりにくいツールや,Commodore 64による制限事項などを熟知していなければできない.それ以外にもさまざまな面倒な点があり,それを知ると夢を失ってしまうプレーヤーも多いであろう.しかし,次世代のハビタットはもっと多くの創造力をプレーヤーに与え,あやしげな坊主達の活動を抑えたものになるであろう.
もうひとつのシステム管理にかかわる事象は次の例からうかがい知ることができるだろう.ハビタットの人気イベントがテストも後半に入った頃行われた.最近QuantumLinkの社員になったヘビーユーザーの一人が提案した「Dungeon of Death (死の迷宮)」である.
何週間も前からハビタット新聞The Rantで宣伝された内容はこうである.恐怖の兄弟DeathとShadowが巣穴でおまえ達が来るのを待っている.ほどなく,街はずれに迷宮への入り口が現われた.入り口には「危険!当局は一切責任を持ちません.」の一文が.2人のシスオペがDeathとShadowに扮してログインし,手には1発で致命傷を負わせることができる特別な銃を持って待ち構えた(普通の銃は致死まで12発かかる).2人は会うものすべてをなぎ倒しながら,迷宮を駆け巡った.かれらは,他のアバターに負わされた傷を癒すための魔法の杖も持っていたため,決して殺されるはずがなかった.迷宮は行き止まりや,病的ともいえるつながり方をしてい,いくつもの罠が仕掛けられていた.迷宮を解読するために何回かの死を経験することは誰の目にも明らかであった.しかし,ご褒美もすこぶる良かった.1000トークンとテレポーテーションの魔法の杖を売っているベンドロイドへのアクセスであった.さらに迷宮に入る前に,ポケットを空にするよう警告を受けるようになっており,「殺される」代償が最小限に抑えられた.
ある晩,シスオペのひとりがDeathの役を演じていた.われわれが迷宮に入ってみると彼は4人のアバターを行き止まりの通路に閉じ込めていた.そこで,われわれも構わず撃ちはじめた.ところが,Death役のシスオペはどういうわけか魔法の杖を使って傷を直すことをしなかったために,結局死んでしまったのである.先に述べたように,アバターが死んだ場合手に持っていたものはその場に残されるしくみになっている.当然,その場にいた普通のアバターのひとりがそれを拾って持ち去った.普通のアバターが持つべきではない一撃必殺の銃を.さてどうしたものか?
実はあとでわかったことなのだが,同じことはそれ以前にも何度か起こっていた.このときDeathを演じていたのはQuantumLink (Q-Link)のシスオペで単純に,プレーヤーに銃を返すように言った.しかし,プレーヤーは正当な方法で勝ちとったものだからと,返すのを拒んだ.シスオペはそれならプレーヤーのアカウントを抹消すると脅したので,プレーヤーは仕方なく銃を返した.しかし,このことで彼自身も,友人もひどく傷つけられたのはいうまでもない.
Habitatのシスオペであるわれわれの場合は,まず銃を手にしているアバターにDeathとして,もし銃をもってこないのなら,こちらから殺しにいくぞ!と脅しをかけた.しかし彼女は街のなかにずっといればDeathだって彼女を殺しにはこれないでしょうと返事をしてきた(これは事実であった).わかった,彼女は頭がいい.そこで,Deathは10000トークンで銃を買い取ると伝えた.結局,いろいろと苦労して街の中心で第3者のアバター立会のもとで,買戻しがなされた.もちろん噂は広がり,その場には沢山の見物人が押し寄せた.結局われわれはDeath役を最後まで演じ切ったのである.この事件は翌朝の新聞にも書かれ,しばらくのあいだ,街中のうわさに上った.銃を持っていたアバターはDeathをやりこめた主役として残り,われわれは銃を取り戻し,そして皆が幸せになった.
この2つの典型的な管理上の対応がすべてを語っている.ユーザーと同じレベルでの対応は非常に良い結果をもたらすのに対し,軽率な対応は怒りと落胆をもたらした.
現在のHabitat
この原稿を書いている時点で,ルーカスフィルムのハビタットはQ-Linkの「Club Caribe」として満2歳を迎えようとしている.今でもCommodore 64を使い,多少改良されたホストシステムを使用しているようである.利用者は約15000人を数える.
技術的により進歩した富士通のハビタットのテストが最近ニフティーサーブ上で始まった.パソコンには富士通のFMタウンズを使い,いずれは他の機種にも移植される予定である.タウンズの画像処理能力とCD-ROMの搭載により,さらにパワーアップされている.しかし,富士通はこれまでのユーザーインターフェースや,コンセプトにはほとんど手を加えていない.
将来の展望
将来このプロジェクトが発展するにはいくつかの方向が考えられる.まず,ハードウエアの進歩によりより繊細な画面表示ができるようになることであろう.ユーザーインターフェースも改良されるに違いない.しかしわれわれがもっとも興味があるのは,ユーザーがコントロールできる部分が増えるであろうことである.そのために2つのプロジェクトが進んでいるが,ここではその一部分にしか触れることができない.
まず,ひとつ目はホストコンピュータを廃止,分散することである.その裏にはホストのキャパシティーが世界全体の広がりを制限している事実がある.確かに現在のシステムは数万人の人口をかかえることができるが,数百万までは広げることができない.しかし,システムそのものを分散することは数多くの問題を引き起こす.まず,ハッキングの問題である.この問題に対処するためにわれわれは暗号技術を使ったセキュリティー技術の導入を考えている(19,20).
2つ目は,ユーザーによる世界のカスタマイズについてである.いかにして,新しいデザインや,リージョンを全体の雰囲気を損なうことなく導入できるかが鍵となる.この技術の導入はわれわれの基本原理を変える必要をももたらす.特に,システムの秘密であった部分を公開することはできないのではないかと思う.しかし,この秘密の部分さえも夢の一部として取り扱うことができるのなら,可能であろう.ユーザーカスタマイズの導入はとても重要な課題である.
結論
仮想世界を定義すると,それはユーザーによる空間の共有であって,ユーザーによりリアルな景観を見せる技術ではない.確かにそのようなことも可能ではあるが,ハビタットが存続していること自体が,その必要性を否定している.
仮想世界を構築するにあたっては,オブジェクト指向の世界観がなによりも重要であろう.われわれのシステムはそれに必要なデータ処理方法や,コミュニケーションの方法を探し当てたような気がする.本当の意味での基本原則を提示することはまだできないが,それを目指した議論を始める時期に来ているように思う.
最後に,仮想世界を構築するうえで,最も難しいのはいかに世界を構築し,運営していくかに尽きると思う.われわれはほんのその入り口に立ったに過ぎないが,いくつか明確になったことがある.仮想世界の運営はシングルユーザーのプログラムを立ち上げるのとは大きく異なるということである.それは一般に言うオンラインサービスとも一線を画する.
どちらかといえば,ひとつの国家を運営するのに似ている.仮想世界を運営する上で重要な事柄はコンピュータ科学の原理よりも,社会学や経済学の原理から導き出されることが多い.われわれは結局,中央管理型ではなく,自由進化/発展型の方法を使って世界を構築することになったのである.
われわれはここで最後の原理を示すことにする.すでにそれほど議論の余地もないことを願っているが..
本物らしく
Usenetの仮想世界に関する議論のなかで,Club Caribe(現在のハビタット)でなされること言えば,意味のないささいな会話くらいしかないと批判した.確かに,この意見はおおむね正しい.しかし,すでに述べたいくつかの逸話がそれ以上のものが行われていることを証明していると思いたい.さらに,システムそのものを批判することは,そこに暮らす人々すべてを批判することになるのである.彼等はお金を払ってサービスに参加している.決してたあいもない会話だけの世界だと思っていないし,そんなことをするために集まっているわけでもない.その世界に暮らすひとは,部外者にいわれるまでもなく自分のすべきことがわかっているはずである.そのような考えは全能のシスオペの戯れ言かもしれないが,少なくともこの論文でひとびとの興味をこちらに向けられればと思う.本当の人間が現実のシステムのなかで,プログラマーが用意したすべての可能性を利用すると思うのは間違いである.はっきりいって,まずそんなことは起こりえない.仮想世界は人間性までも変える力がある.だが,それは本当の人間性をそこに取り込むことができてからの話である.
(Copyright 1990 Chip Morningstar and F. Randall Farmer, all rights reserved. ”The Lessons of Lucasfilm’s Habitat”, in: Michael Benedikt (ed.), Cyberspace. First Steps, MIT Press 1991 原文へのリンク)