Bounty: Difference between revisions
m (typo) |
(small changes to reflect changes to bounties. TBD: how bounty limiting works now) |
||
Line 9: | Line 9: | ||
** 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. | ||
* 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=]] | * 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=]] | ||
Line 15: | Line 14: | ||
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 )^{ | <math>bounty = f\left ( \frac{p_B}{p_A} \right )*\frac{R_i}{2}*( 1+\left ( \frac{killscore}{2.1875} \right )^{\alpha_i})</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 21: | Line 20: | ||
<math>f(x)</math> is a balancing function that is described further, | <math>f(x)</math> is a balancing function that is described further, | ||
<math>R_i</math> and <math>\alpha_i</math> are parameters specific to player B's class | <math>R_i</math> and <math>\alpha_i</math> are parameters specific to player B's class | ||
<math> | and <math>killscore</math> is the sum of logarithmic kill values (LKVs) of players, that B has killed in their last life. | ||
Revision as of 12:07, 28 March 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.
- 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 to player B's class
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 first five minutes of the game.