tomo_manaのブログ

tomo_manaのブログ

Unityで一からゲームを作る方法を紹介しています。

Unity学習#34-1 戦闘メニューの構成

戦闘メニューを作る前に、戦闘メニューの拡張性について考えます。

基本的な構成

一般的な戦闘システムは、「誰が」「何を」「誰に」を繰り返すと仮定します。

f:id:tomo_mana:20210505180721p:plain
戦闘画面の遷移

(備考)
「にげる」は、ここではパーティ全体に適用。
「まほう」は「MP」など、体力の限り使用できる手段、また「やどや」で回復する。「アイテム」使ったらなくなる手段を想定。
※行動を決定する「オートバトル」は、本来人が決める戦略・行動をプログラムが代行しているという意味で、以下に示す「省略」や「ショートカット」には含まれない。


手順の拡張性から見ていきます。

手順数

先ほどの図が、行動決定までの入力数(アクション数)が最大(煩雑)と仮定します。実際は、ほとんどのゲームで、このアクション数を減らすため、いろんな工夫がされると考えます(ユーザが退屈しないため)。この工夫は、大きく分けて「省略」「ショートカット」がありそうです。(「オートバトル」は省略、ショートカットに含まない)

手順の省略

キャラ選択の省略(順序固定)

ターン制バトルの多くは、パーティーの並び順に行動を決定することで、キャラ選択を省略しています。これはドラゴンクエストや初期のファイナルファンタジーシリーズをはじめとして、よく見られる省略です。

f:id:tomo_mana:20210505233906p:plain
戦闘メニュー遷移(キャラ選択省略)
たたかうの省略(武器とアイテムへの回数制限)

武器とアイテムの区別を無くし、回数制限(耐久)を持たせると、「たたかう」が省略できます。これは初期の魔界塔士サガ(1,2)やファイヤーエンブレムなどに見られました。

f:id:tomo_mana:20210505233723p:plain
戦闘メニュー遷移(たたかう省略)
まほうとアイテムの同一視(まほうとアイテムへの回数制限)

「武器」「アイテム」に回数制限を採用したシステムに、さらに「まほう」まで回数式にすると、まほうとアイテムの選択画面そのものが省略できます。これは初期の魔界同士サガ(1、2)に見られました。また、ローグシリーズのように、魔法書や杖などのアイテムが魔法代わりになる(魔法に回数制限を持たせている)場合も同じ傾向があります。ただしローグシリーズの場合は、「叩く」か「振る」かで効果が違うなど、かなり細かい動作ができるようになっていました。

f:id:tomo_mana:20210505233832p:plain
戦闘メニュー遷移(まほう・アイテム同一視)
かくにんの省略

全プレイヤーの行動の最後の「かくにん」は、ターン制バトルで、パーティー全員の行動を承認する最後のステップですが、元々、ほとんどのターン制バトルでは「かくにん」が無かったと思います。最後のメンバーの行動が決定した時点で、入力は確定したと扱われることがほとんどです。
最後に行動の確認(または承認)を行うのは、オートバトルを採用したものなど、「デフォルト行動」「前回と同じ行動」(行動入力そのものの省略)が採用されたシステムで必要になります。最近プレイしたゲームではオクトパストラベラーで採用されていました。

リスト選択のショートカット

次にリスト選択のショートカット(マルチボタン)を見ていきます。

ファミコンからスーパーファミコンになり、さらにPlayStationへと発達する中で、マルチボタンが主流になりました。またパソコン系ゲームではキーボードが、最近ではスマホタブレット端末もマルチボタンがデフォルトになっています。

いくつかのショートカットキーが必要なゲームの場合(通常は反射神経を求められるゲームですが)、戦闘中の選択時間を短縮するために、リスト選択の代わりにショートカットキーが割り当てられています。

幾つかのショートカットのパターンを見ていきます。

キャラ選択ボタン(後述する速さの仕組みと関連)

リアルタイム性を追求したバトルで、かつ複数人を一人で扱うような場合、行動可能な時間に到達したキャラクターが複数人になった時に、キャラクターを特定のボタンで切り替えできます。ファミコン世代では、このシステムの先駆けになったファイナルファンタジーIV聖剣伝説をイメージされる方も多いのではと思います。妖怪ウォッチなどもこのシステムかと思います。

f:id:tomo_mana:20210505234856p:plain
キャラ切替ショートカット(タブ切り替え)

ターン制バトルにおいても、前述の「かくてい」を持つゲームでは、行動を変更する必要があるキャラだけをタップして、行動変更できるようにしているものもあります。

f:id:tomo_mana:20210505235118p:plain
キャラ切替ショートカット(アイコンタップ)
まほう・アイテムボタン(銃・属性などの駆け引き要因)

