UT4 plugin mutator for balancing teams at start.
UT4X Team balancer mutator is a server side mutator (or plugin) that will automatically balance teams by average ELO
when game starts.
Since it's a server side mutator, player does not need to download the mutator and no redirect is needed.
Thomas 'WinterIsComing' P.
-
1.2.1 - 27/12/2021
- Modified game options TeamBalancerEnabled to UT4XBalancerEnabled to not confuse with generic ut4 option "BalanceTeams"
- UT4XBalancer is now no longer disabled if BalanceTeams=false
- Changed min player count from 6 to 4 to balance teams
- Modified game options BalanceTeamsInPrivateGames to UT4XBalancerEnabledInPrivateGames
- Modified command "mutate enableteambalancer" -> "mutate enableut4xbalancer"
- Modified command "mutate disableteambalancer" -> "mutate disableut4xbalancer"
-
1.2 - 29/05/2021 - First public version
See licence file
-
Clone repository or download repository from https://github.com/xtremexp/UT4XBalancer
-
Move UT4XBalancer folder <Windows/Linux>Server/UnrealTournament/Plugins
-
You should then have <Windows/Linux>Server/UnrealTournament/Plugins/UT4XBalancer folder
This will allow to run for any game either from a ruleset or a custom game
- Edit <Windows/Linux>Serverr\UnrealTournament\Saved\Config\Game.ini file
- Add or edit this section
[/Script/UnrealTournament.UTGameMode]
ConfigMutators[0]=UT4XBalancer
In your ruleset, in GameOptions, add this:
?mutator=UT4XKickIdlers
E.G: "gameOptions": "?mutator=UT4XBalancer"
Add this in command line:
?mutator=UT4XBalancer
Default configuration of this mutator can be changed modifying in <Windows/Linux>Server\UnrealTournament\Saved\Config<Windows/Linux>Server\UT4X.ini file. (this file is automatically created at first start).
If file is not present you can create it with this content (see /Config/DefaultUT4X.ini file in this plugin folder) :
[/Script/UT4XBalancer.UT4XBalancer]
UT4XBalancerEnabled=True
UT4XBalancerEnabledInPrivateGamesEnabled=False
Property | Default Value | Description |
---|---|---|
UT4XBalancerEnabled | True | If true ut4x team balancer will be enabled else not. |
UT4XBalancerEnabledInPrivateGamesEnabled | False | If true private games will have team balancer enabled. |
These values can be modified modifying UT4X.ini file as seen before.
Note: BalanceTeams generic ut4 option is not linked with ut4x balancer.
As a logged admin (command: "rconauth mypassword"), you can enable or disable mutator:
Enable TeamBalancer:
mutate enableut4xbalancer
Disable KickIdlers:
mutate disableut4xbalancer
Force team balance and randomization:
mutate balanceteams
Display current elo for both teams (as a normal user)
mutate teaminfo
- Windows OS
- Microsoft Visual Studio 2015 (Community Edition (free) or paid one)
- Git client (either Git for windows or TortoiseGit)
- clone Unreal Tournament repository from https://github.com/EpicGames/UnrealTournament
- run "Setup.bat" in root UnrealTournament folder (might take a long time since it downloads at UT4 content (textures, maps, ...))
- clone UT4XBalancer`repository to UnrealTournament\UnrealTournament\Plugins folder
- run "GenerateProjectFiles.bat -2015" in root UnrealTournament folder
- open "UE4.sln" solution file within Visual Studio 2015
- Build plugin (first build can quite a long time since it's building UT4 as well)
- For Windows select Shipping Server / Win64 / UE4 configuration then "Build -> Build Unreal Tournament" in menu
- For Linux select Shipping Server / Linux / UE4 configuration then "Build -> Build Unreal Tournament" in menu
- Compiled plugin binaries will then be available within UnrealTournament\UnrealTournament\Plugins\UT4XBalancer`\Binaries folder
UT4X Balancer has some experimental features (disabled in code) not yet properly working such as:
- picking up the right team for new player joining game in progress
- auto-switch player if teams become uneven after some player left
You may try to fix them.