どのスコア/レベル関数がよく使用されますか?


9

多くのゲームでは、特定のスコアに到達したときにレベルを上げ、その後のレベルは最初よりも到達するのが困難です。

これは、WoWなどで使用されているある種の指数関数であると思われます。

誰かがこの目的に適した指数関数を知っていますか?



回答:


11

標準はありませんし、実際に存在する理由もありません。人々は指数関数的な成長を好むようで、それは彼らがより強力になり、毎回比例してより多くの挑戦に直面しているように感じさせますが、実際には、ポイントを収集する方法も比例して変化しない場合にのみ当てはまります。勝利あたりの経験値がレベルあたりの経験値と同じ割合で上昇する場合、上昇するポイントはほとんどなく、どちらも一定のままである可​​能性があります。

さらに、含意は、経験の発生をどのようにしたいかを知らずに、経験曲線をどのようにしてほしいかを求める関数を選択することはできないということです。そして、それはあなたが望む経験のタイプに基づくゲーム設計の決定であり、私たちがあなたに提供できるものではありません。

それでも、あなたの質問に答えると、他の場所で見た関数のタイプは次のようなものであり、スケールファクターを持つ自明な多項式です。

threshold_for_next_level = x * current_level y

一般的な値は、x = 1000、y = 1.5です。例えば:

level 1 = 1000
level 2 = 2828
level 3 = 5196
...
level 10 = 31623
etc.

勾配を急にしたい場合は、yを大きくします。数値を大きくしたい場合は、xを増やします。

丸めの数値が必要な場合があります。その場合は、最終結果を2桁または3桁の有効数字、または最も近い1000桁に丸めます。

これらの値は単独では無意味であることを覚えておいてください。レベル15からレベル16に進むために15000の経験値が必要な場合は、ゲームデザインで、レベル15キャラクターが通常のプレイ中に15000経験値を獲得できるようにする必要があります。テスト後にカーブを微調整するだけでは意味がありません。これは一般に時間がかかりすぎるためです。まず、意図したデザインに合った方法でゲームが与える賞と一致するカーブから始める必要があります。


4

Moria / Angband(および-議論の余地--Diabloを含むすべてのスピンオフ)は、モンスターレベルとプレイヤーレベルのマッチングに基づいてシステムを構築し、それを超えてレベルごとのXP要件が増加することで、獲得した収益を確認します。

ではディアブロ、あなたが正と負であなたの5つのレベルの中に、殺すことができるモンスターの最適なレベルがあります。これは次のようになります(これが正確でない場合はお詫びします、ディアブロファン):

XP Gain = monsterBaseXP * (5-|(characterLevel-monsterLevel)|) / 5
(where result cannot drop below 0)

キャラクターの例レベル16:モンスターAのレベル:16.モンスターの基本EXPを100%獲得します。モンスターBのレベル:13。モンスターベースの経験値の40%を獲得。モンスターCのレベル:20。モンスターベースの経験値の20%を獲得します。モンスターDのレベル:23。モンスターベースの経験値の0%を獲得します。

アングバンド(私が好むモデル)、それはこのようなものです:

XP Gain = monsterBaseXP * monsterLevel / characterLevel.

したがって、レベル5のときにレベル50のモンスターを倒した場合、同じモンスターを倒したレベル50のキャラクターが獲得したEXPの10倍のEXPを獲得できます。私はこれが好きです、それは高リスク、高報酬です。Angbandの何千ものキャラクターをこれで失いました。でも、それを作ったのは、伝説的な人です。レベル1から瞬時にレベル29に達したと思います。同様に、レベル5のモンスターを倒すレベル50のキャラクターは、そのモンスターを倒すことでレベル1のキャラクターが得るEXPの1/10を獲得します。さらに、ベースXPも上昇するため、低レベルのモンスターを倒しても報酬は得られますが、あまりにも遠くまで到達してもまったく意味がありません。

どちらのゲームでも、必要に応じてXPに乗数を追加で使用します(増加するスケールで)。これと、指定されたモンスターXPの最適レベルとの比率は徐々に急勾配になります。

このアイデアの最も単純な形式は、次のことです。自分と同じレベルのモンスターの数を決定します。グレードごとに各レベルを殺す必要があります(クエストの報酬などは無視します)。あなたのレベルに関係なく、100としましょう。プレイヤーが自分と同じレベルのモンスターを殺した場合、彼女は1XPを獲得するとします。

Angbandのような数式を使用して、モンスターのレベルに応じて増減を報酬すると、レベリングテーブルは線形になります。

1: 100xp
2: 200xp
3: 300xp

...等々。私はこれが最も簡単な出発点であると思います-必要に応じて微調整し、モンスターベースのXP、レベルカットオフなどを心のこもった内容に含めます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.