このトピックに関連する質問には次のものがあります。
- 次のレベルに到達するために必要な経験ポイントをどのように基準にすべきですか?
- これにはどのような要因が関係していますか?
- プレイヤーがレベルアップするまで十分に長く楽しまないようにするにはどうすればよいですか?
- プレイヤーが経験値を取得する方法を変えるにはどうすればよいですか?
このトピックに関連する質問には次のものがあります。
回答:
一般的に言えば、これらはあいまいな指数曲線として行われます。http://kol.coldfront.net/thekolwiki/index.php/Advancement#Advancement_Requirements_Overviewは、MMOジャンルのかなり標準的な、Loathing of Loathingの公式を示しています。
ゲームの数値関係について話すときは、実際にこのトピックを取り上げます:http : //gamebalanceconcepts.wordpress.com/2010/07/14/level-2-numeric-relationships/
遭遇/クエストは進行するにつれてより多くのXPを与える傾向があるため、通常は増加曲線にあります(したがって、各レベルは最後よりも多くのXPを必要とします)。
重要なのは、XPレベルの曲線または1回あたりのXP曲線だけに集中するのではなく、それら2つを比較することです。XPレベルカーブがXP当たりのXPよりも速く増加する場合、プレーヤーは時間の経過とともにレベルがゆっくりと上昇していることに気付くでしょう。これはこのジャンルのかなり標準的なことです。ただし、エンドゲームでレベルアップがあまりにも少なくなりすぎると、プレイヤーのゲームの最後の記憶が巨大なグラインドになり、おそらくあなたも望んでいないという危険性があります。したがって、レベルアップごとのエンカウンターの数はエンドゲームで許容でき、レベルアップごとのエンカウンターの数は初期のゲームで必要なものを把握し、そこから補間します。
また、XP /レベルだけでなく、報酬システムが重複している可能性があることに言及する必要があります。一部のRPGにはジョブポイントがあるため(複数のレベリング/アドバンスシステムがあります)、ファイティングスキルまたはヒーリングスキルをレベルアップするまでの間にしばらく時間がかかる場合があります。 SOMETHINGの増加から数分。他のRPGにはランダムなアイテム/装備のドロップがあるため、新しいエンカウンターはすべてXPを与えるだけでなく、いくつかの壮大な戦利品を生成する小さなチャンスもあります。
少なくとも部分的には、プレイヤーのために作成したい体験のタイプに依存していると思います。2つの例を考えてみましょう。1つ目は古典的なターンベースのRPGで、2つ目はGradius IIIタイプのシューティングゲームです。それは良いシステムだと言って、ほんの一例です)。
RPGの場合、システムはおそらくプレイヤーが経験値を失うことはないという前提で動作します。同様に、ある程度の習熟度を得るのは比較的簡単ですが、習得するのは難しいという仮定に基づいて行動したいと思うでしょう(現実の世界のほとんどのものと同様)。この場合、何らかの点で指数関数的な式(提案されているcoderangerのような)を開発することができます。次のレベルに到達するのに必要な経験の量は、現在のレベルに何らかの形で指数関数的に基づいています。ただし、プレーヤーがプレイ中に経験値を受け取る割合を考慮することは重要です。たとえば、レベル63のファイアデーモンを殺したプレイヤーは、レベル2のレディバグを殺した場合よりも、自分のキルについてより多くの経験を期待しています。数式を設計するとき、XPシステムを考慮に入れてください。特にそうしないと、女性のバグを殺すことは、より難しい敵を殺すのと同じくらい有益です。
例1(使用するフォームではない可能性が高い):XP_TO_LEVEL =((CURRENT_LEVEL + 1)^ SCALE)* XP_BASE
例2:XP_TO_LEVEL =(XP_BASE * CURRENT_LEVEL)^ SCALE
XP_TO_LEVELは、次のレベルに到達するために必要なXPです。CURRENT_LEVELは、プレーヤーの現在のレベルです。XP_BASEは、各レベルがXPでどれだけ「価値がある」かを決定する任意の数値です。SCALEは、レベル調整に必要なXPのスケーリングの速さを決定する指数です。SCALEが1の場合、各レベルはXP_BASEの経験を必要とします。SCALEが1未満の場合、各レベルは最後のレベルよりも経験が少なくなります。SCALEが1より大きい場合、各レベルは最後のレベルよりも多くの経験を必要とします。
次の表では、例2を使用して、SCALEが1.1でXP_BASEが100であると想定しています。
Current Level XP Needed Increase from Last Level
1 158 0
2 339 181
3 530 191
4 728 198
5 930 202
...
10 1995 218
例3:XP_TO_LEVEL =((CURRENT_LEVEL * SCALE)^ 1.5)* XP_BASE
SCALEはXP_TO_LEVELのスケーリングの速さをまだ決定していますが、動作は少し異なります。
次の表では、例3を使用して22のSCALEと10のXP_BASEを想定しています。
Current Level XP Needed Increase from Last Level
1 28 0
2 80 52
3 146 66
4 226 80
5 316 90
...
10 894 130
Gradiusクローンの場合、別の戦略を取ることができます。約2分ごとなど、プレーヤーを一貫してレベルアップさせたい場合があります。さらに、プレイがライフを失い、その結果、獲得したパワーをすべて失った後、ゲームを進行するのに適切なレベルに達するまで、より速くレベルアップすることで、彼を助けたいと思うかもしれません。この場合、特にユーザーはキルごとにどれだけの経験を得ているかを見ることができないため、数式はより線形になります。たとえば、新しいレベルに到達するには50 XPが必要で、各敵には1 XPの価値があります。これは、敵の比較的安定した流れを彼に提供している場合に効果的です。しかし、プレイヤーが死ぬと、彼はそれをすべて失います!これでどうしますか?ゲームが再び公平になるように、敵を追い詰めるという目標を達成するには、各敵が1 XP以上の価値があるはずです。
例:XP_FROM_EACH_ENEMY = BASE_XP +(CURRENT_LEVEL-DESIRED_LEVEL)ここでXP_FROM_EACH_ENEMYは、敵が殺されたときに与えるXPの量です。BASE_XPは、デフォルトで敵がどれだけのXPに相当するかです(敵のタイプごとに異なる場合があります)。CURRENT_LEVELはプレイヤーのレベルです。DESIRED_LEVELはプレイヤーがいると思うレベルです。