ぷらこあ

雑記/ゲームアイデア帳/成果物ぺろり

Unity1週間ゲームジャム(2017/05/22〜)に参加しました

Unity1週間ゲームジャムとは?

  • @naichilab さんの運営する unityroom というサイトで開催されたイベント
  • 1週間でお題に沿ったUnity製のゲームを製作する
  • 2回目である今回の課題は「転がる」

成果物「DIGROLL」

DIGROLL | ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう

制作過程

雑記

イデア

  • 月曜日の4時に目が覚めたので、テーマを確認。
  • まずやったのはGoogle画像検索でした。どんな転がるゲームが世間にあるのかをインプットする作戦です。脳内で思い付くアイデアは世間に出回っているものが大半なので、あまりパクリという視点で気にせず、そこにどう差別化するルールや世界観を持っていけるか、という風に考えていました。
  • というわけで、今回ベースになったのは自分も大好きな「ホルカ×トルカ」であり、そこにご存知「ミスタードリラー」的な進捗要素、荒廃的な世界観を混ぜ合わせ、今回のものが出来上がった感じです (他にも削る表現はそのまんま「ピクロス」だって指摘も貰った)
  • 多少コアバリューが被ってでも、他のゲームの良いところを持ってくるのは個人的には大事だと思ってます。

www.youtube.com

www.youtube.com

ステージ

  • 察しの良い皆様ならお気づきだと思いますが、これはSpriteを使用した2Dゲームです。
  • ちょっと立体っぽいSpriteを用意し、Colliderをズラすだけで、2.5Dくらいには見えてリッチに見えるので良いです。着色はUnity上で行なっていました (SpriteRenderer.color)

f:id:lycoris102:20170602091423p:plain

レベルデザイン

  • 今回一番ミスったなぁ、という点です。
  • 現在、出現率を決め手のランダムでアイテム/爆弾の出現を行なっていますが、「ゲーム進行に比例して徐々に出現率を狭める」「初めはどこで何が出るかこちらでステージを生成しておき、一定のアチーブメントを超えた地点から (物語の節目を表示しつつ) ランダムでやり込み要素に倒す」というのが、ゲーム説明/学習の観点からも、モチベーションの観点からも受け容れられやすかったのかなと思っています。

ランキング(墓場)

f:id:lycoris102:20170602091656p:plain

  • 一方、こっちは思いつきだったのですが、かなり受け容れられて良かったです。
  • 何かしらの目指すべき指標がないと没入出来なさそうだというのは見えていたので、ユーザ目標としてランキングを置くことにしました。だとすると、ゲーム終了後に「実は何位でした!」って言われるよりは、「もうちょっとで届いたのに….!!」みたいなのが視覚的に見える方が目標足り得ると思い、現在の形式になっています。
  • あとは個人的にゲーム内で個人を主張できる仕組みが大好きなので、遺言(コメント)を取り入れてみました。最初に指定できるようにするともっとデフォルト以外の文言が増えたのかなと反省しつつ、ユニークな文言を登録してくださる人もいてとても嬉しいです。

f:id:lycoris102:20170602084643p:plain

  • ランキングの実装自体は土曜日にごりっと行なったのですが、以下の記事のおかげでサクッと実装できました。この規模のゲームジャム/ハッカソンであればSpreadSheet使うのはかなりいい感じだと思います。

tsubakit1.hateblo.jp

qiita.com

演出

  • 今回もDOTween先生に助けられました。
  • 画面のフラッシュや振動、地面の縮小やフェードイン/アウト、ピッケルを動作までDOTweenがいなければしんどくてやってられない感じでした。ユーザの動作に対するフィードバックを設けてることは爽快感に繋がり、一度作ってしまえば、どのゲームでも使い回せるので、どこかで素振りしておくことをおすすめします。
  • 以下、手前味噌ですが過去に記載したDOTween周りの記事です。何かの参考になれば….

qiita.com

qiita.com

  • あとはタイトルにTypefaceAnimator使いました。uGUIにおけるTextコンポーネントの頂点を時間軸に応じて加工して、フェードイン/アウトや回転等の演出を簡単に実装できるアセットです。これも小さな労力/費用で大きな成果が得られやすいアセットなので推しです!

BGM/SE

  • 今回はパズルゲームなので主旋律抑えめで短いループで、作曲初心者ながら聞き減りしない (= 地味で良いの何度聞いても自然に受け入れられる/飽きない) ようなのがいいなぁ、と考えていました… が、結局時間がなくて、提出1時間前に作業開始、30分で出来たのが今回のやつです。個人的には不完全燃焼なんですが、他の人の感想も気になるところ。今回の雰囲気にマッチしているか否か、とか。
  • BGM/SEの作成について、魔王魂から一歩踏み出して自分で作りたいと思っている方に、個人的にFLStudioを圧倒的に推します。なぜなら、音楽知識がなくても、適当にドラムループを触ったり、コードにアルペジエーター掛けるだけそれっぽくなるので楽しいから!

