画像提供:Jackto Studios

センセーショナルなインディー ゲーム Night of the Dead の開発を 2 人のチームで成し遂げる方法

Jinyoung Choi
Jackto Studios のメンバーは 2 人しかいません。アートを担当する CEO の Lee Min-gyu 氏、プログラミングを担当する CTO の Jeong-Hyun Ha 氏です。Jackto Studios は、戦略的なゲームプレイのタッチで挑戦的エクスペリエンスの開発を目指し、2020 年 7 月に設立されました。そして 2020 年 8 月には Night of the Dead の早期アクセスをリリースしたのです。
Epic MegaGrant の対象に選ばれたインディー ゲーム Night of the Dead は、早期アクセスの公開から 1 週間で Steam の新しい注目作品とトップ セラー チャートを塗り替え、すぐに 3000 件以上のレビューを獲得しました。しかも、その多くが「非常に良い」評価です。韓国を拠点とするデベロッパー Jackto Studios はたった 2 人から成るチームで、このゲームを 2 年未満でリリースしたことを考えると、そのアチーブメントに目を見張ります。この作品は戦略、クラフティング、サバイバルの要素を融合したことで高く評価されていることを踏まえ、実際のゲーム開発について Jackto Studios の CEO、Lee Min-gyu 氏にお話を伺います。
画像提供:Jackto Studios
Jackto Studios はどのように誕生したのですか?

Jackto Studios、CEO、Lee Min-gyu:
Jackto Studios はたった 2 人のデベロッパー チームで、1 人がプログラミングを、もう 1 人はアートとゲーム デザインを担当しています。かつて私たちは同じ職場で働いており、開発スキルを磨くために Unreal Engine の勉強会を始めたのです。そして Epic Games が提供する膨大な学習リソースとサンプルを活用し、個人的なプロジェクトで研究を重ね、経験を積みました。最終的に、独自のゲームを作成できる自信を獲得したので、正式に挑戦することを決意しました。 

Night of the Dead は、瞬く間に Steam の新しい注目作品とトップ セラーに躍り出ました。しかもユーザーの評価は上々です。小さなチームで、しかも比較的短い開発期間に、素晴らしい結果を達成できた秘訣はなんですか? 

Min-gyu:
おそらく明解なコンセプトが有効に働いたのでしょう。ゲーム デザインの意図を明確に伝えて、そのデザインの品質を高めることに、開発を集中しました。それに加えて、多彩なインディー ゲームと、早期アクセスで得られたさまざまな実験的コンテンツを効果的に融合したことが、ポジティブな結果につながりました。

開発の初期段階で数多くの参考資料を分析し、ユーザーに受け入れられるゲームの楽しさを把握しました。そして当スタジオは、できるだけ早く Steam でリリースすることを目指し、開発に専念しました。逆にネットワーキング、PR、マーケティングには依存しませんでした。

このようにゲーム デザインに集中できたのは、一貫したグラフィック品質を実現できる Unreal Engine のおかげです。さらに当スタジオは Unreal Engine のゲーム フレームワークをそのまま利用しているため、ゲームの構造はエンジンに任せ、デザイン目標に基づくゲーム開発にすべての意識を向けることができました。
画像提供:Jackto Studios
Night of the Dead は、どのような作品ですか? 

Min-gyu:
Night of the Dead はゾンビと戦って生き残る、マルチプレイヤー ゲームです。このゲームには戦略の要素があり、リソースの収集と管理を行って建物や罠を作成できます。プレイヤーが防衛設備を作るためには、フィールド全体に散らばったさまざまなリソースを収集する必要がありますが、ゾンビが出現するため簡単にはいきません。サバイバル、リソース収集、戦略、防衛のジャンルを融合したゲームなので、プレイヤーは、さまざまな防御方法を駆使しながら、限られた時間で効率的にリソースを収集しなくてはなりません。

ここまで多くのジャンル要素を Night of the Dead に取り入れようと考えたのは、なぜですか? 

Min-gyu:
The ForestThey Are Billions の両作品に強い影響を受けました。さらに映画 I Am Legend からも大きなインスピレーションを得ました。この作品で最も興味深い要素は、雰囲気と感情の動きです。

