ゲームプランナーが考えるアルゴリズム(行動パターン)
今回はNPCの行動(動き)についてのお話となります。
ゲームプランナーとしてはNPCの挙動をこうしたい!というのが出てきますので、その行動をどのように考えればいいのか?という話となります。
アルゴリズムとは
アルゴリズムというのは、ここではNPCキャラクターの挙動を指します。
どのような行動をとるのか、次の行動はどうするのか?などを決めます。
難しいように思えますが、ゲームプランナーが考えるアルゴリズムは、数学的に考えるのではなく行動をまとめます。
行動をまとめる
行動をまとめるということは、このキャラクターは初期状態だとこの行動をするが、プレイヤーが近くにいる場合は、この行動をとるなど条件を決めていきます。
行動は、大雑把に決める
行動は、細かく設定することもできますが、基本を一つ作っておき、そこに追加して別の行動パターンにするというやり方が望ましいです。
例えば
村人A、B、Cがいるとします。
基本行動
- 村人は村の中を歩きます。(”歩き”モーションを行う)
- コリジョンに当たった場合は、90度回転し、移動し直します。
村人A追加行動
- 5秒経過すると、”考える”モーションをとります。モーションが終わったら”歩き”へ戻る
村人B追加行動
- プレイヤーを発見すると走って近づいてきます。(村人Bの半径10mにプレイヤーが存在する場合)
村人C追加行動
- 村人AとBの追加行動を行います。
- 10秒ごとに”座る”モーションを行う。(座るモーション中は、プレイヤー近づいても反応しない)
という感じにざっくりとですが、基本となるものがあって、そこに足していくことによって村人A、B、Cに個性が生まれます。
逆のパターンでも良い
逆のパターンでも良い結果が生まれます。
追加行動を洗い出して、すべてをもったNPCを作成します。そのNPCの追加行動を今度は、減らしていくことによって、NPC達の個性を作り上げる形です。
この場合は、追加行動をすべて持っているキャラクターが出来ているはずなので、ある意味最強のNPCが出来ていて、欠陥を他のNPC達に作っていくという考え方になります。
数学的なことは、プログラマーに任せればいい
ゲームプランナーは、数学的なことは気にしなくて良いです。むしろそこを視野にいれて考えるとその数学的な部分をプログラマーから突っ込みを受けます。
職種の壁があるので、越える能力があるならいいのですが、無理して越えることはありません。
むしろ、その担当の作業であるならば、その部分については投げてしまうのが理想です。
ただ、何となく『いい感じによろしく!』とかは、やめましょう。(冗談で使うならいいですが、こんなことを頻繁に言うなら、その人は要らない人です。)
※数学的なことはダメージ計算とか考えるなら多少は必要ですが。
コメント