|
Donations
|
If you wish to make a donation you can by clicking the image below.
|
|
Latest poll
|
What UT3 gametypes will you run servers for
| FFA DeathMatch |
   | 154 |
| 1v1 DeathMatch |
   | 110 |
| Team DeathMatch |
   | 207 |
| Classic CTF |
   | 235 |
| Vehicle CTF |
   | 139 |
| Warfare |
   | 167 |
50 comments | 616 votes |
|
|
 |
|

12th February, 2008, 04:29 PM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
Quote:
Originally Posted by adminthis
* DO NOT, UNDER ANY CIRCUMSTANCE, SWITCH PLAYERS WHEN THE TEAMS ARE EVEN BY PLAYERCOUNT. Even though -according to ATB- one team has more skilled players, doing e.g. a 5 (skilled) vs 7 (less skilled) player match is unfair to the skilled team of 5. The idea of balancing by player strength is nice, but doesn't quite work out in reality. It would be nice if a feature could be enabled that only allows switching when teams are uneven by two or more players.
|
ATB should never change a 6v6 into a 5v7. However if team strengths are uneven during a 6v6, once the minimum number of requests are made, it will swap TWO players, to make a fairer 6v6. (Edit: To avoid that, in 1.4 you will be able to set bNeverRebalanceWhenTeamsAreEven=True.) (If ATB really IS changing a 6v6 into a 5v7, then that's a bug, in which case please correct me; but I've never seen it happen.)
Quote:
* IF MULTIPLE REQUESTS BEFORE SWITCHING IS SET, THIS SETTING IS IGNORED WHEN THE TEAMS ARE UNEVEN BY PLAYERCOUNT. I'm not sure why you did this, but I still want it to apply in this situation (in fact: it's the only situation in which I'm allowing the teams to be balanced! ). Why do I want multiple requests? In the past I was opposed to it, but some players have been exploiting the system as follows:
- Switch to RED, causing BLUE to have two players less
- ATB warns of imbalance
- The switcher types !teams and someone (usually not the switcher who messed up the teams in the first place) is moved to BLUE
- Repeat this process, causing players to be constantly switched from RED to BLUE... messing up the game.
With multiple requests before rebalancing I can hopefully put a stop to this bad practice.
|
This won't go on for long. Soon teams will be balanced by strength, and when he switches and types "!teams" he will just end up back where he was - haha! (And in some ways he is doing a good thing, making the teams more balanced by strength.  ) But since you have a lot of players on your server, I can see this might go on long enough to cause disruption.
I still think balancing a 5v7 without requiring multiple requests is desirable, since we both agree 5v7 sucks, so it should be resolved quickly, but I also agree we should avoid the situation you describe.
So how do we solve it?
- QUICK FIX: If people are abusing ATB, you can increase MinSecondsBeforeRebalance, so that they cannot do it too often. Make it 240 seconds (4 minutes), and ATB will never swap more than 4 times in a 20 minute game. (Note that in 1.3 you will need to set MinRequestsForRebalance back to 1, otherwise MinSecondsBeforeRebalance is IGNORED! In 1.4, MinSecondsBeforeRebalance will always apply.)
- MY FAVOURITE: We could block players from switching team at all, and only allow ATB to switch players. That seems to address the root cause of the problem - players causing imbalance by switching manually. Of course that would mean disabling the "!red" and "!blue" commands (set bEnablePlayerCommands=False), and [EDIT] setting bNoTeamChanges=True in UnrealTournament.ini. How does that sound? (We could still allow players to switch voluntarily if teams have become uneven, but I'd usually rather ATB decided who to switch anyway, so that teams don't end up uneven in strength.)
- We could block him from using "!teams" if he has just switched team himself, although that is fiddly to implement, and he has still caused imbalance, so someone else will probably type it anyway.
- We could do what you suggest, and require multiple requests to rebalance, even when teams are uneven by 2 players. But as before, that doesn't really solve the problem that he has caused imbalance by switching manually, and when people do request "!teams" it may not be the abuser who gets moved back. [Edit: New option in 1.4, you will be able to set bOverrideMinRequests=False.]
- You could just warn him not to do it, then kick/ban him if he continues.
Quote:
|
* SWALLOW MUTATE COMMANDS THAT ARE TYPED IN CHAT. I had a semi-admin that accidentally typed in a semi-admin command as a Say message.... not good.
|
Hehe. OK I'll swallow spoken lines which contain the semi-admin pass. I don't want to block people from sharing mutate commands in chat (e.g. someone answering the question "what's the line to bring up mapvote?").
"Make it idiot proof, and they'll just make a better idiot."
Thanks for the feedback.
Last edited by nogginBasher : 25th February, 2008 at 01:34 PM.
|

25th February, 2008, 01:51 PM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
AutoTeamBalance 1.4
Sorry it took so long. I kept tweaking and adding small improvements, and each time I wanted to test them before I could release it.
Grab the upgrade here: http://neuralyte.org/~joey/ut/AutoTeamBalance-1.4.zip Just drop AutoTeamBalance.u over your existing copy. The next time ATB saves stats at the end of a game (or you type "mutate saveconfig"), the new config vars will appear at the bottom of your AutoTeamBalance.ini, and you can change them (and move them to the top) if desired.
Here are the improvements in this release:
- Fixed the bug that a spectator could type "!red" and pick up the blue flag!
- Finally added a date_last_played entry for each player. Now old records can be recycled better.
- As well as displaying the SmartCTF scoreboard, "!stats" now also shows all the player strengths. (It's a shortcut for "mutate strengths".)
- Messages flashed to players now have different colours, position and timeout, and do not appear in the player's console.
- Overwrites the default pre-game message which tells players which team they are on, since teams are not assigned until later!
- If bShowReason is set, will explain why teams need to be rebalanced.
- If bShowProposedSwitch is set, will display which player(s) will be switched when rebalancing is requested.
- Now always broadcasts the reason if rebalancing was not possible, even if bBroadcastStuff=False.
- Added some new commands: mutate listmuts, mutate stats, mutate strengths extra. And a new semi-admin command: mutate flash [See AutoTeamBalance.txt for detailed explanations.]
- Added RelativeNormalisationProportion with a default of 0.5, to stop player strengths from shooting off too high. Added StrengthProportionFromCurrentGame (see below).
- If a semi-admin accidentally types the semi-admin pass in chat instead of the console, their message is swallowed.
- If team sizes differ by 2 or more players, and rebalance is requested, someone will be switched even when the smaller team had greater strength, but immediate rebalancing will be made possible, and recommended to all players.
- IDC support for the XOL server only. Maybe later I could make a version of IDC that can work on any server, but I suspect I'll never get around that that!
New config vars in this release:
- bReportStrengthAsCookies=False - *NEW* Until this is enabled, instead of describing player strength as cookies, it describes it as strength. Enable for "cookie fun".
- bOverrideMinRequests=True - *NEW* If set, will only require 1 request when teams are uneven by 2 or more players.
- bShowProposedSwitch=True - *NEW* On "!teams" request, or mid-game inbalance warning, shows the proposed player(s) that could be switched, otherwise just shows the request.
- CheckFrequency=15 - *NEW* How often to check for (and flash the warning about) mid-game imbalance (when bWarnMidGameUnbalance or bForceEvenTeams is set). Also how often ATB checks whether the game has ended, so do not set larger than the the time it takes for your server to switch map, or it will never notice the end of the game, and it will fail to update the player stats!
- bShowReason=True - *NEW* Displays the reason why it thinks teams are uneven (e.g. "3v5" or "Strength 407 vs 286").
- bShakeWhenMoved=False - *NEW* When set, player's screen shakes when they are changed to another team. (Used to default to True to get the player's attention, but appeared to cause annoyance.)
- bNeverRebalanceWhenTeamsAreEven=False - *NEW* If set, will refuse to swap 2 players to balance teams better by strength (e.g. during a 5v5 when one team has stronger players).
- RelativeNormalisationProportion=0.5 - *NEW* When updating stats relative to the average strength of players on the server, dampens this average towards the NormalisedStrength. This stops player strengths from escalating too far above the pre-defined average (50).
- StrengthProportionFromCurrentGame=0.5 - *NEW* During mid-game rebalancing, player strengths are estimated from a mixture of their stored player record and their score so far this game. This allows ATB to estimate whether a player is having a good or bad day, and rebalance accordingly. *EDIT* I think 0.25 is a better value, so feel free to change the default!
- warnColor=(R=200,G=160,B=0,A=24) - *NEW* The colour of the warning message sent to players when teams are uneven.
Config vars which are no longer used: bRelativeNormalisation and bUseOnlyInGameScoresForRebalance.
I hope this will meet your needs adminthis, and improve everybody's games! 
Last edited by nogginBasher : 26th July, 2008 at 07:47 AM.
|