f:id:lycoris102:20170602090143p:plain

  • FLStudioに関しては、トライアル版が無料で試せます。プロジェクトの保存が出来ない以外全ての機能が使えますが、如何せん一発で作りきる必要があるので、長期の作曲には向かないかなと (ずっと立ち上げ続けるなら別)
  • 以下はWindows向けリンク

www.image-line.com

他作品について

  • ちょいちょい遊んでます… 体調崩して本腰入れては遊べてないですが… (20/150くらい)
  • クオリティが高い、独自性がある、爽快感がある、他人との競争が楽しい、頭を使う、どの作品も良さがあって本当に学びになります。1週間でどうやって実装したんだろうって考えるのも楽しい。

次回について

  • 体調崩しちゃったり、ちょっと夢中になりすぎて家庭や仕事のことを雑にしてしまった感じもあるので、次回はもうちょっと小さく、コードとアーキテクチャを整えることを意識して参加しようと思います。
  • 前回に引き続きの参加ではありましたが、非常に楽しかったです。何よりこの2回の参加でインディー/ゲーム開発周りのフォロワーさんが50名くらい増え、繋がりが出来たのが財産だと思っております。
  • @naichilabさん、参加者の皆さん、プレイヤーの皆さん、お疲れ様でした!ありがとうございましたー!

Unity1週間ゲームジャム(2017/04/24〜)に参加しました

Unity1週間ゲームジャムとは?

f:id:lycoris102:20170502090621p:plain

Unity 1週間ゲームジャム | ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう

  • @naichilab さんの運営する unityroom というサイトで開催されたイベント
  • 1週間でお題に沿ったUnity製のゲームを製作する
  • 今回のお題は「跳ねる」
  • 最近まとまった時間は取りにくい自分もこれなら久しぶりにゲームを作れると思い、参加を決めた
    • 脳内的には即決だった

作ったもの「BounceShooter」

バー回転式リズミカルブロック崩し

Bounce Shooter | ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう

製作過程

1日目 (月)

  • 会社に着いたあと、定時までの1時間は作業すると決めた
  • まずは要件/やりたいことをまとめる
    • なるべくシンプルで複雑なことをさせない
    • シームレスに遊べる
    • 久しぶりに曲も作りたい
  • デザインモックを作りつつ、作りたいもののイメージを沸かせる
  • 帰宅後、1時間くらい作業して大体デザインは完成

2日目 (火)

  • 先日同様に、会社に着いた後にちょっとだけ作業を進める
  • (多分使うであろう) アセット群をインポート
    • UniRx
    • DOTween
    • Music.cs
  • 素材を書き出してUnity内に配置する
  • 以下の開発を行う
  • 左右を押したらバーが回転する仕組み
  • 一定時間ごとにボールが落ちて来る

3日目 (水)

  • ブロック崩しやるならブロックが必要
  • ということでブロックを生やす作業
  • 予め非アクティブな状態で敷き詰めておく
  • 一定時間ごとに非アクティブな状態なものからランダムで1つ選び、アクティブな状態にする
  • またバーに当たった時のフィードバックもここで作業
    • パーティクルの作成
    • 当たった瞬間だけ大きくなる
  • 社内Slackのゲームジャム部のチャンネルでFLASH時代の社風ではないブロック崩しの話題で盛り上がる

4日目 (木)

  • Unity側は結構落ち着いてきた
  • ここで他のゲームとの差別化要因として音との連動を考える
  • やりたいことにも書いたが、ここ最近曲を作ってなかったので曲を作りたいなーと考えていた
  • とりあえずプレイ時間(60秒~90秒)だけ制約にして作りたいように作った
    • 一応脳内ではゲームの進行イメージして徐々に盛り上がって後半でピークを持っていけるように … だけ考えて、後は好きなように作った

soundcloud.com

5日目 (金)

6日目 (土)

  • 土曜日は開発お休み
  • 子供の世話したり出かけたりしてた

7日目 (日)

  • 日曜日は妻も子供と一緒にお出かけということでラストスパート
  • 譜面が途中だったので調整
  • スコア機能作ってなかったので急いで作る
  • 各種衝突時にSEが当たってなかったので急いで作る
    • FLStudioのプリセットからそれっぽいものを引っ張って来る
  • タイトル/結果画面を作ってなかったので急いで作る
    • なるべく他の操作させたくない (一貫性) のとチュートリアルの役割も含めて、左右のキーだけでなんとかなるようにした
    • 最初はボールを任意のオブジェクトに当てたらスタートとか考えたけど、今考えると結構じれったくて、現状が良かったのかなと
  • ツイート機能も急いで作る
  • WebGLビルドしている間にアイコンとスクショを作成
  • 間に合ったーーーーーーーーー!!!!!!!!
    • 製作時間約15時間、お疲れ様でした!

