Categories
Nice Disc Nice Disc: The Last Hot Blood Nice Fall Nice Haul Snow Fight

Nice Disc 再始動

以前、ゲームジャムでNice Discというゲームを作りました。1枚のキーボード上でできる対戦格闘ゲームでPCがある環境ならいつでもその場で対戦できる、そんなゲームを作ったつもりでした。

ゲームを作った自分としては、その出来上がりに対して条件付きで満足しています。

その条件とは、キーボード1枚を実現できたこと、そのゲームジャムのテーマをしっかりフォローできたこと、ゲームジャムに遅刻せず提出でき、なおかつ『一応』遊べる範囲までまとめることができたことです。

プロトタイプを作り、遊べる状態にしてハイ終わり。正直仕上がりとしてはそのレベルだったと思います。出来上がった瞬間はそれなりに思い入れもありましたが、ボツにしたり最初から作り直しになっても後悔しない程度の仕上がり、アイデアを試したという意味合いでまあこんなもんでしょう。

で、せっかくアイデアを試したので、本腰を入れたプロジェクトが欲しくなりました。

ゲームジャムのテーマに合わせる、製作期間の縮小、ブラウザゲームであるためキーボード上ですべてを再現する、これらの条件を一切取っ払い、Nice Discを作り直してみたいと思いました。

盛るのではなく作り直す。修正するのではなく作り直す。前回のもので得たものを残し、その他を完全にボツにする

作ったうえでの感想、プレイしたもらったうえで効果的だったコメントをまとめると

・物を投げるというゲームは、意外にとっつきやすい。間合いという概念を取っ払うことは、触りやすさにつながるのでは?

・物を拾って投げるという行為は、連続攻撃に難易度を増すどころかほぼ不可能。初級者が熟練者にボコボコにされて全く面白くないという現象に歯止めをかける。

・攻撃力を失ったDiscが自由に移動する行為はゲーム自体のランダム性をます。より自由にした方がゲームをダイナミックにする。

自分のゲーム作りにおけるBotの動きの基本ルールを作り出すことができた。

・攻撃するより、よけるほうが面白いというコメント、かわして投げる時に優越感を感じるというコメントをいただいた。このゲームの面白さの神髄は『よける、かわす』にあるのではないか。伸ばす価値のある概念。

そもそも、フリーなDiscが自分自身の近くにあるとゲームが有利になる。かわす方が楽しいという概念はこのゲームを有利にする。これらの条件をぐちゃぐちゃに混ぜ合わせ、一つのゲームの大枠を決定しました。

  1. ジャム用Nice Discと違い、相手の後ろに立ち回れるようにする。
  2. 攻撃力のないDiscをもっと激しく、プレイヤがアクロバティックにDiscを拾えるように
  3. 攻撃ボタンを押して気持ちよくDiscを投げる。
  4. よけやすくするためにジャンプを気持ちよく、ステージにプラットフォームを。
  5. 間合いではなく、位置取り合戦になるようなステージ設計とキャラのスピード

これらを実現するゲームを作ることを決意しました。

アイデアを育てる

正直、これを作ろうとまとめた内容はざっくりしていて、パーツとして足りないものが多かったので、これもゲームジャムで育てていこうという事にしました。

ちょっと順番が前後する部分もありますが、現在制作のNice Disc: The Last Hot Bloodにたどり着くまでのジャム用ゲームを記載します。

Snow Fight

雪だるまによるタワーディフェンスで、移動量に応じて雪だるまが強くなるというゲームです。このゲームを作った後、『雪合戦を作りたい』と思いました。物を拾って投げるというゲームの活力になりました。

Nice Disc(Classic)

前述のゲームです。雪合戦作ろうと思ったところでテーマが『回』、そして季節外れだったのでDiscに変更。多くの問題点を抱えながらも完成できたのですが前述のとおり、あきらめきれなかった。作り直しを決意。

Nice Fall

プロジェクト開始の決意後、一発目のゲームで方向キーでの感触向上のため、方向キーによる移動だけのゲームを考えました。

