by 唐草 [2024/03/01]
『ギコネコ3』は自分用の実践的教材でもある。だから、ぼくのスキルアップに呼応するように様々な要素が盛り込まれてきた。それを行き当たりばったりの計画と呼ぶか、それとも臨機応変なアジャイル開発と呼ぶかは意見の割れるところだろう。
今日は、レベルアップに必要な経験値や幸運ステータス上昇による影響度のバランス調整をした。ぼくとしては数値が小さい内は1ポイントの影響度が大きくて、数字が大きくなればなるほど変化を小さく調整したかった。
そうしないと後半のレベル上げは天文学的な経験値が必要になるし、幸運の影響が単純比例だと後半はこちらの攻撃はすべてクリティカルで相手の攻撃は全部回避する遊んでいても面白くない超人ができてしまうからだ。
イメージするのはモンハンの守備力に近い。序盤はハンター装備からレイア装備に変更して数ポイント上がるだけで大きな変化を感じられるが、後半はG級古龍装備に変えても劇的な変化が感じられないような感じだ。
どんな数値変化にすれば、始めはググッと変化して、後半の変化を穏やかにして最終的にある値で頭打ちにさせられるだろうか?
エクセルに数値を並べてグラフを描き理想的なカーブを考える。曲線的な変化なのは間違いなので、指数関数を基本に様々な値を変化させてカーブの曲がり具合を見極めていく。
様々な数値の組み合わせを試したところ、レベルが上がるごとに指数が徐々に減っていくようにするとぼくの理想に近いカーブを描くことができた。
レベルに対して逆比例で指数を算出して、その値を利用して計算を進めていくのが良さそうだった。こうして理想的なカーブをもったグラフがエクセルシートの上に描けた。
だが、そのグラフの曲線には強い既視感があった。様々な数値をこねくり回して複数の関数を組み合わせて作ったオリジナルの曲線だったはずなのに…。
なんだっけ、このカーブ?
30秒ぐらい考えてはたと気づいた。
これ、対数関数の曲線じゃん。というか、指数部が変化するって、それはただの対数じゃないか!Log関数1個で全部済む。
これが高校までの勉強を軽んじた無様な人間の末路。