機能紹介
リアルタイム共同編集
オンライン上の仮想空間内で、冒険の世界となる村や城、草原や洞窟などのマップを作ったり、登場人物を配置したりといったことが多人数でリアルタイムに行えます。


共演システム
村がモンスターに襲われる、剣士二人が橋の上で決闘をする、といったイベントシーンを開発者達が自ら演じることで作ることができます。イベントシーンだけではなく、火が飛びまわる魔法や、敵のまわりをぐるぐるまわりながら、何度も剣で斬りつけるといった技を作ることもできます。

kameTLとリアルタイムデバッガ
本システムのRPG実行ロジック部分は、ゲームに適した並行処理機構をもつプログラミング言語kameTLで記述されており、戦闘システムなどを開発者達が自由にカスタマイズすることが可能です。また、kameTLコード部分はRPGを実行している際に、ゲームプレイを中断することなく、リアルタイムにデバッグできます。

RPGデータ編集
主人公のパラメータやモンスターのパラメータ、武器や防具のパラメータなど、RPG内で使用するさまざまなデータの編集をGUI上で行うことができます。ここで編集したデータは、XMLファイルで出力、保存されます。RPGデータの編集を行うと、XMLファイル形式で保存されるのと同時に、kameTLコードに自動的に変換され、そのソースコードとバイトコードも出力されます。実際にRPG実行環境上で動作する際には、kameTLのバイトコードだけがあれば、動作します。開発者は、出力されたkameTLコードに手を入れることによって、機能を拡張することも可能となっています。この機能で作成し、出力されたファイルはファイル管理サーバによって管理され、適切に同期処理が行われますので、多人数での開発もスムーズに行えます。

紹介ページ出力機能
統合開発環境によって作成された、敵や味方のステータス、パラメータなどのデータは、XMLファイルとして保存、管理されています。本機能では開発中に用いたXMLファイルから、自動的にそのRPGの紹介ページを出力することができます。紹介ページはHTMLとXMLファイルの組み合わせとなっており、出力されたファイルをWebサーバ上に配置するだけでWebページとして公開することが可能です。

シナリオフローグラフ
RPGはシナリオを中心に登場人物、マップやアイテム、モンスターなど他の全ての要素を作っていくことになります。そのため、シナリオについては開発者全員が常に把握しながら、作業を進めることが大切です。
シナリオの制御は、通常、フラグとよばれる変数を用いて行われることが多いでしょう。この方法では、フラグの値によって条件分岐させることで、さまざまなイベントを発生させ、シナリオを制御しています。フラグを用いて文脈を管理することにより、複雑なシナリオを制御することも、設計がしっかりしていれば、可能でした。しかし、フラグを用いたシナリオの制御は、様々な問題を抱えています。フラグの値を誤って変更してしまうと、ハマリ状態など、シナリオの破綻が起こってしまうこともありえます。開発者全員がフラグ一つ一つの持つ意味を正確に把握する必要があるので、共同開発となるとさらに困難さが増します。
本システムでは、シナリオフローグラフという仕組みによってトップダウン方式でシナリオを時系列に編集していくことを可能にしています。シナリオフローグラフは階層構造を持っていて、階層を下るにつれて徐々に具体的な内容を記述していきます。シナリオフローグラフはメインシナリオだけでなく、サブシナリオなどいくつも作ることが可能です。

キャラクタメイキング
キャラクタメインキング機能では、基本的なパーツを組み合わせていくことで、作品に登場する、兵士、村人、王様、モンスターなど、たくさんのキャラクタを簡単に作ることができます。例えば、兵士のモデルと、剣、槍のモデルを作っておけば、これらを組み合わせて右手に剣を持った兵士、両手に斧を持った兵士、などが簡単に作成できます。羽のモデルがあれば、人モデルの背中に羽をつけて天使のキャラクタを作るといったことも簡単です。基本パーツとして、モデリングソフト・Metasequoiaの標準フォーマットmqo形式ファイルと、アニメーションソフト・エルフレイナの標準フォーマットelem形式ファイルを直接読み込むことができます。
イベント制御
マップ上に配置される登場人物や、宝箱、罠、ドアなど、プレイヤーの動作に反応して発動する処理をイベントと呼びます。イベントはマップのリアルタイム共同編集画面で配置することができます。各イベントはページと呼ばれる処理の単位をもっていて、各ページには処理内容及び、シナリオフローグラフの、どの状態にあるときに実行されるかの条件をkameTLで記述することができます。
データの一元管理
データ管理サーバは、開発者が更新したデータを、矛盾が起こらないよう一元管理しています。サーバが管理するデータは、大きく分けて二つに分類されています。ひとつは、インポートエクスポートと呼ばれる、ファイルを一元管理する機能です。もうひとつは、リアルタイムでやり取りされるコマンドを、全ての開発者で矛盾なく保ち、処理する機能です。リアルタイム共同編集、共演機能では、ユーザの操作はコマンドとして管理され、リアルタイムに反映されていきます。そのほかの、モンスターのパラメータなどのRPGデータは、ファイル単位で管理、処理されます。
ブラウザとのリアルタイムチャット
ブラウザと統合開発環境が協調して作業を進められるようにするため、ブラウザからリアルタイムに共同開発環境とチャットする機能をつけました。外出先など、一時的に統合開発環境が使えない状況に陥っても、この機能により、ブラウザさえあれば統合開発環境で作業しているほかの開発者たちと、連絡をとることができます。