25th February, 2008, 06:10 PM
|
|
Godlike
|
|
Join Date: Apr 2007
Posts: 416
|
|
Kick ass work 'basher. I had modified 1.3 quite a lot for my own use (logging of semi admin actions etc.). Can't wait to see how 1.4 performs. Lenghty description too 
__________________
Love is... something you can do
|

26th February, 2008, 03:38 AM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
Yeah I know you've been making your own changes, which is great. I hope it won't be too difficult for you to merge your updates with mine. (I'm guessing if you like 1.4 you'll apply your patches to it, like you did to 1.3.) If you want to see the intermediary source files I can share that with you, just give me a shout.
|

26th February, 2008, 02:17 PM
|
|
Godlike
|
|
Join Date: Apr 2007
Posts: 416
|
|
I did  So far the only problem I'm having is that bots from adwvaad sometimes join the wrong (usually stronger!) team. As you are probably aware, a bot joins when teams are uneven.. but now it joins on the wrong team, making them more uneven (e.g. without bot 6v5, with bot 7v5). Also, when typing !teams to fix this it would say "<playername> has been moved to <other team>", without actually moving the player.
I have set bNeverRebalanceWhenTeamsAreEven to False, but I doubt that will fix it...... will do some more observing.
__________________
Love is... something you can do
Last edited by adminthis : 26th February, 2008 at 02:25 PM.
|

3rd March, 2008, 12:11 AM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
Do you have bBalanceTeams=True? I think that deals with the bots.
|

3rd March, 2008, 11:02 AM
|
|
Godlike
|
|
Join Date: Apr 2007
Posts: 416
|
|
Quote:
Originally Posted by nogginBasher
Do you have bBalanceTeams=True? I think that deals with the bots.
|
Yes.
This bug persists, but it's not that big of a deal to me.. since it's usually quickly resolved by new people joining/leaving.
__________________
Love is... something you can do
|

4th March, 2008, 10:04 AM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
Mmmm that sounds undesirable!
I don't think ATB can actually handle the team a bot joins (since bots probably don't go through ModifyLogin() ), even if bBalanceBots=True. But in my experience, adwvaad and UT always put the extra bot on the smaller team. (If someone switched team, any bot on the now larger team would immediately swap to equalise.) So I don't know what's going on there. If you get desperate, set bDebugLogging=True, and see if ATB get involved when the bot joins. But beware the logging might cause extra lag, so turn it off when you're done!
Also, I'm not sure why it's not moving that player. Maybe when bNoTeamChanges=True, not even ATB can move players! If that is the case, ATB will need to set bNoTeamChanges to False before it tries to move someone, and set it back to it's previous value afterwards. I should really test this, and see if ChangePlayerToTeam() needs fixing...
|

4th April, 2008, 05:54 PM
|
 |
Dominating
|
|
Join Date: Nov 2007
Posts: 133
|
|
atb-shrinkini.pl
For ATB can generate lag when it uses a lot of records I wrote a small perl script to dump old or otherwise possibly usefull records, the script can dump three types of records:
1. Recordsof ATB versions older then 1.4, these don't have a proper last-play-date assigned to them
2. Records of nicknames with more then three ip's attached
3. Records of nicks like player#
The script also sorts the records on last-play-date so the three ip's left with method 2 may be more usefull keeping the latest ip's rather then the old ones. This may also help you to decide to which value you want to set bMaxRecords for it makes it easier to see how much of the records are pretty recent.
For the XOL server this enabled AutoTeamBalance.ini to go from using 4096 to about 1536 records.
You have to set your System directory (or whatever directory AutoTeamBalance.ini is in) on line 36:
Code:
my $inidir = "/home/UT/ut-server/System/";
The script will save the new ini in the same directory as AutoTeamBalance.ini.new
Help text
Quote:
atb-shrinkini.pl - clears old and unwanted records from AutoTeamBalance.ini
version: 0.1
Usage: perl -w atb-shrinkini.pl [options]?
Commandline options:
-i --ip Removes records from nicks with more then tree different ip's
-o --old Removes records of ATB versions older then 1.4
-p --player Removes records with nicks which equal player#
-h --help Print this help text and exit
If options are ommited removes all records named above: same as -o -i -p
Besides shrinking the number of records it also sorts the records by the
date-last-played making the three leftover ip's more usefull.
|
You can download the script here (save as atb-shrinkini.pl and run)
Last edited by rork : 4th April, 2008 at 06:45 PM.
|