こうしたジャンルを組み合わせるきっかけは、防衛ゲームのプレイ方法です。一般的なタワー ディフェンス ゲームでは、プレイヤーは最初に利用できるリソースをもとに建物をできるだけ効果的に配置し、それからゲームの展開を観察します。その際は神のような能力と視点がプレイヤーに与えられます。しかし、プレイヤーを集めて組織化し、能力と視点に制限を加えることで、逆に防御のゲームプレイが充実すると考えました。こうして Night of the Dead が生まれたのです。

ゾンビが大量に現れる一般的なゲームでは、通常、銃を使用してゾンビを一掃します。一方、Night of the Dead では、プレイヤーが直接戦闘するよりも、さまざまなトラップやテレインを利用した戦略的なゲームプレイに重点を置きます。つまりプレイヤーは広大なワールドを探索して、襲撃を乗り越えながらリソースを収集しなくてはなりません。当スタジオのゲームが持つ興味深い特徴は、銃ではなく、剣、槍、ハンマーなどの近接武器が効くように、ゾンビとの遭遇を設計した点です。
画像提供:Jackto Studios
Night of the Dead の開発に Unreal Engine を採用したのはなぜですか?

Min-gyu:
先ほどお伝えした通り、ゲーム プロダクション パイプラインを全体的に調査する過程で、膨大な Unreal Engine ガイドと情報を活用しました。そのため自然に Unreal Engine でプロジェクトを開始できたのです。これまで UE でプロジェクトを開発した実際の体験を思い返すと、ソースコードをすぐに利用できるので、たった 2 人のチームにとってエンジンが正しい選択だったと確信しています。これによって最先端のゲーム エンジンを分解し、ソースコードをさまざまな方法で利用できるようになりました。Unreal Engine が提供するゲーム開発機能は幅広く、強力です。特に Night of the Dead のタワーディフェンス ゲームプレイでは、広大なレベルが重要になります。これによりプレイヤーは、テレインや収集すべきリソースによって基地の設置場所を戦略的に選び、ゾンビの群れから防衛できます。Unreal Engine を利用することで、必要な機能を効果的に制作できました。 

鍵となる広大な環境を実現するために、具体的に Unreal Engine をどのように活用しましたか? 

Min-gyu:
Unreal Engine で利用できる レベル ストリーミングワールド コンポジションオープンワールド ツール の各機能がとても役立ちました。とりわけ Unreal Engine のソースコードを利用して、独自の目標に合わせてコードを変更できたことが一番大きなメリットです。

たとえばリッスン サーバーにレベルの可視性評価が導入された際は、当スタジオでは独自に可視性オフセットを追加しました。これはプロジェクトに合わせて特別に開発した機能で、レベル ストリーミングの境界を移動するときに発生する読み込み負荷を防止します。こうした方法により、追加の構成変更を実施せずに、意図したとおりのワールド コンポジションをリッスン サーバーで動作させることができました。
画像提供:Jackto Studios
(左) エンジンを改造する前:ローカルの可視性に基づいて各クライアントにレベルを読み込みます。(右) エンジンを改造した後:サーバーとクライアントの両方が必要とするレベルを読み込みます。
さらに、ソースコードに直接アクセスして UE のさまざまな機能がどのように実装されているかを参照できたため、プロシージャルに生成と配置を行うツールや、最適化を自動で行うツールを開発しました。これにより小規模なチームでも、広大なマップに必要な要素を実現できたのです。
画像提供:Jackto Studios
開発したプロシージャルに生成と配置を行うツール。
フォリッジについては Unreal Engine の プロシージャル フォリッジ機能 を活用して、大量のフォリッジを簡単にマップに配置しました。その後、ゲーム デザインの目標に合わせてインタラクティブなフォリッジを開発したので、このインタラクティブなアクタと、プロシージャルに配置したフォリッジ インスタンスを置換しました。また、 レベル ストリーミング 機能も活用し、意図する方法でレベルの境界を指定して、別々にストリーミングされるように、そこでレベルを分割しました。たとえばフォリッジ レベルは、インスタンスの削除や変更にともなう読み込み負荷を軽減するために均等なサイズに分割し、アイテムを含むレベルは、同時に膨大なアクタを読み込まないように密度に応じてさまざまなサイズに分割しました。
画像提供:Jackto Studios
レベルを分割する様子。
追加の制作ツールを開発して利用することで、こうした多様なストリーミング レベルを効果的に制御しています。エディタ ユーティリティ ウィジェット がバージョン 4.22 にアップデートされましたが、エディタ UI の書き込みと、ネイティブ コードとの統合に対応しているため、これは非常に便利でした。この機能によって C++ に頼らずにプロジェクトに必要なさまざまなエディタ UI を操作し、さらにゲーム内のウィジェットと同様に Unreal のウィジェット エディタを簡単に作成して利用できました。

