見出し画像

【ゲーム開発】新作ゲーム「スシ・ニンジャ・ファイト」の制作を振り返って~エンジニア編~(開発)

本日もお疲れ様です☕
株式会社Black Beard Design Studioです!

先日発表いたしましたBBDSのカジュアルゲームブランド「Voyagee」の
記念すべき第1作目「スシ・ニンジャ・ファイト
皆さまプレイしていただけましたか?

▼iOSの方はこちらから▼

http://bit.ly/3YdfCTk

▼Androidの方はこちらから▼

http://bit.ly/3Fmft7s

今回は「スシ・ニンジャ・ファイト」の開発裏話を
エンジニアからお送りします!

プランナー(企画)編はこちら
デザイナー編はこちら

今回の「スシ・ニンジャ・ファイト」の企画目標は
短期間×少人数×低コストでBBDSらしいゲームを開発」でした。
各担当者がどのようなアプローチで開発に向き合ったか
ぜひご覧くださいませ!


エンジニア編

今回「スシ・ニンジャ・ファイト」でエンジニアを担当した山下と申します。
私の方では企画の共通目標へのアプローチや、
BBDS初の取り組みとなる広告の対応にまつわる裏話をお話します。
よろしくお願いいたします。

■企画目標:短期間×少人数×低コストでBBDSらしいゲームにエンジニアとしてどう応えたか

今回は短期間であること、少人数での開発であることから、
プランナーさんがデータの作成をスムーズに行えるように
マスタデータのシステムを構築しました。

雛形となるデータファイルにはエクセルを採用しました。
理由は主に以下のような点になります。

・プランナーさんがエクセルを普段から使い慣れている点
・関数や入力支援機能などエクセルの既存の機能を有効活用出来る点
・Gitでバージョン管理するため(コンフリクトの際にマージするのは大変)


今回エクセルを採用したことで、
「スシ・ニンジャ・ファイト」はステージ制のゲームだったこともあり、
簡単に素早くデータを量産でき、
結果的にゲーム自体のクオリティアップにも繋がったと思います。

また、マスタデータはエクセルからScriptableObjectに変換し、
ゲーム上ではアセットバンドルとして扱っています。
(アセットバンドルの管理にはAddressable Asset Systemを使用しています。)


なお、今回製作したゲームでは実装されておりませんが、
こちらのシステムを採用することで、
実装次第ではDLCファイルとして後からデータを配信したり、
アプリのアップデート無しでも修正を行うということも出来るかと思います。


■広告の対応に関して ~実装の際の苦労など~

今回作成した「スシ・ニンジャ・ファイト」では以下の広告を実装しています。

・バナー広告‥WEBページで多くみられる、指定の広告枠に画像や動画が表示される形式のもの
・リワード広告‥動画視聴後に視聴者が報酬(ゲーム内アイテムやステージ等)を獲得できる形式のもの
・ネイティブ広告‥表示されるWEBページやゲームのコンテンツ内に表示される形式のもの

広告を実装するというのは、自社開発のゲームとして初めての試みだったのですが、
その中でも今回は、ネイティブ広告の実装に苦戦しました。

テスト段階では
・表示、
・タッチした時の動作(広告に表示されているアプリがストアで表示される)
共に正常に動作していたものの、
本番のゲームに組み込んでみるとタッチした時に反応しないという問題が発生してしまいました。

こちら、結論としてはタッチやフリックの実装で使用している
TouchScriptの処理を一部修正する事で解決しました。


◆ 修正内容
Assets/TouchScript/Scripts/InputSources/StandardInput.cs OnEnable関数 「Input.simulateMouseWithTouches = false;」をコメントアウト

こちらはUnityのドキュメントによるとタッチを行った際に、
マウスのイベントも発生させるかどうかを決めるパラメータのようです。

Admobの広告の実装(ソースコード)や、
この件に関するドキュメントなどは見当たらず、
完全に手探りで試行錯誤をした結果この結論となりました。

※弊社のゲームでは今のところ正常に動作しているのですが、
こちらの内容を利用される場合はご自身で十分検証した上で、
あくまでも自己責任の上でお願いいたします。

◆ UnityのドキュメントのURL
https://docs.unity3d.com/ja/2018.4/ScriptReference/Input-simulateMouseWithTouches.html

◆ TouchScriptのURL
https://assetstore.unity.com/packages/tools/input-management/touchscript-7394?locale=ja-JP

いかがでしたか?
弊社での広告ゲーム開発第一弾という事もあり、
予想外なところでつまずいたり、
想定していたよりも実装に時間がかかってしまった箇所など多々ありました。
そのような中でも、第二弾以降のゲーム開発でも共通して利用出来そうな機能(マスタデータや広告)の実装には、
設計から時間をかけて丁寧に取り組むことが出来たので良かったと思います。
以上エンジニア担当の山下でした。
また次回お会いしましょう。


最後に

以上エンジニアによる
「スシ・ニンジャ・ファイト」開発裏話でした!
今後もnoteでは開発ゲームについての投稿をしていく予定ですので、
どうぞお楽しみに!

そして、「スシ・ニンジャ・ファイト」は完全無料でプレイできますので、
まだダウンロードしていない方はぜひ以下のリンクよりどうぞ!

▼「スシ・ニンジャ・ファイト」ダウンロードはこちらから▼
App Storehttp://bit.ly/3YdfCTk 
Google Play ストアhttp://bit.ly/3Fmft7s

また、Voyagee公式Twitterでは、
一番早く新作情報や更新情報をお届けしておりますので、
ぜひフォローしてお待ちいただけますと幸いです!

それでは次のBBDS公式noteでお会いしましょう!
最後まで読んでいただきありがとうございました😊


BBDS公式HP:https://www.kurohige.jp/
BBDS公式Twitter:https://twitter.com/BlackBeardDS


この記事が気に入ったらサポートをしてみませんか?