人生にゲームをプラスするメディア

スクリプト言語をメインに開発された『小さな王様と約束の国』舞台裏〜 IGDA日本SIG-GTレポート

ゲームビジネス その他

スクリプト言語をメインに開発された『小さな王様と約束の国』舞台裏〜 IGDA日本SIG-GTレポート
  • スクリプト言語をメインに開発された『小さな王様と約束の国』舞台裏〜 IGDA日本SIG-GTレポート
  • スクリプト言語をメインに開発された『小さな王様と約束の国』舞台裏〜 IGDA日本SIG-GTレポート
WiiWareで配信されている“国造りRPG”『小さな王様と約束の国 ファイナルファンタジー・クリスタルクロニクル』(以下、小さな王様と約束の国)では、組み込みスクリプト言語Squirrelが採用され、開発効率が高められています。4月18日に開催されたIGDA日本のSIG-GT第13回セミナー、「続・ゲームにおけるスクリプト言語の現状」では、スクリプト言語を大幅に取り入れた本作について、Squirrelの特徴や開発の舞台裏などについて、開発チームの神尾隆司氏と北出智氏が「Squirrelスクリプトを使った実装と活用」と題して講演を行いました。



まず、Squirrelの特徴について神尾氏は、Squirrelの作者、Alberto Demichelis氏にゲーム開発経験があり、alloc/free(メモリ管理機構)の置き換えが可能など、気が利いていること。ソースコードが6000行ほどで万一致命的なバグがあったときでも自分たちでなんとかできそうな規模であること、グローバル変数の初期化を「=」でさせない(うっかりミスを減らせる)、コメントがC++と同じ形式で書けること、マルチスレッドが安全に書けることなどを紹介。

さらに、例外処理が用意されていてスクリプトのエラーを補足できることや、getroottableによってシンボルが定義済みかどうかを調べたり、クラスの名前をスクリプトから取得したり、定義済みfunctionを解放できるなど、開発効率やメモリ効率を高める機能についても解説をおこないました。

「小さな王様と約束の国」での具体的な実装については北出氏が紹介。スクリプトの本作での使い方として、メインループもスクリプトで記述する構成になっていることを紹介、「それはさすがに極端だと思うが…」と述べてはいましたが、「小さな王様と約束の国」が実際にリリースされ、同じくSquirrelを採用した北米向け作品「My Life as a Darklord」も開発されていることから十分実用的なことがわかります。「My Life as a Darklord」では、「小さな王様と約束の国」で開発したソースコードのうち、C++ソースの94%、Squirrelスクリプトソースの30%が流用できたとのことです。C++ソースはなるべく流用する方針だったとのことですが、94%がそのままというのはかなり高いのではないでしょうか。

制作においては、関数やクラスの追加のたびにおこなうバインド(C++とSquirrelでデータをやりとりするための定型コード作成)作業が面倒なため、XMLとnutを変換するコンバータを作ったことや、ツールでC++ヘッダからバインドコードを自動生成させるといった、定型作業の負荷を減らす工夫が紹介されました。

スクリプトによる制作では、多くのエラーがランタイムエラーとして発生するため、ランタイムエラーを減らすためにネーミングルールを統一したり、例外をキャッチしたときにスタックダンプを出力するコードを入れておく必要があったとのこと。

ほとんどをスクリプトで書いたためメモリ管理をVMにまかせることができ、レアバグが起きにくいというメリットがあったものの、スクリプトを動作させていくと消費メモリが増えていくためメモリの監視は重要だとしています。消費メモリについてはガベージコレクション(GC)によって回復しますが、1フレーム(1/60秒)で処理が終わらない場合はフレーム落ちとなるためGCを動かすタイミングにも注意が必要です。

質疑応答では、「全部Squirrelでやるにあたって、勝算はどれくらいあったか?」との質問に対し、「初期デザイン作業において、プロトタイピングをしてトライしてみないといけなかった。いろいろ要素をつけたり消したりするのはCではやってられなかったと思う」と回答、初期段階から得られる生産性の高さを評価していたのが印象に残るセッションでした。


《伊藤雅俊》

編集部おすすめの記事

ゲームビジネス アクセスランキング

  1. 今週発売の新作ゲーム『ストリートファイターV アーケードエディション』『マリオ+ラビッツ キングダムバトル』『死印』他

    今週発売の新作ゲーム『ストリートファイターV アーケードエディション』『マリオ+ラビッツ キングダムバトル』『死印』他

  2. 「日本と海外におけるゲーマーにとってのリージョン制限」・・・イバイ・アメストイ「ゲームウォーズ 海外VS日本」第22回

    「日本と海外におけるゲーマーにとってのリージョン制限」・・・イバイ・アメストイ「ゲームウォーズ 海外VS日本」第22回

  3. 【DEVELOPER'S TALK】据え置き機から携帯ゲーム機へ~追加要素満載でリメイクされた『ペルソナ3ポータブル』開発陣に聞く

    【DEVELOPER'S TALK】据え置き機から携帯ゲーム機へ~追加要素満載でリメイクされた『ペルソナ3ポータブル』開発陣に聞く

  4. 【インタビュー】KLabに訊くプロジェクト管理ツール「SHOTGUN」導入事例―管理業務の負担を半分に削減?!

  5. 【レポート】進化を続けるLive2Dの現状と未来…「2Dと3Dのいいとこ取りを目指す」

  6. VRゲームと連動する電動回転椅子「Roto VR Chair」が開発者向けに出荷開始

  7. 【GTMF2013】ソニー・コンピュータエンタテインメントが紹介するPlayStation向け最新テクノロジー-PS4・AR・脈動検出・PlayViewなど

  8. 【CEDEC 2016】原作再現、フェイシャル誇張からフェチズムまで ─ これからの3Dアニメ表現について考える

  9. 【特集】今のゲーム業界は人材不足、じゃ“就職できない人”はなぜいるの?HAL東京のゲーム学部に迫る

  10. 【CEDEC 2014】バンクーバーで新しい才能を探す、バンダイナムコスタジオのチャレンジ

アクセスランキングをもっと見る