Smash, crash and destroy

How Unity Multiplayer helped Destruction Crew create a hit mobile game

Demolition Derby: A Unity for mobile games case study

3 名のスタッフで運営しているオランダのインディースタジオ、Destruction Crew は、スタントカーレースのクラッシュ、カオス、騒乱を愛するあまり、それを再現したモバイルゲームを制作し、ヒットへと導きました。

  • The game

    Demolition Derby, a real-time online multiplayer crash-racing arcade game

  • The goal

    Create a great multiplayer experience that players embrace

  • Platforms

    iOSAndroid、Android 対応 VR(各種ヘッドセット)、Windows ストアアプリ

  • Team members

    3

  • Location

    Emmen, the Netherlands

Multiplayer was a no-brainer

コンテンツを制作するには、まず自分が好きなものや詳しいものを題材にするとよいと言われます。Destruction Crew は、まさにそれを実行した会社です。

Destruction Crew のリードプログラマー兼共同創業者である Steven Derks 氏は次のように語っています。「私たちは昔から、スピード感と破壊的なアクションが楽しめる、エキサイティングなカーレースゲームが大好きなのですが、そのようなゲームを自分たちで制作し、独自のアイデアを盛り込むことで、どんなゲームが出来上がるか試してみたいと思っていたんです。とにかく、全員破壊ものが大好きなんです。」

この種のダイナミックなゲームの場合、プレイヤー同士のオンライン対戦をプレイヤーが望むことは間違いないと Destruction Crew では考えていました。

「AI(人工知能)やボットとの対戦プレイも楽しいですが、リアルのプレイヤーとの対戦は、その何倍も楽しいものです。実際、誰かの車にリアルタイムで激突した瞬間には、『やってやった!』という気持ちになりますよね。私たちは Unity Multiplayer を使うことで、そのようなリッチな体験を簡単に作り出すことができました。」

ただし、ネットワークごしの物理演算や、同時ユーザー数の制限、さらに収益化プランの必要性などといった問題を考えると、リソースの限られている 3 人だけのチームにとっては、難しい課題も残っていました。そこで Unity は、それらの課題を克服するのに役立つ多数の機能を提供しました。

 

ネットワークごしの物理演算がもたらす優れたユーザー体験

Destruction Crew が優れたオンラインマルチプレイヤー体験を実現できた要因の 1 つは、Unity の API を介したネットワーク上の物理演算です。これによって物理演算のシミュレーションがしやすくなり、どのクライアントでも差を感じさせない物理演算処理が実現されました。

Destruction Crew では、Unity のデフォルトを使用せず、カスタムの NetworkTransform を作成しました。設計からコーディング、テストまでの作業は、約 1 か月で完了しました。

「Unity のネットワークシリアライゼーションのおかげで、物理演算のシミュレーションに必要なすべての物理データを、すべてのクライアント間で簡単に送信できるようになりました。ネットワーク API の実装が非常にシンブルなので、ネットワーク上の物理演算を問題なく実装することができたんです。これは、マルチプレイヤーのモバイルカーゲームにとっては非常に重要なことでした」(Derks 氏)。

Destruction Crew が高く評価したもう 1 つのマルチプレイヤー機能として、プライベートルームを作る機能があります。

「Unity の場合、この機能はパスワードを設定するだけで基本的に準備完了です。友人と一緒にプレイしたいときにはプライベートルームを作り、必要に応じてパスワードによる保護を設定すれば、それだけでプレイを開始できます」(Derks 氏)。

 

プレイヤー数の増加に応じたスケール拡張

リリース前、Destruction Crew ではマルチプレイヤー版がプレイヤーに受け入れられるかどうかにさえ気をもんでいました。しかし、実際にリリースしてみると、彼らは予想以上の人気に驚くことになったのです。

「最初は同時接続数(CCU)を 200 人に設定していました。それで十分だろうと思っていたんですが、念のため、CCU の上限を 1000 まで引き上げたんです。ところが 1 週間もしないうちに、ユーザー数は最大 5000 人にまで増えていました。これは設定した上限をはるかに超えるものでしたが、Unity チームのおかげで、上限の引き上げも簡単にできました。バックエンドが柔軟なので、何の問題もなく 5000 CCU にまで増強することができたんです」(Derks 氏)。

