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ゲーのキャラ移動においては、神も宿っているようですが、悪魔も詳細に宿っているようです。こいつらを徹底的に排除しなければなりません。それも、そのゲームの目的であったり、キャラクタの性質によって違うものを要求されるので、新しいゲームを作るたびにここには時間をかける必要があります。いいゲームを作る以前に、ゲームを壊してしまう恐れがあるためです。

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

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

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

Categories
Nice Disc

WASDと矢印キー

プレイヤーコントロールにおけるキーボードレイアウトは、快適さを決める重要な要素であるにもかかわらず、好みも分かれており、ある程度の常識化が進んでも流派が存在し、現時点でおそらく正解はないと思う。これから下記の考察は、個人的な意見であり何も検証もしておらず証明するデータも持ち合わせていない。ゲーム作りの段階でそのデータがない状況ながら決定を下し、プロジェクトを進行しなくてはいけない事情を理解したうえで、意見の違いは受け入れてほしい。

2Dプラットフォーム、3Dアクション、RPG、ほとんどのゲームにおいて広い平原をプレイヤーが移動する必要があり、それがゲームの楽しみの大部分を占めている。この操作を決めるのはファミコン以降で十字キーと呼ばれたり、アーケードではジョイスティックが活躍し、アナログスティックやDpadが現在の家庭用の主流でしょう。今回はそのコントロールをキーボードで行う際のレイアウトを考える。

キーボードは、ゲームコントローラと違い、様々な機能に対応するためボタンが多く、ゲームで全部のキーを使うことはほとんどない。そのうえ、マウスという自由度の高いツールが用意されている。その中でプレイヤの移動は、WASDと矢印キーの二大派閥あり、それぞれのユーザーはもう片方のゲームを『コントロールしづらい』と評価しがちであるが、それぞれに利点があり不利な点もあると思う。

矢印キーは、キーボード上で割り当てられている機能にたいし、非常に素直である。要は、上ボタンを押せば上に移動する。普段PCゲームをやらない人にとって、受け入れやすい。WASDではそうはいかない。Wが上というのは、ある程度ゲームに慣れている人しか通じない。さらに矢印キーは、キーボードの他のキーから離れている場合が多く、誤操作を防止できる魅力があると思う。

逆にWASDは、左手で操作ができ、PCゲームの最大の特徴であるマウスの使用に右手を自然に使える。矢印キーでも左手で使えばいいのだが、キーボードのセンター位置と体の位置からすると違和感を感じる。ノートPCでプレイされる方には大きい問題になりえる。ほかのボタンと近いことは利点として働く場合もあり、RPGなどでは、数字キーなどにポーションや魔法アクションを仕込んで、キャラ移動のついでに操作ができる。

ゲームの種類やそのゲームの特徴で許容できたりどうしても必要な利点だったりするのでしょう。

不利な点は、相手側の利点をひっくり返せば、そのまま不利な点になるのだが、一つ書きそびれていることがある。WASDは左手で押せることを利点として書いたが、矢印キーを逆に右手で押したとき、これは家庭用コンソール用のコントローラと配置が真逆になる。サイドスクロールや横シューティングのようなレトロよりのゲームをプレイする場合には、マウス不要になるため、WASDでも矢印キーでも行けるはずなのだが、これが問題になると個人的に思う。

サイドスクロールの作者は、コントロールでもキーボードでも両方でゲームを楽しんでもらいたいと思っている方が多いのではないだろうか。私も、鳥獣妖怪戯画ではそれをベースにゲームを設計している。ステージ2まで進めて、そこから先はコントローラーでやりたいというプレイヤーがいるとすると触り心地が変わってしまう。基本的に不可能ではあるが、キーボードをよりコントローラに近い形で使用してもらうためにはWASDのほうが優れいてるのではないかという結論に至った。

ではなぜ、コントローラにおいてキャラ移動が左側にあるのか。完全に推察の域でしかないが、サイドスクロールのゲームが右側に進むことが、左側にキャラ移動キーがあることを自然にしている気がする。

左側にキーがある状態でキャラを右側に移動する行為は、キャラを自分の体の中心側へ移動している感覚になり、コントロール下に置いている感じがする。ボールを足の内側でけるほうが私のような初心者はボールを扱いやすい。外側でけるにはちょっと練習が必要な感じがして、サイドスクロールで左側に進むとその感覚の弱いバージョンが自分を襲ってくる。

同様に右側の矢印キーで右に進むサイドスクロールをプレイすると同様にその感覚が生まれ、シューティングゲームではやや逃げ腰プレイになる。

体の中心に向けてキャラを移動させるということが肝なのではないか、と仮説を立ててみた。

『キャラクタが向いている方向はプレイヤーの体の中心であるほうがコントロールしやすいのではないか』

実際、矢印キーアクションゲームの名作、洞窟物語は、いきなり左向き移動から始まる。ぐるっと回って右移動してコントロールになれる感じ。

私の周りだけかもしれないが、ストⅡがスーパーファミコンで出たばかりのころ、左に立つと竜巻旋風脚はできるが、右側に立つと波動拳ができない人が多数いた(アクションボタン以外は同じコマンド)。

右側にプレイヤーがたち、左側に攻撃を仕掛ける初期FFは、十字キーは上下の使用が中心で攻撃の選択が方向を決めており、それは右手のA,Bが最終決定である。

