Fixed g_balance has a few issues

Posts
278
Likes
361
I observed two issues with this cvar while testing for open mode. For these issues I'm going off the description in the server_config_default.cfg, this goes as follows:
Prevents teams from becoming imbalanced by blocking joining of a team if the player difference is too great.
-1 = off, 0 = teams must be exactly equal or spectating will occur, 1 = teams allowed to be uneven by 1,
2 = teams allowed to be uneven by 2, 3 = teams allowed to be uneven by 3, etc.

Issue #1: g_balance "0" doesn't work as intended
What went wrong: A spectating player was able to unbalance the teams when this shouldn't be possible.
What should have happened: The spectating player should be able to join but be spectated upon round start as the description suggests.
How to reproduce: set g_balance to "0", fill both teams with 1 player. A third player is able to join any of the two teams and didn't get forced to spectator for it.

Issue #2: g_balance "1" doesn't work as intended
What went wrong: An outnumbered player was able to switch to the other team, making the teams even more unbalanced.
What should have happened: The outnumbered player shouldn't be able to switch team.
How to reproduce: set g_balance to "1", fill rebel team with 2 players, fill imperial team with 1 player. The imperial player is able to switch to the rebel team freely.

Note: It is possible these issues are related, and it is possible issue #2 occurs for all ranges above 0. I didn't have enough clients to test this however, my PC almost died running 3.
 
Last edited:

Spaghetti

Floating in the void
R2D2
Movie Battles II Team Retired
Posts
1,637
Likes
1,633
The entire feature needs reworking after the last time it was changed - did not get tested properly after other things were overhauled and we were at the point where we didn't really have much choice in releasing it as-is anyway.
 
Top