SlideShare a Scribd company logo
1 of 43
ねこび〜と♪
開発, 運用時に起きた問題の
アレ! コレ!
CLOUD CREATIVE STUDIOS, INC.
自己紹介
• 名前
田中 良明
• 会社
株式会社クラウドクリエイティブスタジオ
• 職種
プログラマ
CLOUD CREATIVE STUDIOS, INC.
その前に
CLOUD CREATIVE STUDIOS, INC.
ねこび〜と♪とは
•ねこ x リズムゲーム
•iOS, Android で好評配信中
• App Store : https://itunes.apple.com/jp/app/nekobi-
to/id1123515279?mt=8
• Google Play :
https://play.google.com/store/apps/details?id=com.ccs.Taylor&hl=ja
CLOUD CREATIVE STUDIOS, INC.
ねこび〜と♪とは
こんな可愛らしい ねこたち の
CLOUD CREATIVE STUDIOS, INC.
ねこび〜と♪とは
こんな可愛らしい ねこたち の
ゲームです!
CLOUD CREATIVE STUDIOS, INC.
ねこび〜と♪とは
こんな可愛らしい ねこたち の
ゲームです!
それでは いってみましょう
CLOUD CREATIVE STUDIOS, INC.
Unity 編
その1
Android の音ズレ 問題
CLOUD CREATIVE STUDIOS, INC.
Android の音ズレ事件
先に結論
CLOUD CREATIVE STUDIOS, INC.
Android でリアルタイム性が
必要なサウンドは
ネイティブでの対応が必要
Android の音ズレ事件
経緯
CLOUD CREATIVE STUDIOS, INC.
Android の音ズレ事件
•タップ音欲しいよね
•音ズレ問題 出てから時間経っている
Unity 5 にもなってるし
大丈夫だろう
CLOUD CREATIVE STUDIOS, INC.
問題編
Android の音ズレ事件
大丈夫じゃなかった
CLOUD CREATIVE STUDIOS, INC.
Android の音ズレ事件
•タップして
少ししてから再生される
•リズムゲームなので、目立つ
かえって、邪魔な要素に…
CLOUD CREATIVE STUDIOS, INC.
解決編
Android の音ズレ事件
•タップ音が必要な場合
ネイティブでの対応が必要
(サウンドプール)
CLOUD CREATIVE STUDIOS, INC.
解決編
Android の音ズレ事件
•タップ音が必要な場合
ネイティブでの対応が必要
(サウンドプール)
CLOUD CREATIVE STUDIOS, INC.
Android でリアルタイム性が
必要なサウンドは
ネイティブでの対応が必要
Unity 編
その2
Loading 終わらない 問題
CLOUD CREATIVE STUDIOS, INC.
Loading 終わらない事件
先に結論
CLOUD CREATIVE STUDIOS, INC.
Unity の Authenticate には
タイムアウト処理は忘れずに
Loading 終わらない事件
経緯
CLOUD CREATIVE STUDIOS, INC.
Loading 終わらない事件
•タイトル画面から先に進まない
•テスト端末では発生しない?
再現できない
•GameCenter が関係していそう?
CLOUD CREATIVE STUDIOS, INC.
問題編
Loading 終わらない事件
•Callback が呼び出されない事がある
ハンドリングする方法もない
CLOUD CREATIVE STUDIOS, INC.
解決編
Loading 終わらない事件
•Callback が呼び出されない事がある
ハンドリングする方法もない
CLOUD CREATIVE STUDIOS, INC.
Unity の Authenticate には
タイムアウト処理は忘れずに
Unity 編
その3
ID 切り替わった 問題
CLOUD CREATIVE STUDIOS, INC.
ID 切り替わった事件
先に結論
CLOUD CREATIVE STUDIOS, INC.
ID 管理には
外部サービスで一意のものに
ID 切り替わった事件
経緯
CLOUD CREATIVE STUDIOS, INC.
ID 切り替わった事件
•新規ユーザに切り替わるのだが…
•コチラの端末だと発生しない
あ、これ
GameCenter 連携している端末だ
CLOUD CREATIVE STUDIOS, INC.
問題編
ID 切り替わった事件
•deviceUniqueIdentifier の
ID が変わった
Unity バージョンアップした時だ
CLOUD CREATIVE STUDIOS, INC.
解決編
ID 切り替わった事件
•deviceUniqueIdentifier の
ID が変わった
Unity バージョンアップした時だ
CLOUD CREATIVE STUDIOS, INC.
ID 管理には
外部サービスで一意のものに
Azure Redis Cache編
その4
定期的にデータ消える 問題
CLOUD CREATIVE STUDIOS, INC.
データ消える事件
•先に結論
CLOUD CREATIVE STUDIOS, INC.
Redis Cache は
キャッシュとして使う
データ消える事件
経緯
CLOUD CREATIVE STUDIOS, INC.
データ消える事件
•突如データが消える
•誰かフラッシュした?
•特定のインスタンスだけ何度か発生
CLOUD CREATIVE STUDIOS, INC.
問題編
データ消える事件
• 約、月1でパッチがあてられる
VM が再起動かかる
Redis も再起動かかるので、データ消える
↓
• Standard 以上のスペックで VM 2台
再起動がかかっても1台ずつ行われる
データ同期がとられるので消えにくい
↓
• キャッシュとしてのみ扱いましょう
必要なデータならば、定期的にエクスポートを行うべき
CLOUD CREATIVE STUDIOS, INC.
データ消える事件
すなわち?
CLOUD CREATIVE STUDIOS, INC.
データ消える事件
•たまに消える
•Standard 以上なら SLA 99.9%
CLOUD CREATIVE STUDIOS, INC.
解決編
データ消える事件
•たまに消える
•Standard 以上なら SLA 99.9%
CLOUD CREATIVE STUDIOS, INC.
Redis Cache は
キャッシュとして使う
Azure 編
その他
サポート親切すぎる 問題
CLOUD CREATIVE STUDIOS, INC.
サポート親切すぎる事件
•早い段階で電話
メールでのご連絡をいただける
•緊急の場合
夜中でも電話をいただける
•電話で話した内容
詳細をまとめてメールでもいただける
CLOUD CREATIVE STUDIOS, INC.
サポート親切すぎる事件
経緯
CLOUD CREATIVE STUDIOS, INC.
サポート親切すぎる事件
CLOUD CREATIVE STUDIOS, INC.
サポート親切すぎる事件
CLOUD CREATIVE STUDIOS, INC.
いつもありがとうございます
まとめ
•Android 音ズレ問題
•Loading 終わらない問題
•ID 切り替わった問題
•データが消えた問題
CLOUD CREATIVE STUDIOS, INC.
まとめ その他にも…
• ゲーム難度調整 問題
• KPI メンバーが知ってますか? 問題
• 広告が見られない 問題
• 構成複雑化 問題
• イベント出展時の 問題
• プロモーション時の 問題
• etc…
CLOUD CREATIVE STUDIOS, INC.
ありがとうございました
CLOUD CREATIVE STUDIOS, INC.

