Skip to content

Instantly share code, notes, and snippets.

@umegaya
Last active December 10, 2015 20:48
Show Gist options
  • Save umegaya/4490675 to your computer and use it in GitHub Desktop.
Save umegaya/4490675 to your computer and use it in GitHub Desktop.

ゲームのインフラの作成

  • まずゲームの仕様以外に最低でも以下の機能の実装が必要
  • payment
  • SNS connect (facebook or line)
  • push notification
  • 2dメインのフレームワークではmoai SDKを使えばある程度実装されている(line connect的なものは除く)
  • push notificationはそのままであればmoai cloudを使う必要がある。売れたら自前で実装し直すことになるかもしれない
  • 3dメインのフレームワークでは実装されているものはない
  • 今回はmoai SDKで行く(3Dもたぶんサポートされていくはず)
  • paymentのサーバー側は必要

yueとmoai SDKとのインテグレーション

  • メモリの削減が必要(現在yueだけで30MBぐらい使うので10MB以下に)
  • androidに関してはもしかするとandroid NDKを使って何かしなくてはいけないかも

データの保存への対応

  • yueそのものにはデータを保存しておく機能はない
  • なにかストレージ mysql or drizzle or hbase + redis
  • いずれにせよyueから上記のソフトウェアにアクセスするライブラリを用意する必要があると思う
  • mysqlはlua-mysql, redisはlua-hiredisがあるのでそれを使えばいい、drizzleはyueに一番マッチするが多分開発が必要

運用用の準備

  • rightscaleのserver templateとか
  • git repoのmasterにpushしたらdeployされるようにしたい
  • 監視用のスクリプトは自前になると思う

stats

  • treasure data使うか?
  • 本気で使うなら月$1599
  • 無料からはじめる感じ

lua(yue)を使うリスク

  • サーバーの安定性
  • yue自体が安定しない場合
  • yueとstorageの相性が悪くstorageへの書き込みが安定しない場合
  • チートに対してyueに深刻な脆弱性がある場合
  • 誰も使っていないプロダクトなので脆弱性が十分明らかになっていない
  • サーバーとクライアントの接続性が悪い場合
  • 実際のモバイル回線で正常に常時接続、または再接続を維持できるか
  • できたとしてバッテリーの持ちやモバイルデバイス上の処理負荷はどうなるか

作業

  • インテグレーション 1 week
  • 運用のための準備 1 week
  • 同時にテスト用のアプリを作ってサーバーとクライアントの接続性を試す
  • 大体うまく行きそうならゲーム自体の開発へgo
  • だめなら工夫で乗り切れそうか調べる(最大2 weekぐらい) それでもダメならluaを使うのは諦める
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment