私は C# で小さなゲームを作成していますが、プレーヤーの現在のレベルでレベルアップするために必要な EXP を取得する自己動作する EXP システムを作成する方法がわかりません。
これが私がそれを機能させたい方法です。
1 = 75
2 = 75 + 75 = 150
3 = 75 + 75 + 75 + 75 = 300
4 = 75 + 75 + 75 + 75 + 75 + 75 + 75 = 525
どうすればこれを行うことができますか?
私は C# で小さなゲームを作成していますが、プレーヤーの現在のレベルでレベルアップするために必要な EXP を取得する自己動作する EXP システムを作成する方法がわかりません。
これが私がそれを機能させたい方法です。
1 = 75
2 = 75 + 75 = 150
3 = 75 + 75 + 75 + 75 = 300
4 = 75 + 75 + 75 + 75 + 75 + 75 + 75 = 525
どうすればこれを行うことができますか?
あなたのパターンは「75を1つ追加、75を2つ追加、75を3つ追加」のようです...これは数学的に次のように書くことができます:
s_1 = 75
s_{n+1} = s_n + 75 * n
これは、使用できることを意味します
(1 + level * (level - 1) / 2) * 75
指数関数的に成長したいと仮定すると、いくつかの簡単な計算はありますか? 疑似コード:requiredExp = 75 * Math.pow(2, level - 1)
任意の数値を使用している場合は、辞書を使用できます。経験するマップレベル。
編集:毎回75をもう1つ追加します(算術シーケンスの合計)。requiredExp = 75 * (1 + (level - 1) * level / 2)
すべき