閾値テーブルをどう設定するか考えた

制作中のゲームで俗に言う親愛度システムを採用する予定なので、ここ最近はその仕様決めのようなことをずっとやっている。
んで、親愛度のテーブルがゲーム全体の制御に関わる部分に食い込んできていたので、ちょうどいい機会だし考えてみるか、と自分なりの手順を整えたのでメモ書き。

y=ax^2

まずは下記の画像。
下記画像はわたしのprocreateでの筆圧曲線である。どうでもいいですね♨

力の抜き方で強弱つけるタイプの曲線

本題は下記画像y=ax^2の図示

y=ax^2

これの都合が良さそうなところは横軸をレベル、縦軸をそのレベル到達に必要な経験値とすると、始めのうちは少ない経験値でガツガツレベル上がって、中盤から歯ごたえが出てきて、終盤はやりこみ向けの要求量になること。ので、閾値の基本骨格はこれにする。

最大値が設定されれば具体的なEXP総量も決まるので、あとは入手するポイントの基準値を設け、そこから更に割って中間ポイントを作っていく。また、ゲームクリア時のレベルがどのあたりになるのかといった理論上の最大値ではない実際の動線を意識したプロットを組んでおく。

なお、自分的な好みの重量感として、同じサイクルを繰り返して小目標を達成する場合(この場合はレベルアップ)、その手番数が平均5、長びいた場合7となるものが多いので、「必要手番数が【7】以上」になった際に補正値をかけ、必要手番数を調整するようにした(ステップで要求されるEXP/基本サイクルをこなした際のポイント値=手番数)。

UnityC#の傍らVSC起動してpythonでメモ取るのくっそ捗ってワロタ

ざっと出力した結果、それっぽいテーブルになっている……のか?
あとは要調整だがひとまずはこれでいき、実際のゲームに適用してどうなるか確認しないといけない。

動きの出る部分がなかなか進められていないけど、早いとこ着手したいですね


この記事が気に入ったらサポートをしてみませんか?