- Move constants to globals, so that the enemy waves can be balanced without changing the code
- Use exponential attacker wave growth (instead of linear), so that it's strength doubles in a constant time delta, preventing boring and seemingly endless matches, independent of how many resources the players receive, limited to at most N attackers total.
- Differentiate templates between by types (champions and siege engines), so that the script can consciously chose how many of each type and of each template to spawn (instead of having the ratio determined by number of templates provided and always spawning the same number of attackers of each template in the array). Thus prepares to add citizen soldier templates in earlier waves and increasing the likelihood of champions later.
- Spawns a gaia hero per player, probably after minute N, certainly after minute M, but only if the previous hero isn't alive anymore
- Adds command-line only debug output and a dry-run mode to test how many attackers would be spawned if the players survive all of the waves
- Removes treasure picking woman after defeat, as its white dot on the minimap can be confused with a treasure.
- Splits code into shorter, more readable functions.
- Removes unused variables.