diff options
author | jacopograndi <jacopo.grandi@outlook.it> | 2022-01-18 20:30:43 +0100 |
---|---|---|
committer | jacopograndi <jacopo.grandi@outlook.it> | 2022-01-18 20:30:43 +0100 |
commit | 3bce7a9befdc2fc42ceb62fad34a1cd6a4358442 (patch) | |
tree | 7f77e45472b0a96ddc42eb7d0ccec1bbe1c6ff86 /docs | |
parent | ea7b845bdee6d22a8644b9085455e5489a2d0be9 (diff) |
balance considerations
Diffstat (limited to 'docs')
-rw-r--r-- | docs/balance.md | 64 |
1 files changed, 44 insertions, 20 deletions
diff --git a/docs/balance.md b/docs/balance.md index 5db5300..0f5f1af 100644 --- a/docs/balance.md +++ b/docs/balance.md @@ -1,39 +1,63 @@ # balance -### turret effectiveness -How strong is a turret compared to another? Are there trivial winning strategies? Are some turrets unuseful? +### lives density +A turret is effective against a group of enemies. +A turret that is dealing 1 damage per second (dps) and can shoot at 20 cells kills an enemy with 20 lives, if the enemy has a speed of 1 cell per second. +An enemy with 21 lives is not killed. However, infinite enemies with 1 life and 1 cell apart cannot get through the turret. +Therefore the turret effectiveness can be gauged against a **density of lives**: how many lives per cell can the turret take away. +A 1 dps turret can cope with a density of 1 life per cell. <br> +A 2 dps turret can cope with 2 lives per cell. + +A turret that applies the slowness effect (50% speed) to an enemy for 10 seconds decreases the density, thus increasing the othe turrets dps. + +There can be two cases: +- constant density for the whole path, the turrets damage only the enemies in their range so their effectiveness is lessened by range/path\_lenght. +- the density is uneven, turret effectiveness is greater. + +### height +An enemy with 100 lives and 100 enemies with 1 life (within the same cell) both have a density of 100 lives per cell. +To capture this aspect, the height of a cell is defined as the maximum number of lives in that cell. +- high cell: few enemies with a lot of life +- low cell: a lot of enemies with low life + +--- + +### turret balance Turret types: - apply damage - make the path longer - resource production -I can compare how effective a turret is w.r.t. the others in its type. +target type: +- single target + - great with high cells +- aoe + - great with low cells -1. damage turret -Effectiveness: damage per second +What are the differences between turrets in the same group? -2. path turret -Effectiveness: elongation constant (adimensional) +Special abilities (yikes, but it's an idea) -3. resource turret -Effectiveness: return on investment (adimensional) +Tradeoffs: +- short term gain / long term gain + - good stats / good upgrades or modules + - low cost, bad stats / high cost, good stats +- specialized / generalist +- reliability (misses) +- synergies with other turrets ### random wave generation: A wave is generated based on a lives budget, which is a function of the wave number. Tuning that function changes the difficulty of the game. The current function is `hp_budget = pow((x + 10), 2.7) * 1.8 - 850` -### total damage output (D) -I need an estimate of how much damage a turret configuration is capable of dealing against enemies in a path of lenght L to derive the function of the wave number. - -``` -D = sum{d:damage turrets}( dps of d ) / enemy_speed - * (1 + sum{p:path turrets}( - elongation constant of p * (p.range*2 / L) ) - * path_constant) +The lives budget also control how many resources are given to the players. -enemy_speed = 1 -``` +The density is crucial: +- high density, more difficult +- low density, easier -The `path_constant` is how valuable it is to elongate the path in damage per meter. +Height is also important: +- Generating lots of enemies with low life is beneficial towards aoe +- High enemies good for single target |