それ以外の概念を取っ払い、今までのプラットフォーマでマイナスとなる落下をゲームにし、それにまつわるアイデアを盛に盛ったのだけど、これが意外によくまとまりました。ある意味修行の意味で作ったゲームが今までのゲームで一番まとまっていたと思います。

取り合えず、方向キー移動の概念を再確認できました。そして、すごく大きいコメントをいただきました。『4人でやりたい』。最終的にパーティーゲームになるのだから、Nice Discは4人でできるゲームにしたいです。

Nice Haul

プラットフォームをジャンプで乗り越えるというNiceFallでやらなかったことをやりたくて作りました。

ゲームジャム前に自身に課すテーマとしてはあまりにもシンプルすぎるのですが、やっちゃいけないことをできるだけつかみたかったので技術的に新しいことへの挑戦は取っ払いました。ただ、この時のゲームジャムのテーマと2日間という納期は重くのしかかり、ゲーム自体には課題が多いように思います。特にBot。

テーマは綱引きなのですが、連打ゲー、QTE、タイミングゲーになることを避けたかった。結果、プレイヤー同士でやると軽く運ゲーとなっております。連打ゲーじゃない綱引きは意外に面白いテーマでありいつかまた挑戦したい。

Nice Disc: The Last Hot Blood 製作開始

ある程度の材料が揃いました。

4人プレイの対戦ゲーム。

キャラクタは与えられたプラットフォームを自在に飛び回り敵の攻撃をかわす。

フリーのDiscが落ちているところに陣取り、激しい攻撃を敵に浴びせる。

Botはプレイヤーの攻撃に反応し、プレイヤーのように攻撃をかわし、プレイヤーの動きから狙いを定め正確に攻撃を仕掛けてくる。

だいぶ理想の状況になりました。現時点でBotの動きが人間にはちょっと厳しすぎるほどの正確性を持っており、もうちょっとばかり弱くする必要がありそうですが。

2021年9月21日にテストプレイ用のページをitch.io上に公開する予定です。

また、対戦だけではなくストーリ仕立ての2Dプラットフォーマも制作したいと思います。このルールは2Dプラットフォーマにそのまま移行しても、それなりのゲームになると思います。また、Discを拾わなければ攻撃の手段がないという厳しい条件が、楽しいゲームになるのではないかと信じています。

2Dプラットフォーマの敵キャラを作るとなると、近接攻撃の敵(間合いの駆け引きをするBot)が必要になるし、激しく飛び回るプラットフォームが必要になります。これからのゲームジャムはこの辺のを作るかな。

Categories
Nice Fall

今回得たものは?

さすがに体力的にきつい!!Unity1weekのゲームを全プレイさせていただき、できるだけ紹介させていただきすごく楽しく過ごしました。

テーマのとらえ方は人それぞれで品質も人それぞれ、いろいろあっていいお祭りです。

批判を覚悟で言うと、短納期のゲームジャムでは、ある程度の粗さは『祭りの花』と私は思っています。高い品質のものもとても楽しんでいますが、『試しに作ってみた』『初めてやってみた』というゲームも非常に興味深く、粗さを共有してくれることに喜びを感じています。

私も基本的には遅刻しない主義なので、粗いまま投稿しています。実力の問題もありますが。修正は全部プレイを完了するまで行いません。『ここを粗くするとこんなにゲームは不便になるんだぁ』など感じていただければお互いのプラスになるのかな、と思います。やさしく厳しく接してあげてください。

さて、ブログで何回同じゲームの話をするのか、本当に申し訳ないのですが、Twitter上では皆さんの紹介を中心にしているので、自分のゲームの話をします。日記みたいなもんです。

本日、5月9日時点でお祭りはまだ終わておりません。Ludum dareもU1Wも。ですが、すでに大きすぎる収穫を得ており、今後の心の持ちようにもつながるので記録。

①致命的なバグの発見