More Related Content

Similar to ねこび〜と♪ 開発, 運用時に起きた問題のアレ! コレ!

エターナらないゲーム開発
エターナらないゲーム開発エターナらないゲーム開発
エターナらないゲーム開発Kohki Miki
 
【STR2 ポケラボ プレゼンテーション】
【STR2 ポケラボ プレゼンテーション】【STR2 ポケラボ プレゼンテーション】
【STR2 ポケラボ プレゼンテーション】Up Hatch
 
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみたコードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみたShintaro Ito
 
唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25
唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25
唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25Takanori Nakayama
 
SocialGame 20130130 KnowledgeCommons vol.19
SocialGame 20130130 KnowledgeCommons vol.19SocialGame 20130130 KnowledgeCommons vol.19
SocialGame 20130130 KnowledgeCommons vol.19Visso株式会社
 
アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-
アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-
アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-nishio
 
VRゲームを出してわかった国内外ユーザーの反応の違い
VRゲームを出してわかった国内外ユーザーの反応の違いVRゲームを出してわかった国内外ユーザーの反応の違い
VRゲームを出してわかった国内外ユーザーの反応の違いYuuki Ogino
 
なれる!フリーランス
なれる!フリーランスなれる!フリーランス
なれる!フリーランスleverages_event
 
Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13
Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13
Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13Hiromichi Yamada
 
(業務外)ゲーム制作部のススメ
(業務外)ゲーム制作部のススメ(業務外)ゲーム制作部のススメ
(業務外)ゲーム制作部のススメYusuke HIDESHIMA
 
Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」Hiromichi Yamada
 
1画面1Storyboardのススメ
1画面1Storyboardのススメ1画面1Storyboardのススメ
1画面1StoryboardのススメTomo Ita
 
水を求めて〜蜃気楼に負けないゲーム開発〜
水を求めて〜蜃気楼に負けないゲーム開発〜水を求めて〜蜃気楼に負けないゲーム開発〜
水を求めて〜蜃気楼に負けないゲーム開発〜dan5
 
Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)
Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)
Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)T. Kodaka
 
【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出
【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出
【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出Gemdrops Inc.
 
Android In-app Billing (Rev1,2) Hack (*legacy)
Android In-app Billing (Rev1,2) Hack (*legacy)Android In-app Billing (Rev1,2) Hack (*legacy)
Android In-app Billing (Rev1,2) Hack (*legacy)Hiroaki Niwayama
 
趣味プログラマの先輩からのアドバイス
趣味プログラマの先輩からのアドバイス趣味プログラマの先輩からのアドバイス
趣味プログラマの先輩からのアドバイスHiroaki Murayama
 
OculusQuestで音声認識
OculusQuestで音声認識OculusQuestで音声認識
OculusQuestで音声認識尾上 兼透
 
