TATIKUNLOG.

主にゲーム作りについて書き留めるブログ。

2Dアクションゲームの動きを学べるPlatformer Toolkitが面白いので紹介



PR

結構前に「プラットフォーム・ゲーム」を学ぶことができるゲーム「Platformer Toolkit」が出ていたので、そちらの紹介です。

ちなみに、 プラットフォーム・ゲームは 

キャラクターをジャンプさせて足場から足場に跳び移ったり、障害物を跳び越えたりして進むゲーム (プラットフォーム・ゲーム - Wikipediaから引用) 

の事です。

記事を書いたきっかけ

中々面白いゲームなのですが、言語が英語のみで日本語話者がやるには少しハードルを感じました。

この記事がそう感じていた方のプレイの一助になると良いと考え、この記事を書きました。

ゲーム本体

Platformer Toolkit by Game Maker's Toolkit

作者の動画

www.youtube.com

英語ですが、一応日本語字幕に対応してるはずです。

概要

主人公の Kit の動きを調整しながら、ゴールを目指すゲームです。

この動きの調整がゲームの主の部分で、ジャンプや移動に関するパラメータを細かく操作できます。

ジャンプの高さを調整した例

操作方法

  • Jump(ジャンプ) - Space / J or Bottom Face Button or Right Face Button
  • Open / Close Toolkit(動きの調整パネルを開く/閉じる) - T or Top Face Button
  • Continue Narration(次の説明進む) - C or Start Button
  • Skip Current Line(説明のスキップ) - P or Right Bumper
  • Toggle Fullscreen / Windowed (ダウンロード版のみ) - F
  • Quit (Downloadable Only) - Escape

(ゲームページより引用)

移動WASDキーカーソルキー でできます。

タイトル画面

タイトル画面には、「全機能アンロック」と「BGMのオンオフ」、「字幕のオンオフ」ができるボタンがあります。

このゲームは、プラットフォーム・ゲームのジャンプや移動について学びながら調整して進行していくのですが、その学習していく部分を飛ばすのが全機能アンロックです。

字幕はその学習する際に出てきます。 英語が分からないと、字幕があっても理解できないんですが……

今回はその学習部分について詳しく書くのではなく、どういったパラメータ操作できるのかについて詳しく書きます。

↑アンロックせずに順番に進めていく場合、こんな感じでブロックに阻まれますが、右下の矢印マークをクリック(またはCキー)すれば、説明が進行していきます。

パラメータ説明

Running

  • Acceleration

移動の加速度の設定です。

最高速度(Max Speed)に達するまでの時間を設定します。

  • Max Speed

最高速度を設定します。

  • Deceleration

移動の減速の設定です。

最高速度(Max Speed)からどれくらいの時間をかけて静止するかの時間を設定します。

  • Turn Speed

進行方向と逆方向に進む速さを設定します。

値が小さいと滑るような動きになります。

← TurnSpeed速め → TurnSpeed遅め

  • Instant Movement

オンにするとAccelerationとDecelerationの設定に関係なく、Max Speed一定で移動するようになります。

所謂等速移動に設定する項目になります。

← Instant Movementオフ → Instant Movementオン

Jumping

※ジャンプを開始する地点と落下地点の高さが同じ事を前提に書いてます

  • Jump Height

ジャンプの最高到達点の設定、つまりジャンプの高さを設定します。

  • Down Gravity

Jump Heightに到達後、どれくらいの速度で落下するかを設定します。

  • Duration

滞空時間を設定します。

ややこしいですが、Down Gravityの設定では最高到達点から落ちるまでの速さが変わりますが、Durationはジャンプ全体の速さの設定をします。

  • Air Acceleration

空中で移動する加速度を設定します。

  • Air Control

空中での入力でどれくらい左右に調整できるかを設定します。

値が大きいほど空中で左右に振り向きながら移動できるコントロールが効きます。

  • Air Brake

値を大きくすると、空中で移動の入力が無い場合、空中で横方向の移動を停止する力がかかります

値が小さいと、そのまま減速せずに横方向に移動します

  • Double Jump

オンにすると空中でもう一回ジャンプできるようになります。

  • Variable Height

オンにすると、ジャンプボタンの長押し具合でジャンプの高さを調整できるようになります。

Camera

  • Zoom

カメラのズームの設定です。

  • Damping

直訳すると減衰とか出てきますが、カメラが動きに対してどれくらい素早く反応するかを設定します。

Dampingの値が大きい場合、Kit(プレイヤー)が移動したのに対して、遅れてカメラがついてくるようになります。

  • Lookahead

Kit(プレイヤー)の移動に対して、どれだけ前にカメラを移動させるかを設定します。

  • Ignore Jumps

オンにすると、ジャンプした際にカメラが追わなくなります。

Assists

- Coyote Time

床から落下した際に、一定時間ジャンプをする猶予時間を持たせる設定です。

崖ギリギリジャンプとかする際に、多少入力が遅れてもジャンプできるように余裕を持たせることができます。

Coyote Timeを設定した例 どう見ても落ちてますが、ジャンプできています

  • Jump Buffer

着地前にジャンプボタンを押した場合でもジャンプの入力を受け付けるようにする設定です。

例えば一定時間経つと落ちる足場を次々移動するときなど、

連続してピョンピョン飛ぶときに、正確に着地のタイミングに合わせてジャンプを入力するのは難しいため、こういった先の入力を受けられるようにすることで、操作の難しさを下げることができます。

この着地直前のジャンプ入力にどれだけ余裕を持たせるかを設定できます 余裕0は結構操作が難しくなります……

  • Terminal Velocity

所謂終端速度。Down Gravityによって加速して落下速度が大きくなりますが、ある一定の速度に達すると加速しなくなります。その限界の落下速度を設定します。

  • Rounded Corners

オンにすると Kit(プレイヤー)の当たり判定の角 が丸くなります。

Juice

  • Particle

走ったときや、ジャンプしたとき着地したときパーティクルエフェクトを表示するかの設定です。

パーティクルをどれくらい沢山出すかも設定できます。

  • Squash & Stretch

ジャンプ時着地時Kit(プレイヤー)の体が変形するエフェクトを追加する設定です。

  • Trail

Kit(プレイヤー)が移動した軌跡を描くエフェクトの設定です。

  • Lean

Kit(プレイヤー)が移動した際に傾くエフェクトの設定です。

傾く角度や傾くまでの早さを設定できます。

  • Sound Effects

ジャンプした際や着地した際に効果音を鳴らすかの設定です。

プリセット機能

おなじみのプラットフォーム・ゲームの動きを再現したプリセットが用意されています。

それぞれ正しそうかどうかはちょっと確認してないんですけど……

自分の設定も保存できるので、丁度良いと感じた設定と比較してみると面白いんじゃないでしょうか。

おわりに

アクションゲームではこういう細かい動きの調整が、ゲーム全体の面白さ快適さに直結してくるのではないでしょうか。 とくにAssistsの部分に関しては、他の2Dアクションゲームではどういった工夫をしているのだろうかと気になりました。

どうしたら楽しい動きになるか、考察していきたいですね。

参考

Assistsについて調べている際に参考にしました。

2dgames.jp