正直、ほっといちゃあ、いけねえ奴が見つかりました。というか、すでに知ってました。NiceFallはプレイヤ同士で競い合うゲームですが、理不尽にコントロールが不能になる箇所がプレイ環境によって発生します。

壁に接した状態でジャンプをするとまれに動かなくなる時があります。実は投稿10分前に別のPCで試してすでに知っていました。発生頻度もまれで、プレイ環境にも依存し、すべてのプレイヤに影響するわけではないので、お祭り参加を優先しそのまんま投稿。当時原因も分からなかったです。

1週間たって頭がクリアになりようやく答えが見つかり、全プレイを完了したので修正できました。残念だけどこのエラーは、深刻でゲームジャムでなければリリースしないレベル。本当に多くのプレイをしていただいた方には失礼なことをしてしまいました。

原因は、天井にプレイヤが頭をぶつけた時にジャンプを止め落下するというギミックをいれているのですが、横の壁に接した際にも発動し、ジャンプを禁止していたことでした。

これ、2Dゲームを作っている以上は、同じ現象をまた発生させる現象であり、シリアスに受け止めるべきなのですが、ゲームジャムでこの現象に出会えたのはものすごくラッキー。本当に運がよかったと思います。おそらくもう二度とこのミスはしないでしょう。細部に宿る悪魔をまた、一匹除去しました。しかも根強いやつ!!

②2Dプラットフォーマのキャラ操作を整理できた

今回のNiceFallは、プレイヤは移動するだけです。攻撃ボタンはありません。それゆえ、ほかの味付けを一切気にせずキャラの移動に没頭できました。

横移動、ジャンプについてプレイヤが単純に当たり前と思うことに、とにかくこだわりました。攻撃やレベルデザインによってはそのまま転用することはできない設定ですが、基本となるものを抑えられたと思います。

例えば、自身のキャラクタが近接攻撃を使用する場合、今回の横移動は早すぎるでしょう。(敵キャラに対し自キャラがツヨツヨのケース)プレイヤは攻撃をミスして敵にぶつかることがないようスピードを調整する必要があります。

例えば、敵の攻撃が弾幕に近い場合(自キャラに対し敵キャラがツヨツヨのケース)、ジャンプ中の横移動はもう少し早く、その他の移動はもう少しゆっくりであるべきと思います。自キャラを目で追いやすく、攻撃をかわしやすく。

例えば、プラットフォームをジャンプすることを中心としたレベルデザインの場合(ゴールまでチャレンジングな設計のケース)、プレイヤのジャンプは、もう少し低くするべきでしょう。難しさの調整の意味と、着地の地点をフレームアウトさせないために。

そのほかにも、スピードアップアイテムがあるケース、ダッシュボダンがあるケース、プレイヤがレンジアタックを持っているケース、マントを羽織っているケースなど結局、調整が必要です。

ただ、今回はそれらが一切ないゲームを作ったので、本当のベースとなりえるものを作れたと思います。

③競争する楽しさを改めてかみしめた

実際、競争はストレスです。ゲームにもストレスは必要ですが嫌いな人もいるでしょう。うまい人には絶対勝てない設計がレースゲームの着点で、それを何とかするという行為が本当に楽しかったし、意味があったともいます。接戦を演出するという事、これを開発する側が用意してあげれば対戦ゲームの楽しさは保証されるものかも知れません。たぶん、私はNiceFallの中に『楽しさ』を演出するギミックは作っていないと思います。楽しいと感じてくれた方は、きっと一緒にプレイした方が楽しい方だったり、想定した方が楽しい方だったのだと思います。

対戦ゲームはずるいです。プレイ中のコミュニケーションは開発の設計に組み込むことができないのに、確実に存在し楽しさをつくる最大の要素だからです。残念ながら私がご用意したのは、その土俵だけ。

これは何年も前から思っていた私のゲームに対する概念で、今回はそれそのものを形にできたと思います。もし、このゲームを面白いと思ってくれた方がいたとしても、残念ながら面白いのは私のゲームではなく、プレイヤさんとその友達です。

