Three Rings

Three Rings

Three Rings社が公開している
サーバーテクノロジーの可能性

北米市場で300万人の会員数を誇る『Puzzle Pirates』を運営しているThree Rings社。わずか3人のチームによって設立されたインディMMOの先駆者的存在である彼らが一般公開しているMMO用のサーバーフレームワークの評価を敢行。実際に使ってみて分かった利点と問題点をここにご紹介いたします。

Three Rings社とは

Three Rings社は北米市場で8位(2007年6月時点)、公称300万人(2007年10月時点)の会員数を誇るMMOである『Puzzle Pirates』を運営する企業です。2001年にわずか3人のチームによって設立されたインディMMOの先駆者的存在であると同時に個性的な企業としても知られネットなどでも取り上げられています。現在では『Puzzle Pirates』の他に『Bang!』という3D対戦ゲームを運営しています。

誰でも自由に使えるオープンソース

Three Rings社が運営しているゲーム『Puzzle Pirates』
Three Rings社が運営しているゲーム
『Puzzle Pirates』
Three Rings社が運営しているゲーム『Bang!』
Three Rings社が運営しているゲーム
『Bang!』

『Puzzle Pirates』と『Bang!』で使用されているフレームワークの開発は10人程度のプログラマによって行われているものと推察されます。これは通常のMMO開発と比較すると格段に少ないものです。またサーバーとクライアントの両方をJavaで組んでいるのも大きな特徴のひとつです。通常、クライアント、特に3Dのゲームに関してはC++で組まれているのがほとんどです。しかしThree Rings社の場合、2Dの『Puzzle Pirates』は勿論のこと、3Dの『Bang!』も全てJavaで組まれています。

現在、Javaは様々なとこで利用されており、その分ライブラリも多く公開されています。それらを非常に上手に統合しており、高い完成度を誇っています。
稼働開始から『Puzzle Pirates』は6年、『Bang!』は4年以上経過していますが、常に更新し続け、その度にきちんとした修正がなされています。また、この2タイトルとも、下層レベルの部分では、同じフレームワークが使用されています。

これらのソースコードはThree Rings社のホームページ上で公開されており、誰でも自由に使用することができます。ただ、非常に見付けにくいためあまり知られていないようです。またThree Rings社ではユーザーが制作したゲームをアップロードしThree Rings社のサーバーで稼働させる『Game Gardens』というサービスを行っています。ここには実際にThree Rings社がオープンにしているソースコードを利用したゲームがアップロードされており、実際に遊ぶこともできます。このソースコードはライセンスもきちんと定義されており、商用としても再利用可能となっています。ただ、特に大々的な告知を行っていないところからすると、あくまでゲーム制作で生まれた副産物として公開しているような感覚なのかもしれません。

MMOの研究には非常に便利

分散オブジェクトの相互作用
分散オブジェクトの相互作用

サイト内にオープンソースの
コードに言及したページ

MMO開発は、エンタープライズシステムを作るのと同じ感覚で行わなければならないと言われています。長い期間、稼働させることが前提としてあるので、MMOの開発には通常のパッケージゲームの制作とは異なる考えや技術が求められることになります。

またオープンソースでも、単にユーザー同士をつなげる下層レベルのものは数多くありますが、ゲームやチャットなど上層レベルのコンテンツに関わる部分はほとんどありません。勿論、商用のミドルウェアであれば上層レベルのコンテンツもサポートしていますが、それなりにコストが掛かるので研究用としてはリスクが大きいと言えます。しかし、Three Rings社が公開しているフレームワークには、クライアント更新のためのアップデートシステムも含め、下層から上層まである程度のレベルは一通り揃っており、単純に彼らと同じコンテンツを作ろうと思えば、そのまま作れてしまうのではないかと思えるくらいです。

また、一般的にオープンソースにはツメが甘いところが多く、商用ではそのまま使用することができないケースが多いものですが、Three Rings社が公開しているコードは既に6年間300万人が遊んでいるという実績があり、信頼性も高いと言えます。

ただその一方で、これらはあくまでThree Rings社が提供しているゲームで使用されている物なので、それ以外の物を作ろうとすると制限が多いのが欠点です。また、オープンソースにはなっていますが、コミュニティベースの運営がなされているわけではありません.。そのため今後Three Rings社がサポートを続けていくかに関しては見えない部分があります。その点においては、大企業が販売している商用ミドルウェアと比較すると不安がありますが、初期段階の研究用として使用する分には非常に便利と言えるでしょう。

ピラミッドにおける今後の展開

現時点では、このソースコードを使用してMMOゲーム開発のノウハウを蓄積していくことになっています。また、Three Rings社のフレームワークにはFlashを使用しWebブラウザ上でリアルタイムに動く拡張が含まれており、それを利用したゲームの開発が進んでいます。これまでJavaで組んでいたものがFlashになることで、更に裾野が広がり様々な可能性が見えてくることでしょう。ゲームだけでなく、リアルタイムのチャットやセカンドライフのような仮想空間が全てWebブラウザ上で動く、そうなればホームページやブログなども新しい活用方法が生まれてくるかもしれません。これらの研究成果については、近日中にオープンするラボサイト上で随時報告していく予定です。

文・構成/小関 匡