Bounty: Difference between revisions
(added detailed formula description, minor edits) |
mNo edit summary |
||
Line 1: | Line 1: | ||
'''Bounty''' system is a system that rewards players for killing their opponents. The exact formula for calculating kill bounties is somewhat complicated and is described in the next section, but the basics are covered in this section. | '''Bounty''' system is a system that rewards players for killing their opponents. The exact formula for calculating kill bounties is somewhat complicated and is described in the next section, but the basics are covered in this section. | ||
* Only true deaths are considered in the bounty calculation. True death is a death caused by a player from an opposing team. Suicides, monster kills, and teamkills are untrue deaths and ''completely'' ignored. | * Only '''true deaths''' are considered in the bounty calculation. True death is a death caused by a player from an opposing team. Suicides, monster kills, and teamkills are untrue deaths and ''completely'' ignored. | ||
** That means that you cannot "dodge" a bounty; someone will eventually get it unless you avoid dying for the rest of the game. You can get killed by [[Pirate|Pirates]] and give your bounty to them. | ** That means that you cannot "dodge" a bounty; someone will eventually get it unless you avoid dying for the rest of the game. You can get killed by [[Pirate|Pirates]] and give your bounty to them. | ||
* The bounty an opponent gets for killing you increases with your kills. It is worth noting, that some kills are worth more than others. | * '''The bounty an opponent gets for killing you increases with your kills.''' It is worth noting, that some kills are worth more than others. | ||
** The exact "worth" of a kill is determined by the LKV as described further. | ** The exact "worth" of a kill is determined by the LKV of the killed player's class as described further. | ||
* Your bounty starts at ''half'' of the bounty base value and steadily increases from there. | * Your bounty starts at ''half'' of the bounty base value and steadily increases from there. | ||
* The bounty depends on the score of your and your killer's team. If your score is higher, the bounty will be higher as well. If your score is smaller, the killer will recieved reduced points. This is a multiplictave modifier applied last. It ranges from 0.5 to 1.5. | * The bounty depends on the score of your and your killer's team. If your score is higher, the bounty will be higher as well. If your score is smaller, the killer will recieved reduced points. This is a multiplictave modifier applied last. It ranges from 0.5 to 1.5. | ||
** This modifier doesn't apply in the first 5 minutes of a game. | ** This modifier doesn't apply in the first 5 minutes of a game. | ||
* The bounty scaling factor <math>\alpha_i</math> expresses how quickly the bounty increases. | * The bounty scaling factor <math>\alpha_i</math> expresses how quickly the bounty increases. | ||
** When a [[Gladiator]] kills you, they increase your scaling factor by 0.2 for that kill only. | ** When a [[Gladiator]] kills you, they increase your scaling factor by 0.2 for that kill only. | ||
* The '''maximum awarded bounty''' is currently set to 500 points.[[File:Bounties.png|thumb| | * The '''maximum awarded bounty''' is currently set to 500 points.[[File:Bounties.png|thumb|707x707px|Bounty graph (dependence of bounty on killscore) for each class. Score of both teams is assumed to be equal. Note that Scout, Alchemist and Wizard all have the same bounty.|alt=]] | ||
== Formula == | == Formula == | ||
The formula for determining bounty that player A gets for killing player B is: | The formula for determining bounty that player A gets for killing player B is: | ||
<math>bounty = f\left ( \frac{p_B}{p_A} \right )*\frac{R_i}{2}*( 1+\left ( \frac{killscore}{2.1875} \right )^{(\alpha_i+\alpha_b)}</math>, | <math>bounty = f\left ( \frac{p_B}{p_A} \right )*\frac{R_i}{2}*( 1+\left ( \frac{killscore}{2.1875} \right )^{(\alpha_i+\alpha_b)})</math>, | ||
where <math>p_A</math> and <math>p_B</math> are point totals of A's and B's team, | where <math>p_A</math> and <math>p_B</math> are point totals of A's and B's team, | ||
Line 36: | Line 34: | ||
The balancing function serves as a comeback mechanic for teams that are behind in points. It's defined as | The balancing function serves as a comeback mechanic for teams that are behind in points. It's defined as | ||
<math>f(x) = 1+\frac{1}{2}erf(2(x-1))</math>, where erf(x) is the error function. | <math>f(x) = 1+\frac{1}{2}erf(2(x-1))</math>, where erf(x) is the error function. This multiplier doesnt apply during the firts five minutes of the game. | ||
[[File:Erf.png|thumb|435x435px|Balancing function. Note that for very large and very small ratios, the multiplier approaches 1.5 and 0.5 respectively. ]] | [[File:Erf.png|thumb|435x435px|Balancing function. Note that for very large and very small ratios, the multiplier approaches 1.5 and 0.5 respectively. |alt=|left]] |
Revision as of 11:53, 3 January 2021
Bounty system is a system that rewards players for killing their opponents. The exact formula for calculating kill bounties is somewhat complicated and is described in the next section, but the basics are covered in this section.
- Only true deaths are considered in the bounty calculation. True death is a death caused by a player from an opposing team. Suicides, monster kills, and teamkills are untrue deaths and completely ignored.
- That means that you cannot "dodge" a bounty; someone will eventually get it unless you avoid dying for the rest of the game. You can get killed by Pirates and give your bounty to them.
- The bounty an opponent gets for killing you increases with your kills. It is worth noting, that some kills are worth more than others.
- The exact "worth" of a kill is determined by the LKV of the killed player's class as described further.
- Your bounty starts at half of the bounty base value and steadily increases from there.
- The bounty depends on the score of your and your killer's team. If your score is higher, the bounty will be higher as well. If your score is smaller, the killer will recieved reduced points. This is a multiplictave modifier applied last. It ranges from 0.5 to 1.5.
- This modifier doesn't apply in the first 5 minutes of a game.
- The bounty scaling factor expresses how quickly the bounty increases.
- When a Gladiator kills you, they increase your scaling factor by 0.2 for that kill only.
- The maximum awarded bounty is currently set to 500 points.
Formula
The formula for determining bounty that player A gets for killing player B is:
,
where and are point totals of A's and B's team,
is a balancing function that is described further,
and are parameters specific player B's class,
is the bounty bonus (for example if the killer is a Gladiator),
and is the sum of logarithmic kill values (LKVs) of players, that B has killed in their last life.
Bounty for a single kill cannot exceed 500 points.
A class' LKV can be determined as .
The balancing function serves as a comeback mechanic for teams that are behind in points. It's defined as
, where erf(x) is the error function. This multiplier doesnt apply during the firts five minutes of the game.