④おふざけ要素を入れられなかった

Ludum dareに出す都合もあり、言語障壁があったのかもしれません。ちょっとこれは後悔。お祭り終わる前に何か一つ加えてアップデートします。すんごいくだらないやつ!!

Categories
Nice Fall

Nice Fall作りました

2種類のゲームジャムに参加させていただき、Nice Fallというゲームを作りました。一つはLudum dare48、長い歴史のあるゲームジャムで、多分もっとも有名なジャムではないでしょうか。今回のテーマは『Deeper and deeper』。

もう一つはUnity1Week、かなり高頻度で参加させていただいているジャムで、日本のUnityユーザーに広く愛されておりゲームエンジンを限定している故か、暖かいコミュニティが形成されているジャムです。今回のテーマは『2』。

今回作ったゲームは、井戸の底まで落下し続けるレースで2画面2人プレイとして、おそらく両方のテーマを回収できたと思います。

Nice Fallは横視点の単純なゲームであり、パッと見た感じや操作した感じはどこかで見たことあるような感じで手抜きに見えるかもしれません。そのどこかで見たその元となったゲームについては大いに参考にしましたが、一応今回のゲームの目的に対して私自身の視点でいろいろ調整をしました。どんだけ頑張ったかを語るのはちょっと野暮ですが、かっこ悪いけど語ります。

ゲームのルールへのこだわり

まず、ゲームのルールです。落下という現象は加速度を生みます。発生する速度は基本的にはコントロール不能に近いのではないでしょうか。勝手に加速度が発生するという事は、レースゲームにおけるアクセルボタンを不要とします。より、シンプルな操作を実現する都合のいい競争ルールです。多くのレースゲームは壁にぶつかると減速し、再加速まで大きな時間を要しますが、落下の場合、もう一度落ちれば再加速が可能。スピード感と親しみやすさを両立させることができます。

レベルデザインへのこだわり

次にレベルデザイン。後れをとったプレイヤをサポートするシステムは時に嫌われ、時に愛されます。とあるレースゲームでは、順位が低いと加速度強化をしたり、前方のプレイヤを激しく攻撃するギミックが発生します。これらのギミックは時にやりすぎを発生させてしまい、マリオカートの青甲羅は、順位の交換を絶対的なものにまでしてしまいます。プレイヤにとってより納得しやすく、より自然に、なおかつ有利になっても頑張りが必要なデザインが必要です。

上記を実現するために多種のギミックを用意しました。今回のゲームに代表的なものとして崩れるブロックがあります。最初に到達したプレイヤはこのブロックに到達すると重力加速をいったん止められます。崩れるまで待つか、別の道を探して再加速が必要になります。遅れてきたプレイヤがそこに到達するときにはそこにブロックはありません。ノンストップで下降でき、大きな逆転のチャンスをつかむことができます。一方先行したプレイヤもできるだけブロックを崩さず落下すれば後方のプレイヤに差を広げることができるかもしれません。

棘も逆転を可能にするオブジェクトです。プレイヤに刺さると消えてなくなるため、先行プレイヤがヒットすると後方プレイヤは進行が楽になります。当たった時のピヨピヨもロスが大きいのでレースが拮抗していると緊張感を生みます。

そのほか、落ちる岩石などを用意し、先行プレイヤを直接攻撃できるものも用意しました。ただし、岩石自体は落下ではなく転がって落ちるのでプレイヤの落下より遅いため、仕掛けた自分に当たる可能性があります。プレイヤにスキルを要求するギミックでもあります。

また、追い越す瞬間に他のプレイヤを踏むことで、動きを止めることができるようにしました。落下を競うゲームにおいて本来高い位置にいるほうが不利なのですが、ここも逆転の要素です。

動く床、ジャンプを要求する壁などは、プレイヤのスキルを要求するものになります。ここでスーパープレイを決めてもほんのわずかしかアドバンテージは見込めません。しかし、確実にそのアドバンテージは存在します。上級者がよりハイレベルのプレイをする仕掛けとなっています。