感想

自分のゲームに関して

  • 完成度はそこそこ高いけど、ゲームとしては面白くない
    • 繰り返し遊ぶためのモチベーションが足りない
      • 次はこうしてやろう、というビジョンが湧きにくい
    • 爽快感が足りない
      • ブロックが残った状態で次に行ってしまうのもやっと
    • 自分の考え通りにゲームが動かない
      • 角度を変えてもどのあたりに飛ぶか分かりにくく、思った通りに操作しにくい
  • 上記を解決するアイデアとして以下の様なものはある
    • 配置をランダムではなく、指定する
      • 的確なタイミングで的確な位置に飛ばすことでコンボする設計
      • 上記が繰り返し遊ぶことで認識できる様になる
    • 補助線/落下予測地点の設置
    • リズムに合わせてボタンを押すことでボム発動
      • 現在のボール位置の周辺のブロックを一気に破壊する
  • そもそもの設計が考慮不足な気がするので反省
    • かなり勢いで作ってしまった (この勢い、ゲームジャムでは大事なのだけど)
    • 次回の1週間ゲームジャムでリベンジしたい
  • それでもコメントやTwitterですごいお褒めの言葉を頂いて、とても嬉しく思ってます…!!

他の人のゲームに対して

1週間ゲームジャムについて

  • 自分のような家庭持ちで土日はちょっと家族と出かけたり子供の世話したりで、通常のゲームジャムには出にくい、みたいな人でも気軽に参加できて良い
  • ゲーム製作者の方にいっぱいフォローして頂いてとっても嬉しい
    • これを機にどんどん繋がっていきたい、よろしくお願いします!
  • 主催の @naichilab さん、参加者のみなさん、お疲れ様でした!ありがとうございましたー!

余談

  • 自分の最高スコアは190です
  • コツはあまりブロックが蓄積していないときは壁打ちしてボールを温存させておくこと

第3回UnlimitedHandハッカソンに参加しました

unlimitedhand.connpass.com

参加しました! 久しぶりのイベント参加で楽しかったー(ˊ꒳ˋ*)

ハッカソンでやったこと

  • (1) UnlimitedHandの紹介
  • (2) 開封/セットアップ
  • (3) Unityサンプルプロジェクトの体験
  • (4) 各自開発

(1) UnlimitedHandの紹介

www.youtube.com

  • H2L株式会社の開発した腕に巻きつけて利用するデバイス
    • VR/AR Gameのコントローラーからスタート、"体験の共有" を目指す
    • 例えば、プロの演奏する楽器の指の動きの再現
  • 最近ではNHKサイエンスZEROで紹介
  • UnlimitedHandで大まかに出来ること
    • (1) インプット: 内側のフォトセンサーによるジェスチャー認識
    • (2) アウトプット: 電気刺激による深部感覚の表現
      • 筋や腱、関節から伝達される感覚
      • 手の位置、重みや抵抗
      • e.g) 手に鳥が乗っている感覚の再現

(2) 開封/セットアップ

(3) サンプルプロジェクトの体験

  • サンプルプロジェクトをUnity上で実行
    • 以下のような内容 (動画撮ればよかった…ぐぬぬ)
      • まず、腕を下げてキャリブレーション
        • 指を動かした時の変化を感知しやすくするため
      • 指を引鉄を引く様に動かして銃を発砲
        • はじめは少し関係ない手の状態でも発砲してしまう
        • ただ何回もやる毎にゲーム側でいい感じに閾値を調整してくれるっぽい
          • (人によって個体差があるから広めに初期値を設定している…?)
      • 電気刺激により発砲の反動をフィードバック

(4) 各自開発

  • (参加者の傾向もあり) 説明を重視して、ここの時間は1.5時間程度
  • 手を握った/開いた時のフォトセンサーの値を見つつ調整
    • TODO: コード周りやハマりどころは後でQiitaに書く…はず

感想

  • 電気刺激やばい!!
    • 刺激によって手首や指がピクッと動くのを体験!
    • これは結構個人差あるっぽい
  • ゆっくりじっくり触ってみたいデバイス
    • 8つのフォトセンサーの組み合わせでどの指や手首動きと連動しているか判定する
    • ちょっと時間内に見切れなかったので、もうちょい色々試したい
  • いろんな分野の人が関心を持つ
    • 医学/アートの観点から興味を持って参加している人がいた
    • VR/ARコントローラーの視点に留まらない可能性のあるデバイス
  • 色々聞ける
    • 回路も担当したH2L代表の岩崎さんが直々に講師を務めてくださった
    • 懇親会もあったので、今後の展望など気になる人も色々聞ける感じ
    • というわけで、多分第4回もあると思うので、興味ある人、とりあえず触って見たい人、おすすめです!