Page 2 of 2
Re: ELO adjustments
Posted: 10 September 2023, 08:49
by dgjxqz
Train an AI to play the game.
Every time a player makes a move, compared that to the AI's choices.
For sigmoid (softmax needs renormalization) output, set target ELO as AI output value for the player's chosen move * 800.
Average target ELO = sum of ELO for every move / (number of moves + 1)
Moves +1 to penalize abandoning games.
At the end of the game, new ELO = current ELO * .9 + average target ELO * .1
A beginner gains 79 ELO if all corresponding AI outputs are close to 1, but that's highly unlikely.
A novice player ruining the game does not punish other players as long as they made the right moves.
Maximum ELO for any player is 799, you can't get thousands of ELO by keep playing continuously.
Harder to game the system to boost your ELO if you have no access to AI output.
Not an accurate representation of skills but represents better than any other mechanisms seen so far.
Having an AI player may also help in tuning other potential imbalances of the game.
The same ELO system can be also used for other games.
Re: ELO adjustments
Posted: 10 September 2023, 13:39
by quietmint
Although somewhat interesting as a thought experiment, I definitely don't have time or knowledge to build some AI solution. Building the game itself is quite enough in its own right!
Also, two important points you may have missed:
The ELO change for all players at the table must be the same amount. Co-op games can't assign different ELO values to different players.
The maximum ELO for any player is definitely NOT 799. (It's probably around 8000?)

- Screenshot_20230910-083102.png (400.06 KiB) Viewed 890 times
Re: ELO adjustments
Posted: 11 September 2023, 04:11
by dgjxqz
quietmint wrote: ↑10 September 2023, 13:39
Although somewhat interesting as a thought experiment, I definitely don't have time or knowledge to build some AI solution. Building the game itself is quite enough in its own right!
Also, two important points you may have missed:
The ELO change for all players at the table must be the same amount. Co-op games can't assign different ELO values to different players.
The maximum ELO for any player is definitely NOT 799. (It's probably around 8000?)
Screenshot_20230910-083102.png
Oh sorry, I was unaware of such BGA restriction. A maybe more exploitable AIless way would be to +.1 whenever a player carries a pax closer to destination and -.1 when carries further away, but you still need to adjust ELOs individually.
I mean the suggested implementation would limit the EKO to 799, not sure about BGA limit either.
Re: ELO adjustments
Posted: 18 September 2023, 03:38
by ufm
dgjxqz wrote: ↑10 September 2023, 08:49
Train an AI to play the game.
Every time a player makes a move, compared that to the AI's choices.
dgjxqz wrote: ↑10 September 2023, 08:49
A maybe more exploitable AIless way would be to +.1 whenever a player carries a pax closer to destination and -.1 when carries further away, but you still need to adjust ELOs individually.
These requests are way too demanding as the dev mentioned already.
Also, the backend cannot read the current rating of each player:
viewtopic.php?p=146873#p146873
quietmint wrote: ↑10 September 2023, 13:39
The ELO change for all players at the table must be the same amount. Co-op games can't assign different ELO values to different players.
Technically it can by assigning different scores for each player, but currently only Mantis Falls does that.
In that game, co-op / competition mode distinction is randomly determined during setup and they use different scoring for obvious reasons.
quietmint wrote: ↑10 September 2023, 13:39
The maximum ELO for any player is definitely NOT 799. (It's probably around 8000?)
8700, to be exact. Probably 10000 - 1300 (base ELO).
Re: ELO adjustments
Posted: 18 September 2023, 07:31
by N_Faker
So long as a loss won't subtract ELO then it should work fine.
Re: ELO adjustments
Posted: 12 October 2023, 04:34
by dgjxqz
Another way is to enable options for mini tournament within tables like Challengers (where players are divided into groups of subtables and the player with most winning subtables wins) and only adjust ELO for tournament competitive mode, no ELO adjustment for single table cooperative mode. BGA isn't supportive when it comes to tournaments for cooperative games where you can't cheat by leaking hidden information, so this would be an alternative.
I understand this is a lot of work, just a suggestion, not a request. Totally up to the developer as for how far we want to go in terms of ELO accuracy.
Re: ELO adjustments
Posted: 12 October 2023, 09:41
by ufm
dgjxqz wrote: ↑12 October 2023, 04:34
BGA isn't supportive when it comes to tournaments for cooperative games where you can't cheat by leaking hidden information
Because BGA (and probably publishers) doesn't want to force competition in co-op games?
You can open a private tournament using other tournament management platforms as you see fit, but you shouldn't expect BGA to do that.