いずれも慣れでカバーできるものだと思う。最終的にはそんなに重要ではない。ただ、初見でどう思うかはゲームがあふれている現代では大事であり無視できない。

というわけで今回、Unity1weekでは、左手でWASDを操作するプレイヤ1とおそらく右手で矢印キーを操作するプレイヤ2を戦うゲームを実験的に作った。Nice Discというゲームで、スクショを貼っております(いきなり敬語。宣伝なので)。アクションボタンを完全に排除し、左右移動のみでゲームを展開させるため、検証するには十分であろうと思う。

試しにWASDを右手で操作してみたり、利き手を意識してみたりすれば今後のゲームレイアウトに新しいヒントが見つかるかもしれない。

今度は、キーボード上のアクションボタンの配置について考えたい。それはまた今度。

Categories
Nice Ninja

みんなでゲームを遊びたい

私が小学生の終わりか中学生に上がったばかりのころ、とある友達に『新しいゲームを買ったから遊びに来い』といわれてその友達の家に行ったことがあります。お互い違う部活をたしなみ、遊ぶ機会が減っていた友人で正直びっくりしたのですが、久しぶりにそいつの家で遊ぶということがとてもうれしかった記憶があります。そいつが買ったゲームは聖剣伝説2でした。あのゲームボーイのアクションRPGが協力プレイになって最高に面白そうでした。そいつはひとしきりそのゲームが協力プレイであることを説明した後、一人でそのゲームを始めました(すでに協力プレイ可能状態をアンロック)。

私『え?君、わざわざ僕を呼んだよね』

やつ『うん、新しいゲーム買ったからね』

私『協力プレイなんだよね?そのゲーム』

やつ『RPGは一人でじっくり楽しみたいよね』

そういえば、こいつはDQ3を最初から最後まで私の目の前でほとんどしゃべらず、黙々とクリアした猛者だった。桃鉄も一人でやってた気がする(私がやつの家でジャンプを読み漁っていたのが原因)。過去に熱血行進曲でボコボコにしたのも悪かったのかもしれん。

きっと私が悪いのでしょうが、いい思い出です。

さて、ローカルマルチプレイは異常なほど楽しいです。これはゲーム作成者がゲームに組み込んだ以上の興奮を、友人や家族と作り出すことができるからなのかも知れません。今はオンライン全盛時代である上に、コロナの影響もありローカルでのマルチプレイにこだわる必要はないのかもしれませんが、あの興奮は忘れられません。

Unity1weekが年末にあり、私たちナイスギアゲームズは二人ですべてのゲームをプレイしました。ゲーム作りの勉強という意識は置いておいて、ただ単純に楽しかった。二人でゲームを共有するのが楽しかった。ゲームをプレイすることが楽しかった。ゲームは楽しいものだろ、当たり前だろ、それでも何度でも楽しかったといいたいほど楽しかった。ゲーム作りの理論や反省を見出すことも大事なのでしょうが、楽しすぎるお祭りでした。生き返った感じ。

家族と一緒にゲームをプレイするという感覚を改めてかみしめ、このかけがえのない時間をU1Wにゲームを提供してくれた方々に恩返しをしたい気持ちです。私のような弱小ゲーム作成者がゲームを作ったって恩返しにはならないかもしれませんが、せめて自分があの幸せの時間をどう感じたかをゲームで表現したいと思いました。

というわけで、ローカルマルチプレイ。

UnityRoomさんにゲームを乗せさせていただくのでゲームはブラウザゲーム。そうするとどうしてもコントローラではなくキーボードマウスでゲームを表現するほうが喜ばれます。よくあるパターンでは、一つのキーボードのキー割り当てで左半分をプレイヤ1、右半分をプレイヤ2とすることが多いようです。すごく楽しいゲームがすでにUnityRoom内にもあるのですが、それとちょっと趣向を変えたいと思います。

キーボードvsマウスという形式にして、お互い違うルールのもとで戦うゲームです。家族間でゲームをするときには、ゲームが得意な人と不得意な人がいると思うのでそのほうが都合がいいということ、ゲームをする場所がキーボードシェアより広く取れること、役割チェンジの時に席替えをする必要があるのですがそれが遊びの中のコミュニケーションになることを狙っています。

家族で笑ってもらえるゲームと思っていただけたらすごくうれしいですが、スキルの問題でそのレベルに達しないかもしれません。誰かの新しいアイデアの助けになればそれもうれしいですがそうなるとは限りません。ただ、私はゲームを作るんだ、楽しかったということを全力で伝えるんだという気持ちで現在このゲームの作成を行っています。

ゲーム作りで孤独を感じることがあるでしょう。コロナで今までのようにコミュニケーションをとれずつらいシチュエーションもあるでしょう(ゲーム作りに限らず)。この社会の状態は歴史の教科書に載る事態なのかもしれません。それはつらく悲しい歴史なのかもしれません。でも、そんな中で新しい楽しみ方を全力で作っている方がたくさんいて私もその一人でありたいです(実際に面白いかなんてどうでもいい、楽しみ方を作ることにトライしていたい)。そうすればきっと、歴史の教科書には乗らないでしょうが『あの時代、全力でみんなで笑って暮らそうとしていた』ことがどこか誰かの記憶に残るでしょう。というかそうだったらいいな。