イベント
「ヘブンバーンズレッド」の大規模開発と高速イテレーションを支える自作ツールとは。WFSのエンジニアによるセッションをレポート
奥村典史氏 |
天野史也氏 |
イテレーションの高速化
「ヘブンバーンズレッド」(iOS / Android / PC 以下,「ヘブバン」)チームは,日々の開発をより速く,より便利にするために多くのツールを自作しているという。セッションでは,5つのキーワードに沿って10種類のツールがデモを交えて紹介された。
最初のキーワードは「イテレーションを速くする」だ。イテレーションとは一連の工程を短期間で繰り返す,開発サイクルのことだが,ツールを作る大きな意味の1つになっているという。ゲームでは樹のように各機能が依存している。たとえば「ヘブバン」ではアドベンチャーやフィールド,バトルなどがメインシーケンスに依存しながら実装されており,そこからさらに細かい機能が増えていく。このままだと,スキル演出を確認するためにはバトルを見る必要があり,ダンジョンを確認するにはフィールドを見なければならないといったように,1つの機能を確認するためにいくつもの手順を踏むことになってしまう。そこでツールを使って,機能単体でイテレーションできるようにするわけである。
バトルテストシーン
「ヘブバン」のバトルはコマンド式のターンバトルで,スキルポイントを溜めて,味方の行動を選び,スキルを組み合わせながら敵を倒していくというもの。バトルに登場するアセットは,キャラクターのモデルやモーション,敵味方の行動など,さまざまなデータやリソースが関わり合って形作られている。しかし上記のとおり,上流から辿っていくにはかなり量が多くなってしまうため,自作ツールで対応しているという。本ツールは,任意のバトルや敵名などで検索をかけてバトルを選択することができたり,便利なオプションをいくつか用意したりと,バトル単体でのチェックがしやすくなるよう,日々改善を重ねつつ作られているとのこと。
さらに本ツールでは実際のゲームと同様に,パーティの編成や強化が可能だ。任意の編成や装備強化状態でバトルを試せるほか,UI開発にも有用だという。
また「ヘブバン」では,バトル中に差し込まれる会話パートやイベントをLuaスクリプトを使って実現している。このLuaスクリプトにも本ツールは対応しており,再生したいスクリプトを合わせて指定することで,同時に挙動を確認できるそうだ。
そのほか,アートアセットを作るアートチームや,バランスを組むゲームプランナーなどの多くのスタッフがバトル単体の高速なイテレーションを求めていたため,本ツールが作られたとのことだ。
Advランタイムテストシーン
本ツールは,アドベンチャーを単体で確認するものだ。「ヘブバン」のアドベンチャーは,Luaスクリプトで構成されており,1つ1つ独立して動くとのこと。本ツールでは,ファイル名を指定するだけで,それらアドベンチャーの内容を単体で確認・修正できるという。1つ1つのリソースを磨く
次のキーワードは「1つ1つのリソースを磨く」。さまざまなツールを活用することにより,「ヘブバン」のさまざまなリソースを1つ1つ取り出してブラッシュアップしていくことが重要だという。
Adv Character Viewer
本ツールは,アドベンチャーで使うキャラクターの立ち絵をテストするもの。キャラクターのIDを選んで表示させ,口パクや表情,背景とのバランスなどのチェックを可能にしている。3D Character Viewer
本ツールは,3Dのキャラクターやアニメーションを確認するためのもので,モデラーがモデルの状態を確認したり,アニメーターがアニメーションの再生状況を確認したりするために使われているとのこと。また,スクリプトによって実現している独自のキャラクター動作など,ゲーム内で行われる要素のほとんどを,本ツール上で確認できるそうだ。
バトルに登場するキャラクターのモーションやボイス,口パクなどのタイミングも同時に確認できる。
敵のモデルやアニメーションも確認可能で,3Dアセットが実際にゲーム画面でどう表示されるのかなども,リソースと合わせて1つ1つチェックできるという。
Effect Viewer
本ツールは,バトルやフィールドで使われる多彩な3Dエフェクトの見た目や動作を確認するためのもの。再生速度の調整も可能で,細かい動きや,バトルの倍速モード時に見た目がおかしくならないかなどもチェックできるとのこと。また録画機能もあり,サウンドチームがSEを付ける際に参考にしていることも紹介された。息をするようにツールを作る
3つめのキーワードは「息をするようにツールを作る」で,「ヘブバン」チームでは,何か不便を感じたらすぐにツールを作り,改善に努めているという。またツールを作るにあたって職種は問わず,たとえばQAスタッフやプランナーが作ることもあるそうだ。
ショートカットウィンドウ
本ツールは,いくつかのツールのショートカットが並んでいるだけの操作パネルウィンドウである。シンプルではあるが,「ヘブバン」のような大規模開発では数多くのツールを使うことになるため,意外に便利とのこと。また「企画者用ウィンドウ」にはプランナーにとって便利なツールがそろっており,自分達で便利なコマンドを足したり,ショートカットを増やしたりして日々使いやすくしているという。デバッグコマンド
本ツールは,デバッグに便利な機能やコマンドを扱えるというもの。ゲーム内から開けるメニューがあり,たとえば速度の変更や任意のストーリーに飛ぶボタンなど,さまざまな機能が集められている。またユーザーデータの編集も可能で,プレイしているデータに任意のカードや装備を付与できるなど,開発やテストに必要なことを容易にできるようにしている。
これらの機能は,エディター上だけでなくランタイムでも実行できるので,モバイル端末上でも同様に使えるとのこと。
エディター上で確認するときは,隣のウィンドウに同じメニューを表示することができることや,複数ウィンドウに表示させて,今の画面内でどんなBGMが流れているのかを確認しつつ,別のデバッグコマンドを操作できる。
Unityをもっと強く
4つめのキーワードは「Unityをもっと強く」。自分達ならではのゲームを作り出すために,Unityの機能をそのまま使うのではなく,「Unityでできること」を「もっとUnityでできること」にしていくためのツールが紹介された。
BTL-タイムラインエディタ
本ツールは,タイムラインを編集するためのエディターである。「ヘブバン」チームでは,Unityにもともとあるタイムライン機能に,さまざまな拡張や機能の追加を施し,より強化しているとのこと。タイムラインの構成において,たとえばキャラクターのアニメーションを操作するクリップは,Unityデフォルトのものをそのまま使っている。
その一方で独自機能として,キャラクターの高さを調整するための「追従クリップ」を追加。「ヘブバン」では大きなものから小さなものまで敵のサイズがさまざまなため,攻撃が当たったときに違和感のないよう,こうした機能が必要だったという。
加えて,SEやボイスを差し込むためのサウンドマーカーや,攻撃中のどのタイミングでダメージが発生するか,あるいはヒットストップが発生するかを制御するヒットマーカーが紹介された。
そのほか,敵を撃破したときのスロー演出や倍速時など,バトル中に発生するさまざまな事象を可能な限り,本ツールにて確認できるそうだ。
フィールド編集ウィンドウ
Unityには高機能なシーン編集機能が備わっているが,「ヘブバン」のフィールドを編集するには不十分だという。そのため,デフォルトのシーン編集機能を独自に拡張している。たとえば「ヘブバン」では,1つのシーンに3つ以上のシーンを重ねて作っているため,複数のシーンを同時に開けるようにしたとのこと。フィールド上,主人公やNPCはあらかじめ用意されたルート上を移動する。ルートはウェイポイントと呼ばれる点をつないで作っており,またX軸とY軸,Z軸を使っているため,階段などの移動も表現できるという。こうしたルートは,ウェイポイントをドラッグアンドドロップすることで編集可能だ。
フィールド上に配置されているキャラクターの一覧表示も可能で,それぞれを入れ替えたり,アニメーションを切り替えたりもできる。またキャラクターの配置は,Unityの機能を使ってドラッグアンドドロップで行うとのこと。キャラクターを切り替えると,即座にフォーカスも切り替わるので,スムーズに編集作業に移行できる。
ゲームを作るということはツールを作るということ
最後のキーワードは,「ゲームを作るということはツールを作るということ」。ツールをデザインすることは,ゲームの可能性やゲームが実際にどういう形になるかを定義していく作業であること。そしてツールによってどういった入稿をするのか,どこのイテレーションを重視するのか。こうした仕様の1つ1つが形作られると,そのゲームで何ができるのかが決まっていくことが説明された。
探検マップエディタ
本ツールは,「ヘブバン」のコンテンツの1つである「探険」のマップを編集するエディターである。探険は,まさにこのツールを作りながらパーツの入稿方法やミニマップの見た目,アイテムの配置といった仕様を1つ1つ決めていったという。探険は,ダンジョンと呼ばれるいくつかのパーツがつながったマップを歩いて探索する。その過程には,会話劇が発生するポイントやドロップアイテムなど,フィールドと同様のものが配置されている。
本ツールでは,パーツを選択して配置し,パーツ同士をつなげて探険マップを編集していく。パーツの中も編集可能で,選択したパーツをフィールドで開いたり,普通のフィールドと同じように会話劇やドロップアイテムをエディター上で配置できるそうだ。
また,ストーリーを構成するLuaスクリプトから,編集したい探検マップを開くこともできる。
セッションの最後,奥村氏は「ゲームを作るためには,今回紹介したものだけでなく,さらにたくさんのツールを作り,使っていく必要がある」とし,「『ヘブバン』ではこれらのツールを使って,“最上の切なさ”を届けるべく,日々邁進していく」とまとめていた。
「ヘブンバーンズレッド」公式サイト
「ヘブンバーンズレッド」ダウンロードページ
「ヘブンバーンズレッド」ダウンロードページ
- 関連タイトル:
ヘブンバーンズレッド
- 関連タイトル:
ヘブンバーンズレッド
- 関連タイトル:
ヘブンバーンズレッド
- この記事のURL:
キーワード
(C)VISUAL ARTS/Key(C)WFS
(C)VISUAL ARTS/Key(C)WFS
(C)VISUAL ARTS/Key(C)WFS