AAO25.com
Community => Games & Programming => Topic started by: Vanoke on Wednesday, January 28, 2015, 17:10:55 PM
-
Is ther a team Swap command ore gan it be intergate form out the tournament setting into the normal
so we can swap between the gameplay :) with a command !
-
Admin A_SwitchTeam < playername> | playerID >
For a single person.
To swap everyone, you'd have to do this for ever person.
However, I don't think there's a tool that allows you to force a change as in tournament mode.
-
I am not sure but in the past it was possible by a command but i can`t find it. so i must be dreaming.
but i am intrested in that tool. ore sumbuddy knows to pull it out tournament and bring it into regulair gameplay.
I miss this in Big Clan Day . i dit in manual in admin f12 but people can stop it in that way.
-
There might have been an option in the admin panel to swap players every x rounds, I'm not sure.
-
sorry to say Vanoke - you are dreaming :D
not possible at all
maybe switch off "autobalance", then it is easier to swap players... but maybe then you have 10 vs 5 :)
-
Merlin link=topic=6651.msg83700#msg8?3700 date=1422524793]
sorry to say Vanoke - you are dreaming :D
not possible at all
maybe switch off "autobalance", then it is easier to swap players... but maybe then you have 10 vs 5 :)
than i will make it publiek in half time players must change .i will do it in f12.
-
yes, but with a kick by ignorating your change.
i did try on mp to swap sides, but if the other side will remain, you can not change.
therefore maybe no autobalance...?
-
It was part of the Ultimatemod, to be able to make all players on both sides switch.
-
I'd just like to say this: I know some players who would not play at all rather than being switched teams. Single minded persons, fragwhores, ... them who don't really understand the game
-
I never talkt about kick . We only can try 1 time in middle ofgame map . I do not want to try to get all to other site . I do want to play also. It will never work 100 % .
And about fragho.... the good guys understand and have a great time they stay.
ultimate mod leds get it out and puth it in this game if assist team has time .
-
oh, didn't remember that ultimate mod had that feature. nice to hear.
maybe ELiZ could "cut" it out there to implement it as a selectable "goodie" in assist.
it's worth do ask for it, i think.
-
And about fragho.... the good guys understand and have a great time they stay.
Ye but look at this: The "good" guys stay and the one-side heroes leave, maybe to another serrver, maybe to take a break. That means there's nobody on the difficult side anymore, so the "good guys" will forever have to stay on the same side.
The way I see it, this teamswap will never work, just because players keep telling themselves "If I prefer to go defence it's my right blablabla" and because a lot of players don't like challenge and don't like to get out of their comfort zone. All they like are easy kills.
My 2 cents ;)
-
oh, didn't remember that ultimate mod had that feature. nice to hear.
maybe ELiZ could "cut" it out there to implement it as a selectable "goodie" in assist.
it's worth do ask for it, i think.
It even was a seperate mod for a while as well. Used to be on the old DG site if i'm correct, but that site is offline anyway. While we're on the subject, I think a few more mods should be allowed. Not talking about game changing mods, but mods that make administrating a server easier. A sideswap could be considered admin assistance in my opinion.
-
This should work Download my SwitchTeamsMod at: http://brothersnarms.gamerlaunch.com/gallery/library.php?gid=452135 (http://brothersnarms.gamerlaunch.com/gallery/library.php?gid=452135)
This is untracked of course.
How To Use:
Open aa25srv.ini
under [Engine.GameEngine]
add line: ServerActors=SwitchTeamsMod.AdminTeamSwitch
Save aa25srv.ini
While ingame press ~ then type 'mutate switchteams'
Source Code:
class AdminTeamSwitch extends mutator;
event PreBeginPlay ()
{
Level.Game.BaseMutator.AddMutator(self);
Log("This mod is property of the [BA]^ Brothers N Arms Clan !",'LEEFFM');
Log("This mod is made by [BA]^LEEFFM",'LEEFFM');
Log("LEEFFM'S Switch Teams Mod Is Loaded",'LEEFFM');
}
function Mutate (string MutateString, PlayerController Sender)
{
local array<string> Parts ;
local HumanController HC ;
local string Command ;
local string Option ;
HC = HumanController(Sender);
Split( MutateString, " ", Parts);
Command = caps(Parts[0]) ;
Option = caps(Parts[1]) ;
if (HC.PlayerReplicationInfo.bAdmin)
{
switch (Command)
{
case "switchteams":
SwitchSides () ;
break;
default:
HC.ClientMessage ("Type 'mutate switchteams' to switch Team Sides!") ;
break;
}
} else
{
HC.NotifyAdminMessage("'mutate switchteams' is an Administrator only command!") ;
}
}
function TeamChange( HumanController HC, int N )
{
local TeamInfo OldTeam;
OldTeam = HC.PlayerReplicationInfo.Team;
Level.Game.ChangeTeam(HC, N, true);
}
function SwitchSides ()
{
local HumanController HC;
local int PlayerID;
local int i;
PlayerID = HC.PlayerReplicationInfo.PlayerID ;
for (i = 0; i < Level.Game.GameReplicationInfo.PRIArray.Length; i++)
{
HC = HumanController(Level.Game.GameReplicationInfo.PRIArray[i].GetController());
if (HC.PlayerReplicationInfo.Team.TeamIndex == 1)
{
TeamChange(HC,0);
} else
{
TeamChange(HC,1);
}
}
}
-
Just wondering, have you used any of the Crusade mods to build on that?
-
my mods are based off of what I learn looking at a folder named Compilings that belonged to crusade and based off what I see in the UTPT program and a Americas Army 2.6 SDK I found on
I didn't see anything in crusades compiling folder that would have let me do this I just rewrote the SwitchTeam() function located in the PlayerController file and named it SwitchSides () Players can still click remain if they go to the team selection tab but there is no message that pops up telling you that you will be switching teams so most people wont know and will be switched.
-
good job, thanks.
it's a beginning ;)
-
This should work Download my SwitchTeamsMod at: http://brothersnarms.gamerlaunch.com/gallery/library.php?gid=452135 (http://brothersnarms.gamerlaunch.com/gallery/library.php?gid=452135)
This is untracked of course.
How To Use:
Open aa25srv.ini
under [Engine.GameEngine]
add line: ServerActors=SwitchTeamsMod.AdminTeamSwitch
Save aa25srv.ini
While ingame press ~ then type 'mutate switchteams'
Source Code:
class AdminTeamSwitch extends mutator;
event PreBeginPlay ()
{
Level.Game.BaseMutator.AddMutator(self);
Log("This mod is property of the [BA]^ Brothers N Arms Clan !",'LEEFFM');
Log("This mod is made by [BA]^LEEFFM",'LEEFFM');
Log("LEEFFM'S Switch Teams Mod Is Loaded",'LEEFFM');
}
function Mutate (string MutateString, PlayerController Sender)
{
local array<string> Parts ;
local HumanController HC ;
local string Command ;
local string Option ;
HC = HumanController(Sender);
Split( MutateString, " ", Parts);
Command = caps(Parts[0]) ;
Option = caps(Parts[1]) ;
if (HC.PlayerReplicationInfo.bAdmin)
{
switch (Command)
{
case "switchteams":
SwitchSides () ;
break;
default:
HC.ClientMessage ("Type 'mutate switchteams' to switch Team Sides!") ;
break;
}
} else
{
HC.NotifyAdminMessage("'mutate switchteams' is an Administrator only command!") ;
}
}
function TeamChange( HumanController HC, int N )
{
local TeamInfo OldTeam;
OldTeam = HC.PlayerReplicationInfo.Team;
Level.Game.ChangeTeam(HC, N, true);
}
function SwitchSides ()
{
local HumanController HC;
local int PlayerID;
local int i;
PlayerID = HC.PlayerReplicationInfo.PlayerID ;
for (i = 0; i < Level.Game.GameReplicationInfo.PRIArray.Length; i++)
{
HC = HumanController(Level.Game.GameReplicationInfo.PRIArray[i].GetController());
if (HC.PlayerReplicationInfo.Team.TeamIndex == 1)
{
TeamChange(HC,0);
} else
{
TeamChange(HC,1);
}
}
}
VANOKE :style: I can`t juse it if its make the server not tracked for Big Clan Day
But i would say its not a Mod is a Tool so leds shout all ELIZ & SPANKY Can we inplant this tool from :makemyday:
1- Tournament software ore
2- form Crusade the swap team "mod" Tool.
===================================================================
Offline Ganja
Respected Members
Epic Poster
***
Posts: 3,185
View Profile
Personal Message (Offline)
AA: -wA'tNc.gaNja
Re: Team Swap
? Reply #11 on: Today at 07:17:43 ?
Quote
Quote from: Vanoke on Today at 06:56:24 :style:
And about fragho.... the good guys understand and have a great time they stay.
Ye but look at this: The "good" guys stay and the one-side heroes leave, maybe to another serrver, maybe to take a break. That means there's nobody on the difficult side anymore, so the "good guys" will forever have to stay on the same side.
The way I see it, this teamswap will never work, just because players keep telling themselves "If I prefer to go defence it's my right blablabla" and because a lot of players don't like challenge and don't like to get out of their comfort zone. All they like are easy kills.
My 2 cents ;)
========================================================= :)
Vanoke :style:
Ganja in normal situation oke sum players will argue about it.
But i juse it in BCD not in normal unless the server is full for more than 40 minuts you can say i swap all.
In big clan day its a extra you can upgrade your skills in a full server also hooping that team spirit will grow in near future like on the right time and plays trow smoke etc.etc.
And those fragho... i say sumtimes to them / Try to help your team mates / ore you can do better ( name) ore Its obj time go go go .
And if you learn ther spots then its also a gameplay unless they change ther game name everytime.
But to go back to the core toppic leds wait if Eliz ore Spanky can gif a anser to this.!!!
:poorguy: :bow:
-
ok looks like you have to use the command twice for it to work D: , I didn't see anything in the code of crusades UltimateMod that swaps teams but I did find the tournament SwapTeams function im attempting to duplicate the parts of it I need to make a new swapteams command.
EDIT:
I believe this should work but im having probloms I cannot compile it because I cannot call AGP_GameTeamObjectives I keep getting this error -> Error in AdminTeamSwitch.uc (4): Unrecognized type 'AGP_GameTeamObjectives'
Teams[2] is declared in AGP_GameTeam I cant call that either same error, and the same error for AGP_TeamInfo.
if anyone can help me get around this problem I Should be able to make this a working mod.
AdminTeamSwitch.uc:
class AdminTeamSwitch extends mutator;
var GameInfo GameInfo;
var AGP_GameTeamObjectives AGP_GameTeamObjectives;
event PreBeginPlay ()
{
Level.Game.BaseMutator.AddMutator(self);
Log("This mod is property of the [BA]^ Brothers N Arms Clan !",'LEEFFM');
Log("This mod is made by [BA]^LEEFFM",'LEEFFM');
Log("LEEFFM'S Switch Teams Mod Is Loaded",'LEEFFM');
}
function Mutate (string MutateString, PlayerController Sender)
{
local array<string> Parts ;
local HumanController HC ;
local string Command ;
local string Option ;
HC = HumanController(Sender);
Split( MutateString, " ", Parts);
Command = caps(Parts[0]) ;
Option = caps(Parts[1]) ;
if (HC.PlayerReplicationInfo.bAdmin)
{
switch (Command)
{
case "switchteams":
SwitchSides () ;
break;
default:
HC.ClientMessage ("Type 'mutate switchteams' to switch Team Sides!") ;
break;
}
} else
{
HC.NotifyAdminMessage("'mutate switchteams' is an Administrator only command!") ;
}
}
function SwitchSides ()
{
local HumanController HC;
local int PlayerID;
local int i;
PlayerID = HC.PlayerReplicationInfo.PlayerID ;
for (i = 0; i < Level.Game.GameReplicationInfo.PRIArray.Length; i++)
{
HC = HumanController(Level.Game.GameReplicationInfo.PRIArray[i].GetController());
switch (HC.PlayerReplicationInfo.Team.TeamIndex)
{
case 0:
SwapPlayer (HC,1) ;
break;
case 1:
SwapPlayer (HC,0) ;
break;
}
}
}
function SwapPlayer (HumanController HC, int NewTeam)
{
ChangeTeam (HC,NewTeam) ;
//AGP_TeamInfo(HC.PlayerReplicationInfo.Team).ClearPlayerRequests(HC.PlayerReplicationInfo);
//AGP_TeamInfo(HC.PlayerReplicationInfo.Team).AddToNoRequestList(HC.PlayerReplicationInfo,False);
}
function bool ChangeTeam (HumanController C, int Team)
{
local TeamInfo NewTeam;
if (Team < 2)
{
NewTeam = AGP_GameTeamObjectives.Teams[PickTeam(Team,C)];
} else
{
return false;
}
if (C.PlayerReplicationInfo.Team == NewTeam)
{
return false;
}
C.StartSpot= none;
if (C.PlayerReplicationInfo.Team != None)
{
C.PlayerReplicationInfo.Team.RemoveFromTeam(C);
}
if (NewTeam.AddToTeam(C))
{
C.ClientMessage ("You Were Moved!") ;
}
return true;
}
-
I've added a similar function to the next version.
Only main difference is that my function informs the user, it's because it uses an existing ADMIN command on all users(Just like AFC does).
final exec function ass()
{
local PlayerReplicationInfo PRI;
if (ViewportOwner !=None)
{
if (myLevel !=None)
{
ForEach myLevel.AllActors(Class'PlayerReplicationInfo',PRI)
{
if (! PRI.bIsSpectator || PRI.bWaitingPlayer)
{
log(ViewportOwner.Actor.ConsoleCommand("admin A_SwitchTeam" @ PRI.PlayerName));
}
}
}
}
}
Nothing extra need to be loaded in the ini, all an admin has to do is to type
ass
in the console, and all players will swap teams.
Function will hopefully be available tomorrow, when I release a new version of Antipoke.u.
Release was meant to be a cleanup job for the santa stuff that still was(is) included, but I can just as well include this.
-
I found my error I for got to add EditPackages=AGP_GamePlay to my make file :P silly noob mistakes lol, however I get another error now, Looks nice Eliz cant wait to test it out tomorrow on the [BA]^ server
-
I guess it's as good as it gets.
Everyone will still be able to click "Remain" if they wish, though.
One possibility to not let people get the "You're getting swapped!" notice, is to use an admin message right after the "ass" command.
-
ok My SwapTeamsMod now works, an admin can type 'mutate switchsides' in console and it will swapteams (do this after the round has ended otherwise you will end the round by doing it) , The message "Changing to [ASSAULT/DEFENSE"] Next round!" still pops up but there is no remain button so everyone is forced to switch they can always try to switch back. There's a HalfTime
example:
If you set the game to 10 rounds assault wins 3 defense wins 2 after the round that makes assault score + defense score (3 + 2) (so after round 5) equal to the amount of rounds divided by 2 (so half, 10 / 2) so when the 6th round goes to start it will automatically end the round (no score no chance to spawn) , swap teams, then start the next round. when you swap teams theres also a red console message for everyone "[AA25] HalfTime... Switching Sides!" . There is also an ini file with 1 setting "bSwitchAtHalfTime" true is on false is off.
If anyone would like to download let me know ill upload it to the Brothers N Arms Download Gallery.
AdminSwitchTeams.uc:
class AdminTeamSwitch extends mutator config (ATS);
var config bool bSwitchAtHalftime;
event PreBeginPlay ()
{
Level.Game.BaseMutator.AddMutator(self);
Log("This mod is property of the [BA]^ Brothers N Arms Clan !",'LEEFFM');
Log("This mod is made by [BA]^LEEFFM",'LEEFFM');
Log("LEEFFM'S Switch Teams Mod Is Loaded",'LEEFFM');
}
function ModifyPlayer (Pawn Other)
{
if (bSwitchAtHalfTime)
{
HalfTimeSwitchSides () ;
} else
{
Log("HalfTime Disabled",'LEEFFM') ;
}
}
function Mutate (string MutateString, PlayerController Sender)
{
local array<string> Parts ;
local HumanController HC ;
local string Command ;
local string Option ;
HC = HumanController(Sender);
Split( MutateString, " ", Parts);
Command = caps(Parts[0]) ;
Option = caps(Parts[1]) ;
if (HC.PlayerReplicationInfo.bAdmin)
{
switch (Command)
{
case "switchteams":
SwitchSides () ;
break;
default:
HC.ClientMessage ("Type 'mutate switchteams' to switch Team Sides!") ;
break;
}
} else
{
HC.NotifyAdminMessage("'mutate switchteams' is an Administrator only command!") ;
}
}
state HalfTime
{
function BeginState ()
{
Level.Game.Endgame (none,"Switching Teams for HalfTime!") ;
settimer(5,true);
}
function Timer ()
{
SwitchSides () ;
settimer(0,true);
}
}
function HalfTimeSwitchSides ()
{
local int RoundsPerMatch;
local int RemainingRounds;
local int MidGame;
local int HalfTime;
RoundsPerMatch = Level.Game.GameReplicationInfo.RoundsPerMatch ;
RemainingRounds = Level.Game.GameReplicationInfo.RemainingRounds ;
MidGame = RoundsPerMatch / 2 ;
HalfTime = Level.Game.GameReplicationInfo.Teams[0].TeamScore + Level.Game.GameReplicationInfo.Teams[1].TeamScore ;
switch (HalfTime)
{
case MidGame:
GoToState ('HalfTime');
break;
default:
Log("Halftime is not equal to MidGame!",'LEEFFM');
break;
}
}
function SwitchSides ()
{
local HumanController HC;
local int PlayerID;
local int i;
PlayerID = HC.PlayerReplicationInfo.PlayerID ;
for (i = 0; i < Level.Game.GameReplicationInfo.PRIArray.Length; i++)
{
HC = HumanController(Level.Game.GameReplicationInfo.PRIArray[i].GetController());
switch (HC.PlayerReplicationInfo.Team.TeamIndex)
{
case 0:
SwapPlayer (HC,1) ;
break;
case 1:
SwapPlayer (HC,0) ;
break;
}
}
}
function SwapPlayer (HumanController HC, int NewTeam)
{
ChangeTeam (HC,NewTeam) ;
AGP_TeamInfo(HC.PlayerReplicationInfo.Team).ClearPlayerRequests(HC.PlayerReplicationInfo);
AGP_TeamInfo(HC.PlayerReplicationInfo.Team).AddToNoRequestList(HC.PlayerReplicationInfo,False);
}
function ChangeTeam (Controller C, int Team)
{
local int OldTeam;
local int NewTeam;
if (Team < 2)
{
OldTeam = C.PlayerReplicationInfo.Team.TeamIndex ;
NewTeam = Team;
} else
{
return;
}
if (C.PlayerReplicationInfo.Team.TeamIndex == NewTeam)
{
return;
}
C.StartSpot= none;
if (C.PlayerReplicationInfo.Team != None)
{
HumanController(C).PlayerReplicationInfo.Team.RemoveFromTeam(C);
HumanController(C).RequestChangeTeam(NewTeam);
}
if (Level.Game.GameReplicationInfo.Teams[NewTeam].AddToTeam(C))
{
HumanController(C).ClientMessage ("?[AA25] HalfTime... Switching Sides!") ;
}
}
defaultproperties
{
bSwitchAtHalfTime = true
}
-
If you do the ass is it possible to led it say Teamswap,
intead of you go to Assault ore Defence
so players know all go to other site !?
-
If you do the ass is it possible to led it say Teamswap,
intead of you go to Assault ore Defence
so players know all go to other site !?
I think that you can do something like this:
bind x ass | admin message TEAMSWAP
not sure though
-
I think that you can do something like this:
bind x ass | admin message TEAMSWAP
not sure though
You should be able to.
And it should just show the last message.
-
Lol. I remember typing that in ass. In console and all those 1 sided noobsss Players where crying
-
Lol. I remember typing that in ass. In console and all those 1 sided noobsss Players where crying
I"ve seen it happen on pipeline too, was awamzing. Some changed back team immediately after that, and some others just left the server ...
-
it's a good feature. i do use it not that often, but good to have it. and it depends on which map you are using it.... maybe first inform the players befor you use it, not that much do leave then :)
-
I"ve seen it happen on pipeline too, was awamzing. Some changed back team immediately after that, and some others just left the server ...
I was laughing...but really its sad :/
-
Its a blessing for BCD very happy whit it! Didden`t see no problem tell them befor change .
We had only one crybaby on urban who say don`t change gun. :fool:
-
Would you play on a server that had a mod that would swap you randomly at each round start?
-
Better after 7,12,14 rounds or whatever the server setting is... it is a nice feature to swap automatically from sides yes.
But every round is to much i think.
-
Would you play on a server that had a mod that would swap you randomly at each round start?
No ! that become a scrappy game, we also have the team score where we play for.
And it takes time to build a team to win from the opponents the gamers needs the" we feeling".
A clan on ts has advantage in that, they have already that team feeling.
Its important that players know the teamscore !!! that would help.
And to come back to teamswap you can do it whit a nice filled server and after sertain time not to fast.
In tournament people know that it will happend and in BCD it will happen to but the team will be together for 45 minuts . ( only i do not know if the team score will go to over ?????!!!!!) I think this right now.
A - Eliz do you think its possible to change that to. :idea:
B - And a command in server that you can turn on and off that you can bring score in screen and the end of the time ( not to big) :idea:
-
Would you play on a server that had a mod that would swap you randomly at each round start?
That should exist but as a choice for server admins. Swap sides at the end of a match, swap randomly every round. That would really make for interesting gameplay.
-
That should exist but as a choice for server admins. Swap sides at the end of a match, swap randomly every round. That would really make for interesting gameplay.
Interesting, indeed, but like Vanoke mentionned it's always cool to see a 'teamscore'
-
Would you play on a server that had a mod that would swap you randomly at each round start?
I don't understand what you mean by randomly swapping each round? Just a chance of swapping on any round?
I don't think swapping every round would be such a good idea, but optionally swapping every couple of rounds (potentially chosen by admins) could go a long way.
-
I don't think swapping every round would be such a good idea, but optionally swapping every couple of rounds (potentially chosen by admins) could go a long way.
+1
-
I think the Idea of a halftime would be cool a server admin could still pick how many rounds to do then when the team score matches the half mark it could notify everyone that its half-time and switch everyone teams it would still notify with an admin message swapping to ASSAULT/DEFENCE but have a red (or whatever color) console message that says teams are swapping or halftime switching sides and have it transfer the team score, I did a mutator that switches sides and displays the halftime message (would have to re-compile it and make sure it works), I would write the code for it in an extended version of the AGP_GameTeamObjective file and replace the gametype (with the extended file) in a mutator instead of writing it all in a mutator I just wrote it all in a mutator so anyone could use it as a server mod.
-
Not a bad idea at all.
Still would like admins to have control over this feature ie no swap or assuming rounds set for 16 will auto swap after 8th with warning to players.