11th April, 2008, 11:34 AM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
Thanks rork. Yeah the lag comes the first time ATB checks the team balance after a new player has joined the server. If it's the player's nick or IP are new, then ATB will search all the records (twice). =(
You can disable the automatic mid-game lookups by setting bWarnMidGameUnbalance=False, but it will still need to lookup when team rebalancing is requested/performed.
Reducing the MaxPlayerData on XOL to 1536 did reduce the lag. Of course the CPU speed of the server is also relevant.
I'm now working on some optimisation to make the lookups faster, which will be in version 1.5. (I will build some kind of sorted index, as suggested earlier in the thread. That's easier than trying to make it multi-threaded! But my current development version has some bugs I must track down...)
Last edited by nogginBasher : 11th April, 2008 at 11:54 AM.
|

1st December, 2008, 12:03 PM
|
|
Killing Spree
|
|
Join Date: Nov 2008
Posts: 21
|
|
great work with ATB basher !
btw. but how disable ATB on public server (command, out from mutators)?
bENABLED=true/false      where the f*ck is this option ...
OR someone know mutator who give only commands !red, !blue, !spec, !teams (no ASC and without all other shit, better optionality with disabled/enabled himself option)?
Last edited by kr0m : 1st December, 2008 at 04:56 PM.
|

2nd December, 2008, 01:45 PM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
If you want a mod that ONLY does !red and !blue, look earlier in the thread:
http://www.unrealadmin.org/forums/sh...8&postcount=24
But if you want to keep "!teams" then you must keep AutoTeamBalance, or use TeamBallancer instead, but that doesn't keep track of player strengths.
There is no global on/off for ATB, but you can disable a lot of stuff. To prevent the intial balancing at game start, set bAutoBalanceTeamsForCTF=False. Set bLetPlayersRebalance=False if you want to disable "!teams". That's most of the mod gone! (Be sure to edit the config while the server is OFF, a running server will overwrite the config file at the end of each game.)
To remove a mutator from the mutator chain, many people use a separate package "AdminTool". I personally use: admin servertravel CTF-NewMap?mutator=List.Of,Wanted.Mutators
You can try removing the mutator after the level has loaded with: "mutate delmut AutoTeamBalance", but it will come back next map if it's in your mutator list.
It's true there is a bunch of admin and semi-admin commands included in ATB which don't really affect the game (you can see them on "mutate help"). You can just ignore that stuff.
Can you better describe the features you want to get rid of? Because bOtherShit=False, and bBetterOptionality=True are hard to define. ;p
"disabled/enabled himself option" - do you want individual players to be able to make their own preferences about whether they get switched or not? Or were you suggesting something else?
You don't need ASC to run ATB. So if you don't want ASC, remove it.
|

2nd December, 2008, 11:36 PM
|
|
Killing Spree
|
|
Join Date: Nov 2008
Posts: 21
|
|
okey ! thx for info i will try with ATB
im asking bcoz my server its for public & clanwars (in clan wars like u writed before ATB disabled himself when btournament=true, yep ?)
one more question how disable message in ATB : You are in blue team\red team on start game bcoz now i have 2 message with this, one default and from ATB.
yep i know noo need asc to run atb 
//sry my english suck
salut 
|

24th January, 2009, 02:00 AM
|
|
Holy Shit!!
|
|
Join Date: Mar 2007
Posts: 1,259
|
|
Hi noggi
I want to use ATB. I'm sure you have played on uK siege recently and seen how things can get very uneven but I'm trying to refrain from using ATB until 1.5 is released. Any ideas as to when this will be?
|

21st February, 2010, 10:32 AM
|
|
Holy Shit!!
|
|
Join Date: Nov 2006
Posts: 605
|
|
Quote:
Originally Posted by SoNY_scarface
Hi noggi
I want to use ATB. I'm sure you have played on uK siege recently and seen how things can get very uneven but I'm trying to refrain from using ATB until 1.5 is released. Any ideas as to when this will be?
|
with ctf4 please 
|

