Help please! Freon : When to automatically balance the teams?  (Read 913 times)

Piglet

  • 1337
  • *
  • Posts: 3182
  • Country: gb
Hi Folks.

I'm looking for workable suggestions on when the Freon code should decide to balance teams.

The current code checks the average team PPR at the end of each round, and where the averages differ by more than a configured amount, e.g. 0.7 ppr then it triggers a balance event. The balance event picks the two players whose PPRs bring the average PPR difference closest to zero - or does nothing if it can't get closer than the teams already are.

The current code doesn't really work well in two ways related to player count:

1. At low player counts the average PPRs of the teams swing far more rapidly than large player counts - so at low player count games people are being frequently swapped. It's annoying.

2. At high player counts having a 0.69 ppr difference on average is a big difference in the teams scoring ability and it won't even trigger a change.

3. Now we have "no bots" there are times when the number of players in each team are different - which messes up average PPR-based triggering. For example, where one team has players of 2.5 ppr and 3.5 ppr against another team of 1 player with 6ppr then the team with 2 players has an average of 3ppr, whilst the team of 1 has an average of 6ppr. That difference of 3ppr on average will meet the "I need to balance" trigger. In this case it won't find a better match....I think I need to work through what can happen when there are bigger un-even sized teams. I think there's an issue here.

I know people don't like getting swapped on the last round. I might get round to looking at a fix for that at some point, but for now I'm interested in ascertaining whether there is a better strategy for general triggering of the need to balance.

Any thoughts on how to fix problems 1 & 2?