よりリアルタイム性を追求した、より反射神経が求められるようなゲームでは、まほうやアイテムの数を「スロット」として制限した上で、各スロットにキーを割り当てることで、リストの選択時間を省略するシステムを搭載したものもあります。これは銃撃戦などをモチーフにしたゲームで使われた手法なのではと思います。一般的なシューティング、縦・横スクロール、アクションRPGも、これに類するものと見ることができます。真っ先に思い出されるのは初代ゼルダの伝説でしょうか。

f:id:tomo_mana:20210505235304p:plain
アイテム選択ショートカット(スロット式)
ターゲット選択ルール(自動照準)

タクティカル系の流れを組むゲームや、アクションRPG系、MMORPG/FPS系ゲームなどでは、キャラクターの向きやターゲットとの位置関係などで、自動的に相手を選択することでターゲット選択が省略されることがあります。これも銃撃戦などを想定したもので、アーケード系ゲームや一部のシューティングゲーム系の流れを汲んでいるのではと思います。


次に、速さの概念を見ていきます。

速さの概念と描画処理

速さの概念には、いくつかのパターンがありそうです。

ターン制(1回行動)

ターン制では、速さはプレイヤーと敵の行動順を決定します。ターン制では、プレイヤーが時間をかけてキャラクター同士の協調動作(戦略・戦術)を練れるように、全てのプレイヤーの行動を一度に決めます。また、敵も同じように協調動作を仕掛けてきます。ターン制では、「速さ」は行動の順番のみに影響します。特別なオプションがない限りは、1ターンに行動できる回数は1回です。

少し表示処理についても考えてみます。ターン制では、行動決定とアニメーションなどの結果表示は状態として分離できます

f:id:tomo_mana:20210510223017p:plain
処理フロー(ターン制)

ターン制(カウントアップ式)

ターン制の中でも、速さをカウンターとして扱うものもあります。全員が速さに関わる順番待ちカウンタを持ち、カウントがゼロになったら行動できます。敵が主人公の倍の速さなら、主人公が1回攻撃する間に、敵は2回攻撃します。ローグシリーズやタクティクスオウガなどに見られました。

表示処理について考えます。プレイヤー入力は一人ずつになりますが、カウントアップ、行動決定、アニメーションなどの結果表示は状態として分離できます

f:id:tomo_mana:20210510223057p:plain
処理フロー(カウントアップ式)

時間になったら行動

先ほどのターン制(行動回数を規定)を、物理時間と関連付けたシステムについて考えます。行動を決める間も時間が流れるシステムでは、速さは先ほどのカウンタと同じように扱われますが、カウントアップはプレイヤーに必要な思考時間を考慮して、ゆっくりカウントされます。また、行動を決定している間も、敵の番が来たら、敵は最小思考時間で(涙)攻撃してきます。

こちらの表示処理は、少し複雑です。カウントアップ、行動決定、アニメーション処理などの結果表示は並列で処理されます。

f:id:tomo_mana:20210510223345p:plain
処理フロー(時間が来たら行動)

ファイナルファンタジーシリーズのように、「にげる」がショートカット化されることもあります。

アクションRPG/FPS

さらに行動回数を多く、人間の待ち時間を極限まで短くすると、アクションRPG/FPSになります。ターンの概念は無く、ボタンを押すたびに行動できます。常に行動決定が必要で忙しいので、大概はメインキャラ以外はオートになります。

アクション系では、速さは以下の3つの概念を持つものと思います。
(1) 移動速度(足の速さ)
(2) アクションから攻撃がヒットするまでの時間(ボタンを押してから攻撃が敵にヒットするまでの時間)
(3) リロード時間(ボタンを押してから次のボタン押下が有効になるまでの待ち)

表示処理は、行動決定とアニメーションなどの結果表示は完全に並列で処理されます。リストがスロット化されて、キャラの向きとアイテムの射程範囲で自動的にターゲットが決まる場合、ターゲット設定が省略されます。

f:id:tomo_mana:20210510223129p:plain
処理フロー(FPS


以下は、画面構成の一環として、視点(人称)について考えます。

視点

最近は2Dと3Dの区別がほとんど無くなっていますが、2Dの頃の一般的な手法として、一人称三人称がありました。一人称の一部は、プレイヤーの背中が映るものもあります。

一人称

f:id:tomo_mana:20210510233521p:plain
一人称

三人称

f:id:tomo_mana:20210510233540p:plain
三人称

最近は2D調のキャラも3Dでモデリングされているため、カメラワークでの切り替えで一人称と三人称(場合によって二人称や敵から見た一人称まで)を自由に切り替えることができます。ただ個人で作る場合は、3Dだとハードルが高いため、2Dでゲームを作るのが今でも一般的かもしれません。


(以上)