Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
水を求めて
気楼に負けないゲーム開発
Dan Yamamoto (Oink Games Inc.)
@dan5ya
15.12.2015
NCMB mBaaSユーザー発表会
自己紹介
DAN YAMAMOTO
@dan5ya
Oink Games Inc.
デジタル事業部 部長
ゲームプログラマー
メインプログラミング担当
伝説の旅団OLYMMUJO
Rubyプログラミング入門書
著書
モチベーション
ゲームを作りたい
自分が作ったと言える作品を作り
たい
作り続けたい
オインクゲームズとは?
水を求めて〜蜃気楼に負けないゲーム開発〜
会社概要
2010年設立
ゲームのデザイン・制作・販売
アナログゲーム(ボードゲーム)
デジタルゲーム(スマホアプリ)
社員数7
メンバー構成
ディレクション(ゲームデザイ
ン) … 1名
主にアナログ … 1名
主にデジタル … 5名
ボードゲーム
海底探険
水を求めて〜蜃気楼に負けないゲーム開発〜
水を求めて〜蜃気楼に負けないゲーム開発〜
伝説の旅団OLYMMUJO
デジタルゲーム
MUJO
09. 2014
パズルゲーム
iOS / Android
2014年09月リリース
200万ダウンロード以上
Unity
App Store BEST OF 2014 選出
水を求めて〜蜃気楼に負けないゲーム開発〜
OLYM
03. 2015
パズルゲーム
iOS
2015年03月リリース
25万ダウンロード以上
Unity / NCMB
08. 2015
demo
RPG
iOS
2015年08月リリース
30万ダウンロード以上
Unity / NCMB
App Store BEST OF 2015 選出
伝説の旅団
水を求めて〜蜃気楼に負けないゲーム開発〜
伝説の旅団の開発規模
人数 5.5
期間 4.5ヶ月(リリース時)
過去最大規模のプロジェクト
小さいチームでやるからには
突き抜けたゲームを作りたい。
突き抜けたい。
小さいチームの限界
人的労力の限界
ゲームの規模
守備範囲
Android対応
そして、もうひとつ
ライフの限界
ライフ = お金
ライフの限界
制作期間
広告
失敗しにくい
こんな状況でゲームを作っています。
水を求めて
気楼に負けないゲーム開発
Dan Yamamoto (Oink Games Inc.)
@dan5ya
15.12.2015
NCMB mBaaSユーザー発表会
ゲームを作る度に思うことがある
ゲーム開発は難しい
困難をどうやって乗り越えるか
ゲーム開発の難しさを
3つに分けてみた
ゲーム開発の難しさ
1. 楽しさを見つける難しさ
2. 実装する難しさ
3. 複数人で作る難しさ
難しさ1
ゲーム開発の難しさ
1.楽しさを見つける難しさ
2. 実装する難しさ
3. 複数人で作る難しさ
あとで話す
難しさ2
ゲーム開発の難しさ
1. 楽しさを見つける難しさ
2.実装する難しさ
3. 複数人で作る難しさ
現代のゲーム開発環境は
複雑で多岐にわたる
伝説の旅団を支える技術
GitHub
Unity
Xcode / iOS
NCMB
Jenkins
クライアント
水を求めて〜蜃気楼に負けないゲーム開発〜
Unity
C#
Lua
MoonScript
テスト駆動開発
uGUI
PSDからジェネレート
Flashからジェネレート
サーバー
水を求めて〜蜃気楼に負けないゲーム開発〜
NCMB
会員管理
データストア
Unityクライアントから読み書き
JavaScript(Mac, Linux)からも更新
一部Rubyからもアクセス
Push通知
CI
水を求めて〜蜃気楼に負けないゲーム開発〜
ふつうの自動化
Jenkins
テスト
ビルド
バイナリ共有
でもこれらは
氷山の一角
現代のゲーム開発は
壮大かつ複雑
シンプルにありたい
柔軟な選択
開発効率重視
プロジェクト毎に取捨選択
柔軟に変化する
新しい技術も試したい
正しい選択をしたい
難しさ3
ゲーム開発の難しさ
1. 楽しさを見つける難しさ
2. 実装する難しさ
3.複数人で作る難しさ
コミュニケーション重要
でも難しい
コミュニケーション
Slack
コミュニケーションを集約
GitHub
Pull Request
水を求めて〜蜃気楼に負けないゲーム開発〜
Slack
Slackの良さは何?
Slackの良さ
Macアプリがある
iOSアプリがある
他のサービスと連携させやすい
よくわからないけど
圧倒的に良かった
Slack使用例
参加してる社内チャンネルは41
開発、業務連絡、お昼ごはんとか
GitHubと連携
Pull Request →Slackへ通知
masterへのコミット →Slackへ通知
Jenkinsと連携
テスト結果、ビルド結果、バイナリ配信、エラー通知
カレンダーと連携
今度こそ 難しさ1
ゲーム開発の難しさ
1.楽しさを見つける難しさ
2. 実装する難しさ
3. 複数人で作る難しさ
開発中に現れる象徴的
なキーワード
–Jun Sasaki Oink Games Director
気楼だった
気楼とは?
image: http://www.panoramio.com/photo/51260274
気楼
面白いゲーム思い
ついた!
実際に作ってみると…
たいして面白くない
image: http://www.panoramio.com/photo/51260274
–Jun Sasaki Oink Games Director
気楼だった
水があると思って行ってみる
水はない
ないのにあるように見える
気楼…
このアイデアはオアシスか? 気楼か?
行ってみないとわからない
アイデアの7割以上は 気楼
遠くから見分けるのは困難
プレイしてみるまでわからない
image: http://www.panoramio.com/photo/51260274
気楼現象
ゲーム作りは砂漠の中に…
オアシスを見つけること
楽しさを探し当てる
じゃあどうしたらいい?
気楼を認める
受け入れる
あと戻りを許容する
再出発する
気楼を考慮した開発
最小限を素早く実装
柔軟さ重要
変わりそうなところを見極める
固そうなところを見極める
コードやリソースを破棄する心構えを持つ
コードやリソースを
思い切って破棄する
「残ってますよ」
ゲームの核を素早く
作って試す
ゲームの強度を確かめ
るまでは再出発を覚悟
なんとか水を探し出す
水をみつけたら
あとは作るのみ
でももし
もし水がなかったら…
削除されました
水を探すにあたって
意識していること
最新の成果物をいつでもどこ
でも確認できるようにする
自動ビルドと自動配信
Jenkinsで自動ビルド
GitHubをポーリング
テストを実行してビルド
バイナリをHockeyAppで共有
いつでもどこでも
すぐに
→フィードバック
調整サイクル
デザイナーが気軽に調整できる仕組み
スプレッドシートでマスターを編集
Googleドライブ
JenkinsでビルドしてNCMBを更新
実機で確認
スプレッドシート
編集可能
Jenkins Job
ビルド
NCMBへアップロード
ブラウザからJob実行
iPhoneからも
ただできるだけではダメ
いつでも手軽に
開発者の自由を重んじる。
気楼に打ち勝つために
どんな技術を使う?
なぜUnity?
なぜNCMB?
水を求めて〜蜃気楼に負けないゲーム開発〜
素晴らしいサービスに感謝。
適切なサービス・技術
を柔軟に選択し、
成果物をすぐに確認で
きる仕組みを作る
これら技術でしっかり準備を整えて
まとめ
気楼を受け入れる
あと戻りを許容する
挫けず再出発する
ご静聴ありがとうござ
いました。
NCMBについて補足
伝説の旅団におけるNCMB
マスターデータのクラウド化
セーブデータのクラウド化
Game Center ID に紐付けて会員管理
複数デバイス間でのプレイデータ同期
フレンド間での進 共有
サポート
データ解析
Push通知
NCMBによるコスト削減
サーバーを用意・管理しなくて良い
サーバー開発なしにレベルデザイン
調整機構を実装できた
運用コストが極めて低い
リリース後も数万円/月(※規模に比例)
NCMB補足
コストの見通しを立てやすい
ネックになるのはAPIコール数
月単位なので予測しやすい
Indexもコストに影響

More Related Content

水を求めて〜蜃気楼に負けないゲーム開発〜