5v5, 8:0 -> one player from Alpha moved to Bravo, because Alpha is definitely too strongIn situations like this I'd rather see swapping best player from alpha with worst player from bravo. I dislike any situations where there's difference between teams greater than 2. In my opinion 6vs4 is unbalanced and it's like your Cube was flawed but it's for sure superior.
(15:13:52) [*] [Error] cube -> (OnPlayerSpeak): Out of Global Vars range
(15:13:52) [*] [Error] cube -> (AppOnIdle): Access violation at address 080A0B43, accessing address 0000010D
(15:13:53) [*] [Error] cube -> (OnPlayerSpeak): Access violation at address 080A0BCC, accessing address 0000010D
(15:13:53) [*] [Error] cube -> (AppOnIdle): Access violation at address 080A0BCC, accessing address 00000120
linux?Code: [Select](15:13:52) [*] [Error] cube -> (OnPlayerSpeak): Out of Global Vars range
(15:13:52) [*] [Error] cube -> (AppOnIdle): Access violation at address 080A0B43, accessing address 0000010D
(15:13:53) [*] [Error] cube -> (OnPlayerSpeak): Access violation at address 080A0BCC, accessing address 0000010D
(15:13:53) [*] [Error] cube -> (AppOnIdle): Access violation at address 080A0BCC, accessing address 00000120
uncool :<
One thing i'd change. After map changes, if you got balanced you get kicked by server
This was fixed in 0.5b, where balance doesn't trigger in the last 10 seconds of a map. I suggest downloading newer version.Quote from: brad cZeOne thing i'd change. After map changes, if you got balanced you get kicked by server
yes debian 64x soldat mode : Realistic survival CTFlinux?Code: [Select](15:13:52) [*] [Error] cube -> (OnPlayerSpeak): Out of Global Vars range
(15:13:52) [*] [Error] cube -> (AppOnIdle): Access violation at address 080A0B43, accessing address 0000010D
(15:13:53) [*] [Error] cube -> (OnPlayerSpeak): Access violation at address 080A0BCC, accessing address 0000010D
(15:13:53) [*] [Error] cube -> (AppOnIdle): Access violation at address 080A0BCC, accessing address 00000120
uncool :<
Changes 0.7 -> 0.8:
added: /mix (or /shuffle) admin-only command to shuffle the teams
And in case of a big unbalance that lasts for a longer period of time, you can shuffle the teams (put the players, from most kills to fewest kills, to alternating teams)
umQuoteChanges 0.7 -> 0.8:
added: /mix (or /shuffle) admin-only command to shuffle the teamsQuoteAnd in case of a big unbalance that lasts for a longer period of time, you can shuffle the teams (put the players, from most kills to fewest kills, to alternating teams)
(22:37:20) [Error] cube -> (OnPlayerCommand): Type Mismatch
(22:37:20) Connection to the server lost
21:57:07 [Fromage] !Bal
► > Checking team balance (request by player)... [6v2 7:1]
► > Performing another balance check... [5v3 7:1]
► > Performing another balance check... [4v4 7:1]
► > Performing another balance check... [3v5 7:1]
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► > Everyone in Bravo Team is immune to balance. Using alternative method.
► > Performing another balance check... [4v4 7:1]
► > Everyone in Alpha Team is immune to balance. Using alternative method.
► > Performing another balance check... [3v5 7:1]
► 21:57:08 > Teams balanced.
► [.huhu// Xar0ne] huhu
Weight_CTF = 4; // don't set it higher than MinDiff
MinDiff_CTF = 5;
for i := 1 to j do if (GetPlayerStat(player[i], 'Flags') = 0) then begin
for i := 1 to j do begin
pl2 := ChoosePlayer(iif(temp=11, 1, 2), 5);
pl2 := ChoosePlayer(iif(temp=11, 1, 2), 2);
Cube is good script, but too complicated. I need a simple script... only balance, when one team have 2 players more... do you know something that?
var
Double, Alone, Messages: boolean;
PlayerPnts, TeamPnts: byte;
Color: longint;
function AlivePlayers(Team: shortint): byte;
var
i: byte;
begin
for i := 1 to 32 do if (GetPlayerStat(i,'Active') = true) and (GetPlayerStat(i,'Alive') = true) and ((Team = -1) or (GetPlayerStat(i,'Team') = Team)) then Result := Result + 1;
end;
procedure ActivateServer();
begin
try
if ReadINI('scripts/' + ScriptName + '/settings.ini','General','Message','true') = 'true' then Messages := true else Messages := false;
Color := StrtoInt(ReadINI('scripts/' + ScriptName + '/settings.ini','General','MsgColor','$FFFFFFFF'));
PlayerPnts := StrtoInt(ReadINI('scripts/' + ScriptName + '/settings.ini','General','PlayerPnts','5'));
TeamPnts := StrtoInt(ReadINI('scripts/' + ScriptName + '/settings.ini','General','TeamPnts','1'));
if ReadINI('scripts/' + ScriptName + '/settings.ini','General','DoubleCap','false') = 'true' then Double := true else Double := false;
if ReadINI('scripts/' + ScriptName + '/settings.ini','General','AloneCap','false') = 'true' then Alone := true else Alone := false;
except
WriteLn('Error while loading settings.');
end;
end;
procedure OnFlagScore(ID, TeamFlag: byte);
var
i: byte;
begin
if iif(TeamFlag = 1,AlphaPlayers,BravoPlayers) = 0 then begin
if Alone = false then begin
SetTeamScore(iif(TeamFlag = 1,2,1),iif(TeamFlag = 1,BravoScore,AlphaScore) - 1);
if Messages then WriteConsole(ID,'Capturing while alone has no effect.',Color);
end else begin
SetTeamScore(iif(TeamFlag = 1,2,1),iif(TeamFlag = 1,BravoScore,AlphaScore) - 1 + TeamPnts);
end;
end else if AlivePlayers(TeamFlag) = 0 then begin
if Double = false then begin
SetTeamScore(iif(TeamFlag = 1,2,1),iif(TeamFlag = 1,BravoScore,AlphaScore) - 1);
if Messages then WriteConsole(ID,'Double capturing has no effect.',Color);
end else begin
SetTeamScore(iif(TeamFlag = 1,2,1),iif(TeamFlag = 1,BravoScore,AlphaScore) - 1 + TeamPnts);
end;
end else begin
SetTeamScore(iif(TeamFlag = 1,2,1),iif(TeamFlag = 1,BravoScore,AlphaScore) - 1 + TeamPnts);
end;
end;