Fast and furiously adapting Asset Store cars

Players who love demolition derby are usually car lovers too, so it was important that they had a good selection of cool cars to choose from. For a small team like Destruction Crew, however, it would have been time-consuming to build all the cars from scratch.

“We wanted to give players lots of cars to choose from, but making them from scratch was so resource-demanding,” says Nick Timmer, game designer and co-founder at Destruction Crew.

The solution was to buy car packs from the Unity Asset Store and then adapt them to their own style changing the UV mapping texture, so they could apply their own custom texture and skins.

“The Asset Store was super important; I can’t even imagine what it would’ve been like to build cars from the ground up. It would have taken us months instead of weeks,” says Timmer.

Making the cars marketable

車がこのゲームの重要な要素であることを考慮し、Destruction Crew では、プレイヤーが新しいバンパーや車輪で車をカスタマイズできるようにしようと決めました。そのうえで、彼らはさらにもう一歩踏み込み、カスタマイズそのものを収益化プランに組み込むことにしました。

「通常、プレイヤーはゲームで一定のレベルを達成した場合にのみ、自分の車をカスタマイズすることができますが、私たちはブラックマーケットを導入するのがよいと考えたんです。これは、一定レベルに達していないプレイヤーでも、アプリ内課金 (IAP)としてカスタマイズパーツを購入できる仕組みのことです。」

当初、Destruction Crew は IAP をスムーズに動作させる上でいくつかの課題に直面し、開発が足踏み状態になっていました。しかし、 Unity IAP を実装するとすぐに、すべてが良い方向へと動き始めました。

「以前は他のプラグインを使っていたのですが、使い方が難しく、面倒な問題が頻繁に起こっていたんです。プラットフォームごとにインポートを行っても、さまざまな問題が起こっていました。その点、Unity IAP は実に簡単です。インポートして、いくつかの機能を組み込めば、基本的なことは完了ですからね」(Derks 氏)。

Continuous updates and community support

Destruction Crew では、Unity Multiplayer ソリューションを最初のベータ版から使用していました。初期のバージョンでは当然ながら色々と足りない機能もありましたが、 Unity Pro では頻繁な更新が行なわれていたため、ゲームを開発する中で特に問題は生じませんでした。

「必要な機能が欠けていても、多くの場合は文字通り翌日に Unity の更新が実施され、その機能が提供されました」(Derks 氏)。

ゲームの開発中には、機能とは別の課題にぶつかることも当然ながらありました。しかし、そのような場合でも、彼らは常に Unity コミュニティ内で解決法を見つけることができました。

「Unity コミュニティは問題の解決に大いに役立ちます。いつも本当に助けられていました。私たちはいつも、Stack Overflow と Unity フォーラムを活用していたのですが、10 回中 9 回は解決策が見つかりました。」

Whatever platform or technology

Demolition Derby Multiplayer was initially released to iOS, Android and Win Store Apps, and Destruction Crew found that it was very easy to adapt it for each platform.

“We only had to change a few settings, like maybe texture or mesh compression settings, but it was mostly just build and play.”

With VR beginning to make its imprints on the market, it seemed like another great platform for their particular game. And in their case, it was really easy to make a VR version.

“We’d only made mobile games up until then, but one of the great things about Unity is that you know whatever great new technology comes along, they’ll support it. So to make a VR version of our mobile game, we just really had to add a few plugins, and it was good to go,” Timmer says.

Steven Derks, Lead Programmer and Co-founder at Destruction Crew

“Unity made it really easy to build network physics, which is usually a very hard thing to do. Through the very simple implementation of the Network API, you can implement network physics, no problem, and that was really important for our multiplayer mobile car game.”

Steven Derks, Lead Programmer and Co-founder at Destruction Crew

How do you get started with Unity for Mobile?

Follow this practical guide with information and resources that will get you on your way, save you time, and help you gain the most value when developing mobile games using Unity.

弊社のウェブサイトは最善のユーザー体験をお届けするためにクッキーを使用しています。詳細については、クッキーポリシーのページをご覧ください。

OK