今更C++でiOSアプリを作る話
今更C++でiOSアプリを作る話今更C++でiOSアプリを作る話
今更C++でiOSアプリを作る話5mingame2
 
Cocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみましたCocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみましたTomohiro Suzuki
 

Similar to ねこび〜と♪ 開発, 運用時に起きた問題のアレ! コレ! (20)

エターナらないゲーム開発
エターナらないゲーム開発エターナらないゲーム開発
エターナらないゲーム開発
 
【STR2 ポケラボ プレゼンテーション】
【STR2 ポケラボ プレゼンテーション】【STR2 ポケラボ プレゼンテーション】
【STR2 ポケラボ プレゼンテーション】
 
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみたコードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
コードが書けない人が凶悪ノベルゲーム「ヤンデレ小杉」を作ってみた
 
唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25
唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25
唐揚げ屋さんから学ぶプロデューサーのお仕事 in CEDEC+KYUSU 2023.11.25
 
SocialGame 20130130 KnowledgeCommons vol.19
SocialGame 20130130 KnowledgeCommons vol.19SocialGame 20130130 KnowledgeCommons vol.19
SocialGame 20130130 KnowledgeCommons vol.19
 
アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-
アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-
アイデアを塩漬けにしない-世界中の人に手伝ってもらう方法-
 
VRゲームを出してわかった国内外ユーザーの反応の違い
VRゲームを出してわかった国内外ユーザーの反応の違いVRゲームを出してわかった国内外ユーザーの反応の違い
VRゲームを出してわかった国内外ユーザーの反応の違い
 
なれる!フリーランス
なれる!フリーランスなれる!フリーランス
なれる!フリーランス
 
Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13
Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13
Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13
 
(業務外)ゲーム制作部のススメ
(業務外)ゲーム制作部のススメ(業務外)ゲーム制作部のススメ
(業務外)ゲーム制作部のススメ
 
Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」Oculus 体験・勉強会「VRコンテンツ制作入門」
Oculus 体験・勉強会「VRコンテンツ制作入門」
 
1画面1Storyboardのススメ
1画面1Storyboardのススメ1画面1Storyboardのススメ
1画面1Storyboardのススメ
 
水を求めて〜蜃気楼に負けないゲーム開発〜
水を求めて〜蜃気楼に負けないゲーム開発〜水を求めて〜蜃気楼に負けないゲーム開発〜
水を求めて〜蜃気楼に負けないゲーム開発〜
 
Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)
Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)
Windows ストアアプリを作ろう ~Metroスタイルアプリ入門~ (2012/09/29)
 
【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出
【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出
【CEDEC 2017】過去のお約束を捨てることがVRの始まり ~ PlayStationRVR ヘディング工場のゲームデザインと演出
 
Android In-app Billing (Rev1,2) Hack (*legacy)
Android In-app Billing (Rev1,2) Hack (*legacy)Android In-app Billing (Rev1,2) Hack (*legacy)
Android In-app Billing (Rev1,2) Hack (*legacy)
 
趣味プログラマの先輩からのアドバイス
趣味プログラマの先輩からのアドバイス趣味プログラマの先輩からのアドバイス
趣味プログラマの先輩からのアドバイス
 
OculusQuestで音声認識
OculusQuestで音声認識OculusQuestで音声認識
OculusQuestで音声認識
 
今更C++でiOSアプリを作る話
今更C++でiOSアプリを作る話今更C++でiOSアプリを作る話
今更C++でiOSアプリを作る話
 
Cocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみましたCocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみました
 

ねこび〜と♪ 開発, 運用時に起きた問題のアレ! コレ!

Editor's Notes

  1. オンラインを強みとしている会社 人材募集中 ご興味ございますかた、ご連絡お願い致します
  2. 簡単に問題点を4つ紹介する 普段の開発で頭の片隅に残ってもらえれば幸い ガッツリとした詳細説明は行なわない
  3. 音ゲーパートでタップ音が少しズレているだけでも プレイを阻害するので、入れるべきでない iOS は Unity 設定で気にならないレベルになる
  4. タイムアウトか問題ないフローを取り入れる必要がある ドキュメントにも記述がある https://docs.unity3d.com/ja/current/ScriptReference/SocialPlatforms.ILocalUser.Authenticate.html
  5. 外部サービス連携させたいがハードルが高い
  6. 外部サービス連携はお客様のハードル ゲストログインを用意した方が良い 外部サービス使わず、ID が切り替わって大丈夫な仕組みを導入した
  7. Apple 審査入った瞬間にタイミングよく消えた
  8. SLA = Service Level Agreement
  9. Apple 審査入った瞬間にタイミングよく消えた Standard 以上なら、SLA 99.999% なので消えにくい Basic なら、一ヶ月に一回ペースで消える
  10. 内容が適切でない場合は次の日のご対応
  11. 譜面だけの調整では難しい 譜面以外の要素で難度に違いを出す Slack へ最低限の情報を投稿 あざとく出すのが良い