gamejam 2018/01
久々に社内の部活のゲームジャムに参加したので振り返り. こうゆう記事を適当にメモっていきたい.
テーマ
今回は「コイン」がテーマ.
試み
Uniduxを使わずに、Zenjectで素で書いてみる. (PokemonGO的な作りってどうなんだろうという実験)
企画
オツリマイスター
- コンビニで小銭で支払いするときに、財布にのこる個数最小にするように払うよねってところからゲームっぽくできないかというアイデア
- 商品が次々と流れてくるので、お題 (小銭最小、5円を使うな、なんでもOK, ..), 似合わせてどんどん品物を購入する.
- お題に沿わないと購入できない
- フィーバータイムで電子カード使い放題
- 最終的に購入した商品リストの表示して終了
SUPER CRYPT CURRENCY RUN
- スーパーマリオ + コインが取引所で他のコインに変換できるゲーム
金の猛者
- コインが上からふってくるのでそれを奪い合うバトルロワイヤル
- 相手に攻撃してヒットすると、一部資産喪失
- 武器もフィールドでコインと交換できる.
- スマブラ+お金強奪バトル
作業
2/3 (3.5h)
- 11:30-12:30 企画作成
- 13:00-14:30 作業 => 帰宅歯医者
- 17:00-18:00 作業
- Illustratorで素材作成. unity側はほぼ配置しただけ
2/4 (5.5h)
- 12:30 - 18:00 作業
- Zenject試行. Drag&Drop試行
結果
完成できず..
トレイに小銭を配置 & 結果更新ができただけの状態. とりあえず1ループ回るまでに、トレイの金額が要件を満たすかどうか? と 正答した時の終了処理ができてない. ループ回ってからパターン増やす & 音や動きをつけるって作業もまだ. αにも足りてない感じのできになってしまった.
失敗の考察
作業時間
- 十分ではなかったがもっとできることはあったように思う.
- 理想は 6h + 6h = 12hくらい設けられると良さそう
- 今回のペースでは12hでも足りてなかった感じがする
要因考察
1) illustratorでの素材作成で時間を食ってしまった.
- 結局いらすとやの素材を使うことになったが、途中までコインと電子カードのイラスト作成をしていた
- ハマったポイントは、コインの半分だけ影を濃くする方法と電子カードの台形っぽい形の作り方
- どちらも基本的な操作なのだろうけど、全くわからず調べてた
2) zenject問題
- zenjectの使い方に疎いので色々ハマった.
- 特にシーン内に存在するMonoBehaviourのclassを特定のinterfaceと紐付けるやり方
- IManagerを Manager (Hierarchyに存在) に紐付けたいなど (Instantiateはしない)
- SceneContext以下にManager Objectを配置して、
this.Container.Bind<IHoge>().To<Hoge>().FromInstance(this.GetComponentInChildren<Hoge>()).AsSingle();
みたいな感じで強引に解決.
3) Drag&Drop問題
- D&D したあとのuGUIのRectTransformの位置座標の指定がうまくいかず試行錯誤
- uGUIでドラッグドロップ - Qiita
- 【Unity】uGUIでCanvasのRender Modeによってローカル座標への変換方法が異なる件 - Qiita
- ココらへんの記事を参考にしてた。RectTransformUtilityでカメラスペースの座標に変換してあげないとだめってことに気づくのに時間がかかった
- 冷静にどの座標系の位置が返却されるかデバックして、関連操作をしらべていればもう少しハマる時間はすくなくなったはず...
基本的に全部やってなかったことに対するハマり時間浪費が多い感じがした. 経験増やせばある程度は短縮できそう. あと素材系は大事なところだけ自分で作る方針にしたほうがよさそうだ.
コーディング
zenjectに関しては、GameJamで実装するには少し重い気がした. ひたすらinterfaceとbindのステップが面倒なのだ... あとglobal storeはどうしてもほしい. ないとsingletonだらけになってしまう. ココらへんは簡易に使えるライブラリ作ってみようと思う.
感想
序盤の企画考えるところとかは慣れてきた感。 やっぱり実装でハマって作りきれないパターンが多い. 軽量すぎる企画だとつまらないし、バランス感が大事だ. ちょっと攻めて新しいこともやりつつ、完成できるってのが理想だったけどその認識を変えたほうが良さそうだ. 早く効率よく作るための楽できる方法を模索していきたい