25th February, 2010, 12:33 AM
|
 |
Holy Shit!!
|
|
Join Date: Oct 2008
Posts: 554
|
|
nice
|

25th February, 2010, 09:07 AM
|
|
Holy Shit!!
|
|
Join Date: Mar 2007
Posts: 1,259
|
|
Quote:
Originally Posted by admin
with ctf4 please 
|
ctf 4 is already there!
|

25th February, 2010, 12:14 PM
|
|
Holy Shit!!
|
|
Join Date: Nov 2006
Posts: 605
|
|
When we playing with ..it past players only red and blue colors
CustomGameConfig[6]=(bEnabled=True,GameClass="CTF4.CTF4Game",NewPrefi x="SA4CTF",Mutators="SmartCTFX01.SmartCTFX,SmartCT FX01.SmartCTFXBinds,ZPPure7G.ZP_SniperArena,Pheoni x.PheonixMut,AS-FlagsCC.CustomFlags4,AntiTweakV42.AntiTweak",Setti ngs="GoalTeamScore=2.000000,TimeLimit=20, bPlayersBalanceTeams=False,bCarryBack=False,bDesignation=False,bSubtraction= False,bElimination=True,bDistribution=True,bMultiC ap=True,bMultiWeaponStay=True, bBalanceTeams=True,FriendlyFireScale=0.0,bTournament=False,bautopaus e=False,MaxPlayers=12,MaxTeams=4,MaxSpectators=0,M inPlayers=4,bForceRespawn=False")
|

8th April, 2010, 11:49 AM
|
|
Rampage
|
|
Join Date: Jun 2005
Location: Bristol UK
Posts: 90
|
|
I have been meaning to release the latest version for a while. Sorry I didn't make a zip file, but at least it's out there. Find the URL in the top post. To install, simply drop AutoTeamBalance.u over your existing copy in the System folder. (Windows servers may need to be shut down to do this.)
This version is better in lots of ways. I'm afraid I can't even remember all of them. Here are a few:
* No lag mid-game (mapswitch is a little slower - reduce MaxPlayerData to combat this)
* Initial balance now works for games with more than 2 teams (but sorry mid-game rebalance is still restricted to red+blue)
* Admins can now specify Teamspeak URLs, players just type !TS to join their team channel. Similarly !WWW to open the server's homepage.
* Use "mutate suggest" if you are curious to see which switches will be proposed, before spamming !TEAMS.
* Some vague thresholds so that strengths don't get confused by Siege leech games.
* bAutoSwitchNewPlayers now defaults to True, since it only operates on players who both join the server within 10 seconds of each other.
Things still Todo for the future:
* Use ACE/Nexgen/AKA to track players via GUID, rather than just nick/IP.
* Use something like standard-deviation to improve the mid-game rebalancing decision.
* Test ScoringMethod=3 somewhere. I think this may give a better spread of strength values.
Enjoy.
Last edited by nogginBasher : 9th April, 2010 at 11:49 AM.
|

12th April, 2010, 12:51 PM
|
 |
Rampage
|
|
Join Date: Jun 2004
Posts: 55
|
|
wanted to update the .u file to get rid of the midgame lags when balancing
shut down the server, replaced the file and it wont restart again
getting this:
Code:
AutoTeamBalance.AutoTeamBalance.StrFilterNum:00DF) Runaway loop detected (over 10000000 iterations)
Exit: Executing UObject::StaticShutdownAfterError
Critical: FFrame::Serialize
Critical: UObject::ProcessEvent
Critical: (AutoTeamBalance CTF-IncineratorLE-102.AutoTeamBalance0, Function
AutoTeamBalance.AutoTeamBalance.PostBeginPlay)
Critical: ULevel::SpawnActor
Critical: (AutoTeamBalance)
Critical: UObject::ProcessEvent
Critical: (CTFGame CTF-IncineratorLE-102.CTFGame0, Function Botpack.CTFGame.InitGame)
Critical: BeginPlay
Critical: UGameEngine::LoadMap
Critical: LocalMapURL
Critical: UGameEngine::Browse
Critical: UGameEngine::Init
Critical: UServerCommandlet::Main
|
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
|
|
|
| Thread Tools |
|
|
| Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
|