rlcevg / CircuitAI

Spring RTS local native AI
GNU General Public License v2.0
18 stars 19 forks source link

Make expansion limit take allyteam expansion into account #131

Closed GoogleFrog closed 7 months ago

GoogleFrog commented 7 months ago

Easy AIs use economy.mex_max = 0.3 to only expand to 30% of the map. This setting doesn't really work when there are two or more Eays AIs in the game, since it gives the whole team at least 60% of the map, which is no longer easy. People are naturally going to add more than one Easy AI when playing with friends. This makes the difficulty level very hard to calibrate. It also leads to easier games when the startboxes are such that all the AIs merge into one.

The solution is to make the expansion limit consider allied metal extractors as well as its own.

rlcevg commented 7 months ago

How should mex cap act when mixing AIs in one team: Easy (30%), Easy (30%), Normal(100%), Beginner(15%)?

Sprung:

once the team has more than 15% mexes, beginner stops trying to get more but the others still do once the team has more than 30%, both easy ones give up too and only the 100% one still tries

rlcevg commented 7 months ago

https://github.com/rlcevg/CircuitAI/commit/c7649f371d459ed3da370cd96c557ebebdb9ef1c