キャラクタの動き

キャラクタを動かすという事はアクションゲームにとって、最大限に重要な要素です。3Dゲームの場合『プレイできない』事態まで発生することがあるのですが、2Dゲームの場合は、一応何とかプレイできるところまで収まりやすいと思います。その一方でプレイヤからの要求が厳しく、プレイできるという程度では満足してもらえません。レベルデザインの良さやストーリの良さなんて、動きの悪さのせいでぶっ飛ばされることだってあります。

今回のゲームでは、まず横移動にこだわりました。過去に作ったNice Discでは熟練のスポーツ選手が狭いリングできびきび動くことを想定したため、ボタンを押したら最高速度、離したら完全に止まる、というロボティックな動きになりました。正直工夫がなく作る上で楽です。Nice Fallではやや動物的な動きが欲しいけど、アンフェアに感じない動きを目指しました。動き出しは0.2秒程度加速時間が発生します。そこから最高速度に達し、キーを離すと減速し0.2秒後に止まります。正直ゲームに影響しないレベルの短い時間ですが触り心地にほんのわずかな違いが生まれました。おそらく加速減速はプレイヤは気づかないと思います。勝負に影響もほとんどしないはずです。ただ動きに柔らかさが生まれたと私は思っています。

そしてジャンプ。下降するゲームなのでジャンプをする機会は少ないです。しかし、必要以上に高いジャンプをするとタイムロスにつながるという事がこのゲームの要求するスキル性にマッチするため、やや高めのジャンプを用意しました。そして押している長さで高さを調整する感じです(大体のUnityチュートリアルはそうなっていますね)。今回のジャンプでは離した瞬間、0.05秒ほどゆっくり上昇し、その後加速度的に落下するようにしました。最高地点で一瞬止まるような感覚を覚えるかと思います。ジャンプを必要とするプラットフォームで他のプレイヤと空中で位置取り合戦を楽しんでもらうためこのような動きを採用しました。

あと、完全に不要なのですがプラットフォームからの落下開始から0.1秒間だけ空中でジャンプ可能にしました。よく言うコヨーテジャンプです。このゲームへの将来性の為実装しましたが、このゲーム内で役に立つ瞬間はありません。勝負抜きで試してみていただけると幸いです。

CPU戦の調整

PvPが基本のゲームですが、どんな時でも楽しめる必要があるためCPU戦を用意しました。Unityのナビメッシュのようなものを実装してしまうとプレイヤは絶対勝てません。目の前のギミックに行き当たりばったりで対応するような挙動であるべきであり、時々トラップに引っかかる必要があります。実はNice DiscのCPUがディスクをかわすのとほとんど同じ仕掛けです。ここはあまり語りたくないですが、おそらく十分楽しめる出来になっていると思います。

後回しにした部分もたくさんあります

2Dゲームを作る際に、ジャンプの高さ調整や移動速度、移動加速度、落下スピード、当たり判定の大きさなど、これらの当たり前の作業がすべてを決めてしまいます。よく神は詳細に宿るという言葉があり、それを意識した素晴らしい作品をたくさん存在しますが、2Dゲーのキャラ移動においては、神も宿っているようですが、悪魔も詳細に宿っているようです。こいつらを徹底的に排除しなければなりません。それも、そのゲームの目的であったり、キャラクタの性質によって違うものを要求されるので、新しいゲームを作るたびにここには時間をかける必要があります。いいゲームを作る以前に、ゲームを壊してしまう恐れがあるためです。

そうすると、残念ながら音や絵については、どれだけ時間をかけないかを目指してしまいます。こだわったところで私自身の実力値もあるので、こだわりが結果に結びづらくなるため後回しになりがちです。この辺は直感でやっています。ただ、直感でやった故、愛おしく感じる部分もあります。

やりたいことを精一杯やる事、これが何よりも大事なら、まあこれでいいのかな。

ただ、いつの日か絵のこだわりを人に語れるようになりたいですね。