概要 †
https://ksgs.doorkeeper.jp/events/45462
データ分析を生かした運営 †
ログのフロー †
- ゲーム内ログ
→ ログサーバー
→ 分析用ログサーバー
→ ETLシステム
- 抽出、加工
→ My SQLサーバー
→ Excelファイルに出力
プッシュ通知の最適化 †
- 競合タイトルのプッシュ通知を調査して、同じであればずらす
- タイトルや本文の内容を変更。アイテムがもらえるような内容に。
通知は文言の頭にのせるように(通知欄は数文字しか見えない)
初期離脱ポイントの改善 †
クリア回数やクリアID数で調べる
QA †
- Q. チュートリアルで離脱
A. 初回パッチの長い待ち時間に漫画で簡単な操作等を読ませる。チュートリアルに入る前。
ゲーム開発を盛り上げる技術とチームを支え続ける原動力 †
個人の見解です
- プロダクトの作り方
アジャイル開発をベースとした上でチームが素早く作っていく
- アジャイルソフトウェア開発を始めた経緯
喋りたくないので、付箋紙に書いて壁に張った。
タスク終わったら一番右に張る
終わったら上の付箋紙から取っていく
朝会5分
→ うまくいった
- 雰囲気の良い開発現場を作る
- 意見を出しやすいレビュー会
- XFD
Jenkinsでビルドこけたらパトランプが回る
- バーンダウンチャート
残タスクの見積もり時間の変動をグラフ化
チームが隠したがる情報
円滑に進んでいるかのわかりやすい指標となる
- 割れ窓理論
割れた窓を放置しているとどんどん広がっていく
→綺麗な窓を保っておく
QA †
- Q.レビュー会、規模の大きなレビュー会で言いやすい環境は?
A.時間が掛かるので、意見おw付箋紙に書いて張っていってもらう。チケットで集める
- Q.温度感がある。コミュニケーション出来ない人をどうするか?
A.ムードメーカー的な若い子を見つけて、その子を中心にして回す
- Q.ネット会議とかで別々の場所でやりとりしている。意見を言えない。打開策
A.難しい。離れていて温度が伝わらない。
合宿するのが一番早い
多人数格闘アクションゲームにおけるAIの設計と実装 †
AI実装の背景 †
対戦3Dアクションゲーム
仲間キャラ、敵キャラ
ステージは立体的
アイテムやギミックも
- 50を超えるキャラ分のAI
オンリーワンのキャラが多く、共通化して削減できない
- 担当者はPG1名。専任ではない
→作業分担。PGが部品を作る、ゲームデザイナーに組み立てを行ってもう
ツールのイメージ †
- シンプルなものが必要。
非PGが扱うので、スプリプトのような自由度の高いものは除外
- ノードベースのグラフィカルスクリプトが流行ってる
- 昔のプロジェクトでコンボテーブル
相手との距離ごとにテーブルがあって、その中にコンボパターンが複数入っている
- コンボテーブルベースで拡張
- 残体力や障害物の有無等の条件をコンボパターンに追加
- 乱数以外での優先度付け
→ 攻撃や回復など、キャラ個性に合わせたい。
- 実行中の行動途中に割り込み行動を
→ 回復を取りに行く間に、敵を発見したら攻撃を割り込ませる
- 作ったテーブル
- コマンド名
- 優先度
- ビヘイビア。行動|条件
- 頻度。乱数の評価高さ
- リキャスト。行動を行った後に、その行動を行えなくなる時間
- 追加要望
残りHPが一定以下になると行動パターンが変化する
→ テーブルを複数所持できて、条件で切り替える
プログラマーの実装 †
行動 †
条件 †
選択アルゴリズム †
コントローラー †
キャラクターを動かす部分とAIを繋ぐ
センサー †
AIの内部状態を更新する。
情報を更新する頻度で負荷対策を行った。
結果 †
- うまくいかなかったこと
- 複数の行動間のつながりが乏しかった
特定の行動の後、特定の行動で追撃を行いたい。など。
- 一つの行動が行われると、複数の条件のリキャストに与えたい(リキャストの共有)
まとめ †
QA †
- Q.コストは
A. ツールのコストは1か月。ツールを作るプログラマーに任せていたので安め
Q.難易度は?
A. キャラ * 難易度でテーブルを個別に用意した