![]() |
|
|
#1 |
|
Registered User
Join Date: Sep. 25th, 2004
Posts: 19
|
gametypes and official stats..
hiya all,
well ... a hopefully simple question tho ;-) a gametype should only exists once in u2vote - so for example if i create a new gametype to setup some muts with it on a single vote (created a new gametype with parent gametype teamdeathmatch - placed ig - translocator - gs 1.4 in) the game will show as custom game and not as InstaGib TeamDeathmatch on the official stats tho. Well .. i think if i use the XGame TDM with the same muts loaded it will show up as IG TDM in the stats tho ... so i only can modify the gametype TDM in ut2vote and loose my 'normal' TDM gametype? ... or maybe i simply got something wrong here... |
|
|
|
|
|
#2 |
|
Up to now, Epic only require the correct suffix section of the Classname like .xTeamGame for instance.
GameMake3.3 will now do this for you but there is rumors that Epic are now requiring the full GameClass which will screw custom games altogether
|
|
|
|
|
|
|
#3 |
|
Registered User
Join Date: Aug. 22nd, 2003
Location: London
Posts: 46
|
Please remove the unique gameclass restriction - use an indexing system instead.
Or, better yet, scrap the command line usage altogether and write the settings directly to the appropriate gametype sections in the ini file - which would cover outside switches i think. Then use a seperate section to maintain gametype profiles. When a profile is selected, it updates the appropriate gametype section in the ini file. |
|
|
|
|
|
#4 |
|
I'm afraid you lost me here.
Can you be a bit more specific with some examples if possible. |
|
|
|
|
|
|
#5 |
|
Gameclass
How about something like this.
Swapout the dummy gameclass with the real one. [UT2Vote47.UT2VoteConfigs] VoteAdminPass= ClanAdminPass= GamePassword= DefaultGame=UT2Vote47.GameClass13 DefServerName=Sargon's Invasion RPG ServerMuts= ServerLine= ... ... [UT2Vote47.UT2VoteGameClasses] GameClass1=UT2k4Assault.ASGameInfo GameClass2=XGame.xBombingRun GameClass3=XGame.xCTFGame GameClass4=XGame.xDeathMatch GameClass5=XGame.xDoubleDom GameClass6=XGame.InstagibCTF GameClass7=SkaarjPack.Invasion GameClass8=BonusPack.xLastManStandingGame GameClass9=BonusPack.xMutantGame GameClass10=Onslaught.ONSOnslaughtGame GameClass11=XGame.xTeamGame GameClass12=XGame.xVehicleCTFGame GameClass13=SkaarjPack.Invasion GameClass14=SkaarjPack.Invasion GameClass15=XGame.xDeathMatch GameClass16=XGame.xCTFGame GameClass17= GameClass18= GameClass19= GameClass20= [UT2Vote47.UT2VoteGameTypes] GameType=(GameName="Assault",HideVote=False,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName="Ass ault",UseMapList=True,DefaultMap="AS-Convoy",MapPrefix="AS",GameClass="UT2Vote47.GameClass1",Mutators="... GameType=(GameName="Bombing Run",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="Bombing Run",UseMapList=True,DefaultMap="DM-sHoK-Attic][2k4",MapPrefix="BR",GameClass="UT2Vote47.GameClass2",Mutators="... GameType=(GameName="Capture the Flag",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="CTF",UseMapList=True,Defaul tMap="CTF-Maul",MapPrefix="CTF",GameClass="UT2Vote47.GameClass3",Mutators="... GameType=(GameName="DeathMatch",HideVote=False,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName=" DeathMatch",UseMapList=True,DefaultMap="DM-ODC_Arena",MapPrefix="DM",GameClass="UT2Vote47.GameClass4",Mutators="... GameType=(GameName="Double Domination",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="Double Domination",UseMapList=True,DefaultMap="DOM-Core",MapPrefix="DOM",GameClass="UT2Vote47.GameClass5",Mutators="... GameType=(GameName="InstaGib CTF",HideVote=False,Clan=True,RequiredPlayers=2,MapLimits=0,ServerName="None",UseMapList=False,Defau ltMap="CTF-Chrome",MapPrefix="CTF",GameClass="UT2Vote47.GameClass6",Mutators="... GameType=(GameName="Invasion",HideVote=False,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName="In vasion",UseMapList=True,DefaultMap="DM-ODC_Arena",MapPrefix="DM",GameClass="UT2Vote47.GameClass7",Mutators="... GameType=(GameName="Last Man Standing",HideVote=True,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName="Last Man Standing",UseMapList=True,DefaultMap="DM-ODC_Arena",MapPrefix="DM",GameClass="UT2Vote47.GameClass8",Mutators="... GameType=(GameName="Mutant",HideVote=False,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName="Muta nt",UseMapList=True,DefaultMap="DM-ODC_Arena",MapPrefix="DM",GameClass="UT2Vote47.GameClass9",Mutators="... GameType=(GameName="Onslaught",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="On slaught",UseMapList=True,DefaultMap="ONS-Icarus",MapPrefix="ONS",GameClass="UT2Vote47.GameClass10",Mutators="... GameType=(GameName="Team DeathMatch",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="TDM",UseMapList=True, DefaultMap="DM-ODC_Arena",MapPrefix="DM",GameClass="UT2Vote47.GameClass11",Mutators="... GameType=(GameName="Vehicle CTF",HideVote=True,Clan=True,RequiredPlayers=2,MapLimits=0,ServerName="None",UseMapList=False,Defaul tMap="None",MapPrefix="VCTF",GameClass="UT2Vote47.GameClass12",Mutators="... GameType=(GameName="SSInvasion RPG",HideVote=False,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName="Invasion RPG",UseMapList=True,DefaultMap="DM-ODC_Arena",MapPrefix="DM",GameClass="UT2Vote47.GameClass13",Mutators="... GameType=(GameName="SSInvasion VINV",HideVote=False,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName="Vehicle Invasion",UseMapList=True,DefaultMap="VINV-Torlan",MapPrefix="VINV",GameClass="UT2Vote47.GameClass14",Mutators="... GameType=(GameName="DeathMatch RPG",HideVote=False,Clan=False,RequiredPlayers=1,MapLimits=0,ServerName="RPG DeathMatch",UseMapList=True,DefaultMap="DM-ODC_Arena",MapPrefix="DM",GameClass="UT2Vote47.GameClass15",Mutators="... GameType=(GameName="Capture the Flag RPG",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="RPG CTF",UseMapList=True,DefaultMap="CTF-Maul",MapPrefix="CTF",GameClass="UT2Vote47.GameClass16",Mutators="... |
|
|
|
|
|
|
#6 |
|
As I said many times, the way UT2Vote is designed it is just not possible to do it any other way than the actual GameClassName, thus ruling out any form of Struct, Indexing or whatever.
If UT2Vote never had any Admining section and no ClanSetup then it might be possible but currently it needs the GameClassName in full and the only way around custom games is GameMake. For instance often UT2Vote needs to know what the current game is, incase some Admin forced a switch from WebAdmin, or as a ServerAdmin etc, and the only possible "Real" information that UT2004 returns is the GameClass or the GameName although the GameName is often unrealiable as some mods change the GameName. As an example, say the current game is XGame.xCTFGame and your Structs or Indexing has 10 XGame.xCTFGame - which one must it choose as at this point it does not have a clue because the Admin forced a switch from WebAdmin, so it will take the first XGame.xCTFGame it finds in the list. During the making of version 4.4 we tried every trick in the book to accomplish some form of indexing or structing for the games but it was just a no go area unless we dumped 80% of the Admin stuff and almost all of the ClanSetup stuff. |
|
|
|
|
|
|
#7 |
|
Registered User
Join Date: Aug. 22nd, 2003
Location: London
Posts: 46
|
Lets say we want the following configs:
- team deathmatch - IG, 2v2 - team deathmatch - NW, 4v4 - ctf - IG - 2v2 - ctf - IG - 5v5 - ctf - NW - 5v5 Currently this is not allowed because the 'gameclass' parameter must be unique, therefore I'm proposing that a new parameter called 'ID' should be added which would then become the new unique identifier for gametypes. The gametype definition would look something like this then: Code:
GameType= ( ID=1, GameName="IG-Capture the Flag", HideVote=False, Clan=True, RequiredPlayers=1, MapLimits=0, ServerName="None", UseMapList=False, DefaultMap="CTF-Impasse", MapPrefix="CTF", GameClass="XGame.xCTFGame", Mutators="XGame.MutInstaGib, XGame.MutNoAdrenaline", Commands="?..." ) Code:
[UT2Vote47.GameTypes] DefaultID=4 SelectedID=2 GameType=(ID=1,GameName="IG-Team DeathMatch-2v2",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="None",UseMapList=False,DefaultMap="DM-Gael",MapPrefix="DM",GameClass="XGame.xTeamGame",Mutators="XGame.MutInstaGib,XGame.MutNoAdrenaline",Commands="?MaxLives=0?GoalScore=0?TimeLimit=20?MinPlayers=0?MaxPlayers=4?MaxSpectators=0?Translocator=False?WeaponStay=False?BalanceTeams=False?ForceRespawn=True?PlayersMustBeReady=True?Tournament=0?GamePassword=?GameStats=True?GameSpeed=1.00?FF=1.00?NumBots=0?Difficulty=6") GameType=(ID=2,GameName="NW-Team DeathMatch-5v5",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="None",UseMapList=False,DefaultMap="DM-Gael",MapPrefix="DM",GameClass="XGame.xTeamGame",Mutators="",Commands="?MaxLives=0?GoalScore=0?TimeLimit=20?MinPlayers=0?MaxPlayers=8?MaxSpectators=0?Translocator=False?WeaponStay=True?BalanceTeams=False?ForceRespawn=True?PlayersMustBeReady=True?Tournament=0?GamePassword=?GameStats=True?GameSpeed=1.00?FF=0.00?NumBots=0?Difficulty=6") GameType=(ID=3,GameName="IG-Capture the Flag-2v2",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="None",UseMapList=False,DefaultMap="CTF-Impasse",MapPrefix="CTF",GameClass="XGame.xCTFGame",Mutators="XGame.MutInstaGib,XGame.MutNoAdrenaline",Commands="?MaxLives=0?GoalScore=0?TimeLimit=20?MinPlayers=0?MaxPlayers=4?MaxSpectators=0?Translocator=False?WeaponStay=False?BalanceTeams=False?ForceRespawn=True?PlayersMustBeReady=False?Tournament=0?GamePassword=?GameStats=True?GameSpeed=1.00?FF=0.00?NumBots=0?Difficulty=6") GameType=(ID=4,GameName="IG-Capture the Flag-5v5",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="None",UseMapList=False,DefaultMap="CTF-Impasse",MapPrefix="CTF",GameClass="XGame.xCTFGame",Mutators="XGame.MutInstaGib,XGame.MutNoAdrenaline",Commands="?MaxLives=0?GoalScore=0?TimeLimit=20?MinPlayers=0?MaxPlayers=10?MaxSpectators=2?Translocator=False?WeaponStay=False?BalanceTeams=False?ForceRespawn=True?PlayersMustBeReady=False?Tournament=0?GamePassword=?GameStats=True?GameSpeed=1.00?FF=0.00?NumBots=0?Difficulty=6") GameType=(ID=5,GameName="NW-Capture the Flag-5v5",HideVote=False,Clan=True,RequiredPlayers=1,MapLimits=0,ServerName="None",UseMapList=False,DefaultMap="CTF-Impasse",MapPrefix="CTF",GameClass="XGame.xCTFGame",Mutators="",Commands="?MaxLives=0?GoalScore=0?TimeLimit=15?MinPlayers=0?MaxPlayers=10?MaxSpectators=2?Translocator=True?WeaponStay=True?BalanceTeams=False?ForceRespawn=True?PlayersMustBeReady=True?Tournament=0?GamePassword=?GameStats=True?GameSpeed=1.00?FF=0.00?NumBots=0?Difficulty=6") SelectedID=2 - implies the currently selected gametype. This value gets updated whenever gametypes are changed. This brings us to the issue of gametype switches, which appears to be the main stumbling block [Webadmin doesnt like duplicate gametype entries either it seems]. When the mutator is active, it should modify the 'current_game.htm' page - specifically the gametype dropdown to reflect the game id & name instead of the gametype name e.g. [1]-IG-Team DeathMatch-2v2 [2]-NW-Team DeathMatch-4v4 [3]-IG-Capture the Flag-2v2 [4]-IG-Capture the Flag-5v5 [5]-IG-Capture the Flag-5v5 It should also override the default handler for the 'switch' button and implement its own so that it knows which gametype ID is to be applied. When the mutator is not active, it simply reverts to showing the unique default list of gametypes and using the default switch handler. As for the the game rule settings in the 'Commands=' parameter, these should be applied / written directly to the appropriate gametype sections in the ini file - i.e. bypassing the command line totally. Code:
[XGame.xTeamGame] HUDType=XInterface.HudBTeamDeathMatch MaxLives=0 TimeLimit=20 GoalScore=0 bTeamScoreRound=False bPlayersMustBeReady=False bAllowTaunts=False FriendlyFireScale=0.000000 MaxTeamSize=16 bForceRespawn=True bWeaponStay=true bAllowNonTeamChat=False NetWait=5 bAdjustSkill=False bAllowTrans=False SpawnProtectionTime=0.000000 LateEntryLives=1 LoginMenuClass=GUI2K4.UT2K4PlayerLoginMenu bAllowPrivateChat=False bAllowWeaponThrowing=True ResetTimeDelay=0 [XGame.xCTFGame] HUDType=XInterface.HudBCaptureTheFlag MaxLives=0 TimeLimit=20 GoalScore=0 bTeamScoreRound=False bPlayersMustBeReady=False bAllowTaunts=False FriendlyFireScale=0.000000 MaxTeamSize=16 bForceRespawn=False bWeaponStay=True bAllowNonTeamChat=False NetWait=5 bAdjustSkill=False bAllowTrans=False SpawnProtectionTime=0.000000 LateEntryLives=1 LoginMenuClass=GUI2K4.UT2K4PlayerLoginMenu bAllowPrivateChat=False bAllowWeaponThrowing=True ResetTimeDelay=0 As for the Clan Setup feature - simply store those settings in its own ut2vote section. It would also be very handy to have the Clan Setup features available in webadmin ![]() I hope all the above makes sense - i'm not very good at describing what i'm thinking
|
|
|
|
|
|
#8 |
|
Registered User
Join Date: Aug. 22nd, 2003
Location: London
Posts: 46
|
What do you think ProASM? Is this doable?
|
|
|
|
|
|
#9 |
|
No, check my last post.
Regardless how you structure the games, UT2Vote will not allow more than one game of the same ClassName - period, just the way everything works. If there was a way, I most certainly would implement it as it would solve many problems but to do that I would have to dump most the Admin stuff and the whole of the ClanSetup. Last edited by ProAsm; 23rd Oct 2004 at 03:53 PM. |
|
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|