解析
レベルアップや腕力の薬を飲むといった能力が上昇する処理が発生した際、どれだけ能力値が増えるかの計算ロジック
能力値が18未満のとき†
- 75%の確率で1増える
- 25%の確率で2増える
- このため、値が17のときに2増えると17 + 2 = 19で表示上の値は18/01になる
能力値が18以上(最大値-2)未満のとき†
- ((能力の最大値 - 能力の現在値) / 2 + 3) / 2 で上昇値のベース値を求める
- (1~上昇値のベース値の範囲内のランダムな値) + (上昇値のベース値 / 2) の分だけ能力値が上昇する
- このロジックから最大値に近づくにつれて上がりづらくなることがわかる
- どれくらい増えるかイメージしづらい処理だが、かなり乱暴に言うと
- 18からのレベルアップ1回目:最大値18/XXXにおけるXXXの25%の値になる(最大値が18/120なら18/30になる)
- 18からのレベルアップ2回目:最大値18/XXXにおけるXXXの50%の値になる(最大値が18/120なら18/60になる)
- 18からのレベルアップ3回目:最大値18/XXXにおけるXXXの60%の値になる(最大値が18/120なら18/72になる)
- 18からのレベルアップ4回目:最大値18/XXXにおけるXXXの70%の値になる(最大値が18/120なら18/84になる)
- 以降上昇量は減りつつもXXXの100%の値に近づいていく...という風に捉えるとイメージしやすいかと
- 各能力の最大値の算出処理については↓を参照
能力値が18以上(最大値-2)未満のときの計算例†
- 現在値:18
- 最大値:18/130 (18 + 130)
- ((148 - 18) / 2 + 3) / 2 = 34
- 1~34の範囲でランダムな値を出す(今回は20が出たことにする)
- 20 + (34 / 2) = 37
- 上昇後の能力値は18/37になった
上記以外(能力値が最大値-2 or 最大値-1のとき)†