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

【CEDEC 2009】『ファイナルファンタジー・クリスタルクロニクル』における、Squirrelを使ったゲーム開発

ゲームビジネス その他

【CEDEC 2009】Squirrelを使ったゲーム開発 Part II
  • 【CEDEC 2009】Squirrelを使ったゲーム開発 Part II
  • 【CEDEC 2009】Squirrelを使ったゲーム開発 Part II
  • 【CEDEC 2009】Squirrelを使ったゲーム開発 Part II
  • 【CEDEC 2009】Squirrelを使ったゲーム開発 Part II
注目のスクリプト言語「Squirrel」。株式会社スクウェア・エニックスの北出智氏と神尾隆司氏は、Wiiウェア『光と闇の姫君と世界征服の塔 ファイナルファンタジー・クリスタルクロニクル』(以下、『光と闇の姫君』)の開発における実例を解説します。


『光と闇の姫君』は、『小さな王様と約束の国 ファイナルファンタジー・クリスタルクロニクル』(以下『小さな王様』)に続く作品。アクティブタイムバトルシステム(ATB)風の戦闘が加わるなど、内容は大きく変化しています。開発は引き続きゲーム部分をSquirrel、システム部分にC++を使用する形式。特にC++の部分はかなりの部分が流用されているといいます。

システム概要バトルまわりの構造

Squirrelはゲーム開発を想定して作られたスクリプト言語。『小さな王様』『光と闇の姫君』『X-Blades』など様々なゲームで使用されており、Luaよりも使い勝手が良いとのこと。

『光と闇の姫君』では、プログラマーは『小さな王様』から3名減少して2名となり、しかも1名はSquirrel初心者という状況。「Squirrelをゲーム実装にフル活用」し、「見通しの良い設計で問題を未然に防ぐ」ことが実装方針となりました。

今回はゲームを起動したままでデータやコードをリロードし、修正・調整の結果を即座に反映できるようになりました。ゲームを起動したまま「修正前」「修正後」の二つのデータやコードを比較可能になったというわけです。ゲームを実行中にデバッグメニューに新たな機能を追加することも可能とされており、修正結果をゲーム上で即座に確認できるという「少し新しい感覚」(北出氏)はスクリプト言語のメリットであったといいます。そのためには「適切なクラス分けとしっかりした管理が必要」(北出氏)であり、これは「見通しの良い設計で問題を未然に防ぐ」前述の実装方針とも繋がっていくことになります。

神尾氏によれば、開発においてSquirrelのスタックダンプが役立ったそうです。ソースのどこで止まったかが簡単に分かり、原因の特定が非常に容易である、と評価します。それでも変数やメンバがない、型が違う、ソースの打ち間違いで起こるランタイムエラーは「一番重要な問題」であり、ネーミングのルールを統一、タイプしにくい名前は避けるなどベーシックな工夫が必要であるとのこと。

Squirrelは、前作のシステムを使いながらも「全く違った」ゲームが作成でき、特にゲームを起動しながら試行錯誤できることが大きかったと評価されました。もしもC++のみで開発した場合は、「現在の1.5倍の手間がかかったのではないか」というほどの有用性が確認され、『小さな王様』作成時の課題だったランタイムエラーやメモリリークといった問題を解決できたそうです。但し、Squirrelの使用時にはメモリーマップの把握が困難であったり、デバッグのコストが増えるといった問題があり、特にエラーに関しては「対処していないとランタイムエラーの嵐」になるとのこと。

両氏は今後もSquirrelを使いたい、と結論。新作の立ち上げ時には特に有効であるとの見解を明らかにしました。

Wiiウェアなどダウンロードゲームの小規模開発が脚光を浴びる昨今ですが、それだけに実例を挙げての講義は貴重な内容。『光と闇の姫君』では『小さな王様』よりもプログラマーの人数が減っていたことを踏まえると、小規模開発のノウハウは今後重要なものとなっていくことが予想されるのではないでしょうか。
《水口真》

編集部おすすめの記事

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

  1. ミクシィXFLAG スタジオに訊くゲーム開発現場での“業務効率化”-我々が『SHOTGUN』を導入したワケ

    ミクシィXFLAG スタジオに訊くゲーム開発現場での“業務効率化”-我々が『SHOTGUN』を導入したワケ

  2. 7月14日オープンの「VR ZONE SHINJUKU」詳細発表! 『マリオカート』や「攻殻」のアクティビティも─気になる料金は?

    7月14日オープンの「VR ZONE SHINJUKU」詳細発表! 『マリオカート』や「攻殻」のアクティビティも─気になる料金は?

  3. 【GDC 2015】App StoreやGoogle Playでフィーチャーされる秘訣は「ビックマック」にあり!?

    【GDC 2015】App StoreやGoogle Playでフィーチャーされる秘訣は「ビックマック」にあり!?

  4. 2018年3月発売の新作ゲームは何を買う?―注目タイトルまとめ!

  5. 自動LOD生成ミドルウェア「Simplygon」、第5世代をリリース ― 5月にデモツアー

  6. 5pb.、Xbox 360『怒首領蜂 大往生』がソースコードを盗用し制作したものだったとして謝罪

  7. 日本観光を恋愛ADV的ノリで楽しめる『Go! Go! Nippon! ~My First Trip to Japan~』がSteamで配信、開発者がセールス好調を報告

  8. 【CEDEC2017】『NieR:Automata』の世界を彩る効果音はどのように実装されたのか?デザインコンセプトとその仕組みについて

  9. 【CEDEC 2014】ゲームの楽しさは計測できるのか? ゲーム開発者と学術研究者が語り合った

  10. 『シェンムー3』Kickstarterに新拡張ゴール、「白沙」「鳥舞」「白鹿村」3つのエリアにフォーカス

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