本作品の制作で役立った Unreal Engine の機能は他にもありますか? 

Min-gyu:
Night of the Dead の制作では Unreal Engine が提供する便利なツールをたくさん利用しましたが、個人的に一番直感的で強力な機能は アニメーション システム です。たとえば Night of the Dead のバトル システムは、Animation Montage と Anim Notify を利用したアニメーション ベースのヒットボックス メソッドを採用しています。すなわち、ゲーム中の戦闘はすべて Animation Montages で実現し、キャラクターを攻撃モードに遷移するタイミング、武器のヒット コリジョンを判定するタイミング、バトル中にムーブメントを許可するかどうかなどは、それぞれのアニメーションで Anim Notify を使用して判断しています。アニメーション システムはゲームに必要な機能の大部分をサポートしているため、プログラマーは必要なアニメーションのすべての設定と適用を、簡単かつ独自に行えます。
画像提供:Jackto Studios
Anim Notify を利用した剣で攻撃するアニメーションで、ヒットボックスの評価メソッドを制作する様子。
画像提供:Jackto Studios
アニメーションを構成するブループリント。
Unreal Engine が提供する ネットワーク システム も強力で、とても恩恵を受けました。Unreal Engine のゲーム フレームワークだけで容易にマルチプレイヤー ゲームを開発でき、さらに複雑なネットワーク構成がデフォルトで設定されているので、時間を大幅に節約できます。Unreal Engine を利用しなければ、たった 2 人のチームでマルチプレイヤー ゲームを制作しようとは考えなかったでしょう。 

小規模なインディー デベロッパーたちに伝えたいメッセージはありますか?

Min-gyu:
Unreal Engine はインディー デベロッパーが使用するには高機能すぎると考える人もいますが、それは単純に各機能が強力だということに過ぎません。このことは小規模なデベロッパーにとって有利に働きました。重要な気付きは、Unreal Engine のパイプラインを活用すれば、小規模なチームでも高品質の結果を実現できることです。

さらに Unreal マーケットプレイス には高品質のアセットが用意されているので、すぐに使用できるコンテンツが簡単に見つかります。本作品でも、アートやセーブ システムなどにマーケットプレイスのアセットを活用しました。結論として、リソースと予算が限られた小規模なチームにとっても、Unreal Engine で素晴らしい結果を達成できます。
もし Unreal Engine を利用しなければ、たった 2 人のチームでマルチプレイヤー ゲームを作ろうとは考えなかったでしょう。"
- Jackto Studios、CEO、Lee Min-gyu
貴重なお話をありがとうございました。Night of the Dead の今後の計画について教えてください。また、このゲームの最新情報は、どこで入手できますか? 

Min-gyu:
当スタジオは Night of the Dead を第 4 四半期に公式リリースすることを目指し、精力的に開発に取り組んでいます。コミュニティから寄せられたフィードバックをこの作品に取り入れて、より高いレベルの自由と追加コンテンツを提供します。Unreal Engine なら、たった 2 人のチームでも比較的短期間に高品質のゲームを開発できる実例として、当スタジオのストーリーが役立てれば幸いです。当スタジオの詳細については Jackto Studios の Web サイトSteam をご覧ください。

    今すぐ Unreal Engine を入手しましょう!

    Unreal Engine は世界で最もオープンで高度な制作ツールです。
    あらゆる機能とソース コード アクセスを完備している Unreal Engine を使用すれば、すぐに制作に取り掛かることができます。