1.0 working server

This commit is contained in:
Mathew Guest 2019-05-13 03:46:34 -06:00
commit c2346b5b3b
41 changed files with 2202 additions and 0 deletions

14
files/config/Engine.ini Normal file

@ -0,0 +1,14 @@
[Core.System]
Paths=../../../Engine/Content
Paths=%GAMEDIR%Content
Paths=../../../UnrealTournament/Plugins/SampleGameMode/Content
Paths=../../../UnrealTournament/Plugins/ContentOnly/Content
[/Script/UnrealTournament.UTGameEngine]
bFirstRun=False
RconPassword=Hidden
[/Script/OnlineSubsystemUtils.IpNetDriver]
NetServerMaxTickRate=96
LanServerMaxTickRate=96

22
files/config/Game.ini Normal file

@ -0,0 +1,22 @@
[/Script/UnrealTournament.UTLobbyGameMode]
LobbyPassword=
AutoLaunchGameMode=
AutoLaunchGameOptions=
AutoLaunchMap=
MaxPlayersInLobby=75
StartingInstancePort=8001
InstancePortStep=1
MaxInstances=6
[/Script/UnrealTournament.UTBaseGameMode]
ServerInstanceID=Hidden
[/Script/UnrealTournament.UTGameMode]
MapVoteTime=60
bRecordReplays=true
bHandleDedicatedServerReplays=true
[/Script/UnrealTournament.UTGameState]
ServerName=Warehouse Party (Dallas)
ServerMOTD=<UT.Font.NormalText.Medium>Elimination, Instagib, BunnyTrack, and Duel</>\n<UT.Font.NormalText.Small.Bold>Big THANK YOU to all the UT4 content creators!!</>\n<UT.Font.NormalText.Small.Bold>ProWeapons, UT+, Instagib mods, and more!</>\n\nHosted in Dallas, Texas (Provider=Linode.com)\nAdmin: zavage.ut4@gmail.com\n\nConsole Commands:\nmutate hitsounds\nmutate teamskins\nmutate weaponskins\n\nDIY simple, self-hosted UT4 Server @ zavage.net/ut4
ServerDescription=Silky-smooth Unreal Tournament

0
files/maps/.KEEP Normal file

0
files/mutators/.KEEP Normal file

@ -0,0 +1,27 @@
{
"uniqueTag": "BIGCTF",
"categories": [
"Classic"
],
"title": "Big CTF",
"toolTip": "Capture the Flag with large teams.",
"description": "Capture the Flag with large teams.\n\n<UT.Hub.RulesText_Small>TimeLimit : %timelimit% minutes with halftime</>\n<UT.Hub.RulesText_Small>Mercy Rule : On</>\n<UT.Hub.RulesText_Small>Maximum players : %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": ",/Game/RestrictedAssets/Maps/CTF-Face,/Game/RestrictedAssets/Maps/CTF-TitanPass,/Game/RestrictedAssets/Maps/WIP/CTF-Volcano,/Game/RestrictedAssets/Maps/WIP/CTF-BigRock,/Game/RestrictedAssets/Maps/WIP/CTF-Dam",
"defaultMap": "/Game/RestrictedAssets/Maps/CTF-Face",
"customMapList": [],
"maxPlayers": 20,
"maxTeamCount": 2,
"maxTeamSize": 10,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_LargeCTF.GB_LargeCTF'",
"gameMode": "/Script/UnrealTournament.UTCTFGameMode",
"gameOptions": "?TimeLimit=20?GoalScore=0",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "FlagRunVSAI",
"categories": [
"Featured"
],
"title": "Blitz vs AI",
"toolTip": "Co-op vs AI. Attackers must deliver their flag to the enemy base.",
"description": "Blitz Coop vs AI.\n<UT.Hub.RulesText_Small>Maximum players : %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/WIP/FR-Fort,/Game/RestrictedAssets/Maps/WIP/FR-MeltDown,/Game/RestrictedAssets/Maps/WIP/FR-Loh",
"defaultMap": "",
"customMapList": [],
"maxPlayers": 5,
"maxTeamCount": 0,
"maxTeamSize": 0,
"maxPartySize": 0,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_CTF.GB_CTF'",
"gameMode": "/Script/UnrealTournament.UTFlagRunGame",
"gameOptions": "?VSAI=1",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 4,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "CTF",
"categories": [
"Classic"
],
"title": "Capture the Flag",
"toolTip": "Capture the Flag.",
"description": "Capture the Flag, with guns.\n\n<UT.Hub.RulesText_Small>TimeLimit : %timelimit% minutes with halftime</>\n<UT.Hub.RulesText_Small>Mercy Rule : On</>\n<UT.Hub.RulesText_Small>Maximum players : %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/CTF-TitanPass,/Game/RestrictedAssets/Maps/CTF-Face,/Game/EpicInternal/Pistola/CTF-Pistola,/Game/EpicInternal/Polaris/CTF-Polaris,/Game/RestrictedAssets/Maps/WIP/CTF-Blank,/Game/RestrictedAssets/Maps/WIP/CTF-Quick,/Game/RestrictedAssets/Maps/WIP/CTF-Plaza,/Game/RestrictedAssets/Maps/WIP/CTF-BigRock,/Game/RestrictedAssets/Maps/WIP/CTF-Volcano",
"defaultMap": "/Game/RestrictedAssets/Maps/CTF-TitanPass",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_CTF.GB_CTF'",
"gameMode": "/Script/UnrealTournament.UTCTFGameMode",
"gameOptions": "?TimeLimit=20?GoalScore=0",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "CompCTF",
"categories": [
"Competitive"
],
"title": "Competitive CTF",
"toolTip": "Capture the Flag with competition rules.",
"description": "Capture the Flag, with guns.\n\n<UT.Hub.RulesText_Small>TimeLimit : %timelimit% minutes with halftime</>\n<UT.Hub.RulesText_Small>Mercy Rule : Off</>\n<UT.Hub.RulesText_Small>Maximum players : %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/CTF-TitanPass,/Game/RestrictedAssets/Maps/CTF-Face,/Game/EpicInternal/Pistola/CTF-Pistola,/Game/EpicInternal/Polaris/CTF-Polaris,/Game/RestrictedAssets/Maps/WIP/CTF-Blank,/Game/RestrictedAssets/Maps/WIP/CTF-Quick,/Game/RestrictedAssets/Maps/WIP/CTF-Plaza,/Game/RestrictedAssets/Maps/WIP/CTF-BigRock,/Game/RestrictedAssets/Maps/WIP/CTF-Volcano",
"defaultMap": "/Game/RestrictedAssets/Maps/CTF-TitanPass",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_CTF.GB_CTF'",
"gameMode": "/Script/UnrealTournament.UTCTFGameMode",
"gameOptions": "?TimeLimit=20?GoalScore=0?MercyScore=0",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": true,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "DEATHMATCH",
"categories": [
"Featured"
],
"title": "Deathmatch",
"toolTip": "Standard free-for-all Deathmatch.",
"description": "Standard free-for-all deathmatch.\n\n<UT.Hub.RulesText_Small>TimeLimit : %TimeLimit% minutes</>\n<UT.Hub.RulesText_Small>Maximum players : %MaxPlayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Outpost23,/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/DM-Underland,/Game/EpicInternal/Lea/DM-Lea,/Game/EpicInternal/Unsaved/DM-Unsaved,/Game/EpicInternal/Backspace/DM-Backspace,/Game/EpicInternal/Salt/DM-Salt,/Game/EpicInternal/Batrankus/DM-Batrankus,/Game/RestrictedAssets/Maps/DM-BioTower,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Focus,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 6,
"maxTeamCount": -1,
"maxTeamSize": -1,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_DM.GB_DM'",
"gameMode": "/Script/UnrealTournament.UTDMGameMode",
"gameOptions": "?TimeLimit=10?GoalScore=0",
"requiredPackages": [],
"bTeamGame": false,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "DUEL",
"categories": [
"Competitive"
],
"title": "Duel",
"toolTip": "One vs one test of deathmatch skill.",
"description": "One vs one test of deathmatch skill.\n\n<UT.Hub.RulesText_Small>TimeLimit : %timelimit% minutes</>\n<UT.Hub.RulesText_Small>Maximum players: %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/WIP/DM-ASDF,/Game/RestrictedAssets/Maps/DM-Underland,/Game/EpicInternal/Lea/DM-Lea,/Game/EpicInternal/Unsaved/DM-Unsaved,/Game/EpicInternal/Backspace/DM-Backspace,/Game/EpicInternal/Salt/DM-Salt,/Game/EpicInternal/Batrankus/DM-Batrankus,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest",
"defaultMap": "/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"customMapList": [],
"maxPlayers": 2,
"maxTeamCount": 2,
"maxTeamSize": 1,
"maxPartySize": 1,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_Duel.GB_Duel'",
"gameMode": "/Script/UnrealTournament.UTDuelGame",
"gameOptions": "?TimeLimit=10?GoalScore=0",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": true,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "FlagRun",
"categories": [
"Featured"
],
"title": "Blitz",
"toolTip": "Attackers must deliver their flag to the enemy base.",
"description": "Blitz.\n<UT.Hub.RulesText_Small>Maximum players : %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/WIP/FR-Fort,/Game/RestrictedAssets/Maps/WIP/FR-MeltDown,/Game/RestrictedAssets/Maps/WIP/FR-Loh",
"defaultMap": "",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 0,
"maxTeamSize": 0,
"maxPartySize": 0,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_CTF.GB_CTF'",
"gameMode": "/Script/UnrealTournament.UTFlagRunGame",
"gameOptions": "",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "iCTF",
"categories": [
"Instagib"
],
"title": "Instagib CTF",
"toolTip": "Instagib CTF",
"description": "Capture the Flag with Instagib rifles.\n\n<UT.Hub.RulesText_Small>Mutators : Instagib</>\n<UT.Hub.RulesText_Small>TimeLimit : %timelimit% minutes with halftime</>\n<UT.Hub.RulesText_Small>Mercy Rule : On</>\n<UT.Hub.RulesText_Small>Maximum players : %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/CTF-TitanPass,/Game/RestrictedAssets/Maps/CTF-Face,/Game/EpicInternal/Pistola/CTF-Pistola,/Game/EpicInternal/Polaris/CTF-Polaris,/Game/RestrictedAssets/Maps/WIP/CTF-Blank,/Game/RestrictedAssets/Maps/WIP/CTF-BigRock,/Game/RestrictedAssets/Maps/WIP/CTF-Volcano,/Game/RestrictedAssets/Maps/WIP/CTF-Quick,/Game/RestrictedAssets/Maps/WIP/CTF-Plaza",
"defaultMap": "/Game/RestrictedAssets/Maps/CTF-TitanPass",
"customMapList": [],
"maxPlayers": 20,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_InstagibCTF.GB_InstagibCTF'",
"gameMode": "/Script/UnrealTournament.UTCTFGameMode",
"gameOptions": "?TimeLimit=20?GoalScore=0?Mutator=Instagib",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "TEAMSHOWDOWN",
"categories": [
"Competitive"
],
"title": "Showdown",
"toolTip": "Red versus blue team showdown.",
"description": "Red versus blue team showdown.\n\n<UT.Hub.RulesText_Small>TimeLimit : %timelimit% minute rounds</>\n<UT.Hub.RulesText_Small>Scoring : First to %goalscore% wins</>\n<UT.Hub.RulesText_Small>Maximum players: %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/DM-Underland,/Game/EpicInternal/Unsaved/DM-Unsaved,/Game/EpicInternal/Backspace/DM-Backspace,/Game/EpicInternal/Salt/DM-Salt,/Game/EpicInternal/Batrankus/DM-Batrankus,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-Focus,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF,/Game/RestrictedAssets/Maps/WIP/DM-Solo",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 6,
"maxTeamCount": 2,
"maxTeamSize": 3,
"maxPartySize": 3,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Script/UnrealTournament.UTTeamShowdownGame",
"gameOptions": "?TimeLimit=2?GoalScore=5",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "Siege",
"categories": [
"MyCustom"
],
"title": "Siege",
"toolTip": "Prototype PVE mode. Defend your base against hordes of incoming enemies trying to deliver their flag.",
"description": "PROTOTYPE PVE mode. Defend your base against hordes of incoming enemies trying to deliver their flag..\n<UT.Hub.RulesText_Small>Maximum players : %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/WIP/FR-Fort,/Game/RestrictedAssets/Maps/WIP/FR-MeltDown,/Game/RestrictedAssets/Maps/WIP/FR-Loh",
"defaultMap": "",
"customMapList": [],
"maxPlayers": 5,
"maxTeamCount": 0,
"maxTeamSize": 0,
"maxPartySize": 0,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_CTF.GB_CTF'",
"gameMode": "/Script/UnrealTournament.UTFlagRunPvEGame",
"gameOptions": "",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 5,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,27 @@
{
"uniqueTag": "TDM",
"categories": [
"Classic"
],
"title": "Team Deathmatch",
"toolTip": "Red versus blue team deathmatch.",
"description": "Red versus blue team deathmatch.\n\n<UT.Hub.RulesText_Small>TimeLimit : %timelimit% minutes</>\n<UT.Hub.RulesText_Small>Maximum players: %maxplayers%</>",
"mapPrefixes": [],
"maxMapsInList": 16,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Outpost23,/Game/RestrictedAssets/Maps/DM-Underland,/Game/RestrictedAssets/Maps/DM-Chill,/Game/EpicInternal/Unsaved/DM-Unsaved,/Game/EpicInternal/Backspace/DM-Backspace,/Game/EpicInternal/Salt/DM-Salt,/Game/EpicInternal/Batrankus/DM-Batrankus,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-Focus,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Script/UnrealTournament.UTTeamDMGameMode",
"gameOptions": "?TimeLimit=20?GoalScore=0",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": true,
"epicForceUIVisibility": 0
},

@ -0,0 +1,63 @@
{
"uniqueTag" : "Elim10",
"categories" : [
"Elim"
],
"title" : "Elim 5v5 noGL",
"toolTip" : "ProMode, GL replaced by Bio",
"description": "Absolute Elimination, with grenade launchers DISABLED (DEFAULT)\n\n<UT.Hub.RulesText_Small>Mutators: </><UT.Hub.RulesText_Small>ProMode, TeamSkins, WeaponSkins, HitSounds, Kickvoting</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=10, FriendlyFire=OFF</>\n<UT.Hub.RulesText_Small>Grenade Launcher: OFF</>",
"mapPrefixes" : [],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"customMapList" : [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Hack01",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/Cr4zy/DM-Edge_03",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Goose-b1",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Over",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
],
"maxPlayers" : 10,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Game/ALTS/Elimination_113.Elimination_113_C",
"gameOptions": "?MaxPlayers=10?TimeLimit=99?GoalScore=10?ignoreidle=1?Difficulty=8?botfill=2?WTR=/Game/ProMode/Weapons/Pro_GrenadeLauncher.Pro_GrenadeLauncher_C:None?mutator=ProMode,MutTeamskins,MutHitsounds,WeaponReplacement,WeaponSkins,Global_StatSQL-v2,MutKickVoting?",
"requiredPackages" : [
"/Game/ALTS/Elimination_113.Elimination_113_C-WindowsNoEditor",
"MutHitsounds",
"ProMode",
"ProMovement",
"ProWeapons",
"MutKickVoting",
"WeaponSkins",
"MutTeamskins"
],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,60 @@
{
"uniqueTag" : "Elim10ProOFF",
"categories" : [
"Elim"
],
"title" : "Elim 5v5 Vanilla",
"toolTip" : "Absolute Elimination w/ unmodified guns and movement",
"description": "Absolute Elimination, slow weapon switch\n\n<UT.Hub.RulesText_Small>Mutators: TeamSkins, WeaponSkins, HitSounds, Kickvoting</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=10, FriendlyFire=OFF</>\n<UT.Hub.RulesText_Small>Grenade Launcher: ON</>",
"mapPrefixes" : [],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"customMapList" : [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Hack01",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/Cr4zy/DM-Edge_03",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Goose-b1",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Over",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A"
],
"maxPlayers" : 10,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode" : "/Game/ALTS/Elimination_113.Elimination_113_C",
"gameOptions" : "?MaxPlayers=10?TimeLimit=99?GoalScore=10?BalanceTeams=true?ignoreidle=1?Difficulty=8?botfill=2?mutator=MutTeamskins,MutHitsounds,WeaponSkins,MutKickVoting?ForceNoBots=1?WTR=/Game/RestrictedAssets/Weapons/GrenadeLauncher/BP_GrenadeLauncher.BP_GrenadeLauncher_C:/Game/RestrictedAssets/Weapons/BioRifle/BP_BioRifle.BP_BioRifle_C",
"requiredPackages" : [
"/Game/ALTS/Elimination_113.Elimination_113_C-WindowsNoEditor",
"MutHitsounds",
"MutKickVoting",
"WeaponSkins",
"MutTeamskins"
],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,62 @@
{
"uniqueTag" : "Elim10UTP",
"categories" : [
"Elim"
],
"title" : "Elim 5v5 UT+",
"toolTip" : "Absolute Elimination w/ UTPlus and GL replaced by Bio",
"description": "Absolute Elimination, UT+ and disabled GL\n\n<UT.Hub.RulesText_Small>Mutators: </><UT.Hub.RulesText_Small>UT+, TeamSkins, WeaponSkins, HitSounds, Kickvoting</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=10, FriendlyFire=OFF</>\n<UT.Hub.RulesText_Small>Grenade Launcher: OFF</>",
"mapPrefixes" : [],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"customMapList" : [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Hack01",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/Cr4zy/DM-Edge_03",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Goose-b1",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Over",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A"
],
"maxPlayers" : 10,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Game/ALTS/Elimination_113.Elimination_113_C",
"gameOptions": "?MaxPlayers=10?TimeLimit=99?GoalScore=10?ignoreidle=1?Difficulty=8?botfill=2?WTR=/Game/UT+/UTPlus/UT+GrenadeLauncher.UT+GrenadeLauncher_C:None?mutator=UTPlus,UTPlusMovement,MutHitsounds,MutTeamskins,WeaponReplacement,WeaponSkins,Global_StatSQL-v2,MutKickVoting",
"requiredPackages" : [
"/Game/ALTS/Elimination_113.Elimination_113_C-WindowsNoEditor",
"UTPlus",
"UTPlusMovement",
"MutHitsounds",
"MutKickVoting",
"WeaponSkins",
"MutTeamskins"
],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,62 @@
{
"uniqueTag" : "Elim10rFF",
"categories" : [
"Elim"
],
"title" : "Elim 5v5 rFF",
"toolTip" : "Absolute Elimination, with Reverse-Friendly Fire",
"description": "Absolute Elimination, with Reverse Friendly-Fire\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds, Kickvoting, Reverse-FriendlyFire</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=10, FriendlyFire=ON</>\n<UT.Hub.RulesText_Small>Grenade Launcher: OFF</>",
"mapPrefixes" : [],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"customMapList" : [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Hack01",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/Cr4zy/DM-Edge_03",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Goose-b1",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Over",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A"
],
"maxPlayers" : 10,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Game/ALTS/Elimination_113.Elimination_113_C",
"gameOptions": "?MaxPlayers=10?TimeLimit=99?GoalScore=10?ignoreidle=1?botfill=2?Difficulty=8?WTR=/Game/ProMode/Weapons/Pro_GrenadeLauncher.Pro_GrenadeLauncher_C:None?mutator=UTPlus,UTPlusMovement,MutTeamskins,ReverseFF,MutHitsounds,WeaponReplacement,WeaponSkins,Global_StatSQL-v2,MutKickVoting",
"requiredPackages" : [
"/Game/ALTS/Elimination_113.Elimination_113_C-WindowsNoEditor",
"MutTeamskins",
"MutHitsounds",
"ReverseFF",
"WeaponSkins",
"UTPlus",
"UTPlusMovement"
],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,62 @@
{
"uniqueTag" : "Elim10NoGL",
"categories" : [
"Elim"
],
"title" : "Elim 5v5 GL",
"toolTip" : "Absolute Elimination, ProMode w/ GL",
"description": "Absolute Elimination, with grenade launchers ENABLED\n\n<UT.Hub.RulesText_Small>Mutators: ProMode, TeamSkins, WeaponSkins, HitSounds, Kickvoting</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=10, FriendlyFire=OFF</>\n<UT.Hub.RulesText_Small>Grenade Launcher: ON</>",
"mapPrefixes" : [],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [],
"maxPlayers": 10,
"maxTeamCount": 2,
"customMapList" : [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Hack01",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/Cr4zy/DM-Edge_03",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Goose-b1",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Over",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A"
],
"maxPlayers" : 10,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode" : "/Game/ALTS/Elimination_113.Elimination_113_C",
"gameOptions" : "?MaxPlayers=10?TimeLimit=99?GoalScore=10?botfill=2?Difficulty=8?BalanceTeams=true?ignoreidle=1?mutator=MutHitsounds,ProMode,MutKickVoting,WeaponSkins,MutTeamskins",
"requiredPackages" : [
"/Game/ALTS/Elimination_113.Elimination_113_C-WindowsNoEditor",
"MutHitsounds",
"ProMovement",
"ProWeapons",
"MutKickVoting",
"WeaponSkins",
"MutTeamskins"
],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,75 @@
{
"uniqueTag": "myiCTF",
"categories": [
"Gib"
],
"title": "Instagib CTF",
"toolTip": "Instagib CTF",
"description": "One-click kills, Capture the Flag\n\n<UT.Hub.RulesText_Small>Mutators: Instagib, TeamSkins, HitSounds</>\n<UT.Hub.RulesText_Small>Options: Translocator=OFF</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/WIP/CTF-Blank,/Game/RestrictedAssets/Maps/WIP/CTF-Quick,/Game/RestrictedAssets/Maps/WIP/CTF-Plaza",
"defaultMap": "/Game/Maps/CTF-w00tabulousFixed-UT99/CTF-W00t-R3M2",
"customMapList": [
"/Game/CTF-Joust/CTF-Joust-v18",
"/Game/Deaod/CTF-FP-Anfractous2-PRO",
"/Game/Laambo/Maps/CTF-AW-CastleCourtYard-v7",
"/Game/Laambo/Maps/CTFMaps/CTF-AW-IDKyetMap-v6",
"/Game/Laambo/Maps/CTFMaps/CTF-AW-StonedFace-v1",
"/Game/Laambo/Maps/CTFMaps/CTF-AW-WTFisThis-v2",
"/Game/Laambo/Maps/TestMaps/CTF-AW-MeshingAround2-v4",
"/Game/Laambo/Maps/thePit/CTF-AW-thePit-v9",
"/Game/Maps/CTF-Dynex/CTF-Dynex-WIP6c",
"/Game/Maps/CTF-Dynex/CTF-Dynex-vb",
"/Game/Maps/CTF-w00tabulousFixed-UT99/CTF-W00t-R3M2",
"/Game/Maps/iCTF-SprintaLE14-UT99/CTF-Sprinta-R3M2",
"/Game/RestrictedAssets/Maps/CTF-Command-R3M2",
"/Game/RestrictedAssets/Maps/CTF-Klondike-R3M2",
"/Game/RestrictedAssets/Maps/Test/CTF-PryXon-by-WK-G",
"/Game/RestrictedAssets/Maps/Test/CTF-Revenge-v2-UT99-by-WK",
"/Game/RestrictedAssets/Maps/WIP/CTF-1on1-Hourglass/CTF-1on1-Hourglass",
"/Game/RestrictedAssets/Maps/WIP/CTF-Access-R3",
"/Game/RestrictedAssets/Maps/WIP/CTF-Acrony-R3M/CTF-Acrony-R3M",
"/Game/RestrictedAssets/Maps/WIP/CTF-Anfractuous2-UT2004/CTF-Anfractuous-v3",
"/Game/RestrictedAssets/Maps/WIP/CTF-Bleak-CE100-UT99/CTF-Bleak-v4",
"/Game/RestrictedAssets/Maps/WIP/CTF-BleakLE14-UT99/CTF-Bleak-R3M2",
"/Game/RestrictedAssets/Maps/WIP/CTF-BrokenLimitsCB6-UT99/CTF-BrokenLimits-R3M2",
"/Game/RestrictedAssets/Maps/WIP/CTF-CheckMate-R2",
"/Game/RestrictedAssets/Maps/WIP/CTF-Dam",
"/Game/RestrictedAssets/Maps/WIP/CTF-Drunklet-PRO2-UT2004/CTF-Drunklet-PRO2",
"/Game/RestrictedAssets/Maps/WIP/CTF-Fragtion",
"/Game/RestrictedAssets/Maps/WIP/CTF-Fragtion-R9",
"/Game/RestrictedAssets/Maps/WIP/CTF-GrudgeLE14-UT99/CTF-Grudge-R3M",
"/Game/RestrictedAssets/Maps/WIP/CTF-Lavafury",
"/Game/RestrictedAssets/Maps/WIP/CTF-OverFlow/CTF-OverFlow-R3M6",
"/Game/RestrictedAssets/Maps/WIP/CTF-Rankin-PRO-UT2004/CTF-Rankin-PRO2",
"/Game/RestrictedAssets/Maps/WIP/CTF-Switchback-PRO",
"/Game/RestrictedAssets/Maps/WIP/CTF-Switchback-v2",
"/Game/RestrictedAssets/Maps/WIP/CTF-Turbo-UT3/CTF-Turbo-v3",
"/Game/RestrictedAssets/Maps/WIP/CTF-UCMP4-Talya-UT2004/CTF-Talya-v6",
"/Game/RestrictedAssets/Maps/WIP/CTF-Ultra-UT3/CTF-Ultra-v1",
"/Game/RestrictedAssets/Maps/WIP/CTF-Zest-R5",
"/Game/RestrictedAssets/Maps/WIP/iCTF-Duku-R3M-v1/CTF-Duku-R3M4",
"/Game/RestrictedAssets/Maps/WIP/iCTF-MesmerizeLE14-UT99/CTF-Mesmerize-R3M",
"/Game/Supsun/CTF-FD",
"/Game/UT99/Maps/CTF-Denise",
"/Game/UT99/Maps/CTF-RGI-EliteArenaV2",
"/Game/UT99/Maps/CTF-RGI-Romra",
"/Game/UT99/Maps/CTF-RGI-ThornsV2",
"/Game/UTzoneContent/Maps/Donzi/CTF-Bloxeh",
"/Game/UnrealPUGs/UnrealPUGs/Maps/CTF-LiandriDocks-UPUGs"
],
"maxPlayers": 20,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Game/Instagib/iCTF_GameMode_OT.iCTF_GameMode_OT_C",
"gameOptions": "?TimeLimit=15?GoalScore=0?botfill=2?ignoreidle=1?Mutator=MutTeamskins,MutHitsounds",
"requiredPackages": [],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,71 @@
{
"uniqueTag": "xTDM Instagib",
"categories": [
"Gib"
],
"title": "Instagib xTDM",
"toolTip": "Instagib 4x Team Deathmatch",
"description": "Four-Team Instagib Deathmatch (xTDM)\n\n<UT.Hub.RulesText_Small>Mutators: Instagib, ProMovement, TeamSkins</>\n<UT.Hub.RulesText_Small>Options: Translocator=OFF</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Outpost23,/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/DM-Underland,/Game/EpicInternal/Lea/DM-Lea,/Game/EpicInternal/Backspace/DM-Backspace,/Game/EpicInternal/Salt/DM-Salt,/Game/RestrictedAssets/Maps/DM-BioTower,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Focus,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Campgrounds-PRO-UNG",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Laambo/Maps/CampThunder/DM-AW-CampThunderArena-v16",
"/Game/Laambo/Maps/DM-AW-CraterLakeArena-v7",
"/Game/Laambo/Maps/DM-AW-IDKyet-v14",
"/Game/Laambo/Maps/FightArena/DM-AW-FightArena-v14",
"/Game/Laambo/Maps/HayRide/DM-AW-HayRideNights-v12",
"/Game/Laambo/Maps/HolyShit/DM-AW-HolyShit-v3",
"/Game/Laambo/Maps/KnockOut/DM-AW-SkyArenaTest-v1",
"/Game/Laambo/Maps/ToonCastle/DM-AW-ToonCastleArena-v11",
"/Game/Laambo/Maps/UnrealBall/DM-AW-ClanArena-v7",
"/Game/Laambo/Maps/ZarkMaps/DM-AW-GiantTreeTest-v8",
"/Game/Laambo/Maps/ZarkMaps/DM-AW-RockScapeTestMap-v4",
"/Game/Laambo/Maps/thePit/DM-AW-thePit-v6",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Erase/DM-EraseV2_a03",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-DE-Grendelkeep-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-Goose-b1",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/halfblocked/halloweenarena/DM-AW-HalloweenArena-Redux12",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9",
],
"maxPlayers": 16,
"maxTeamCount": -1,
"maxTeamSize": -1,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Game/xTDM/v014/xTDM_v014_GameMode.xTDM_v014_GameMode_C",
"gameOptions": "?TimeLimit=10?GoalScore=100?ignoreidle=1?Mutator=Instagib,ProMovement,MutTeamskins",
"requiredPackages": [],
"bTeamGame": false,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,52 @@
{
"uniqueTag" : "Bunnytrack-All",
"categories" : [
"BunnyTrack"
],
"title" : "BunnyTrack (All)",
"toolTip" : "Competitive BT - complete maplist",
"description" : "Competitive BunnyTrack\n\n<UT.Hub.RulesText_Small>*Under Construction*</>\n\n<UT.Hub.RulesText_Small>Note: Times don't save in the upstream server (yet?)</>",
"mapPrefixes" : [ ],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"customMapList" : [
"/Game/BT-Planets_V3",
"/Game/BT-Rumble_V4",
"/Game/BT/BT-HOPLite",
"/Game/BT/BT-HOPfinal",
"/Game/BTmap/BT-Oneshot",
"/Game/Maps/BT-2019/BT-Happy2019_v2",
"/Game/Maps/BT-2P-DualRun/BT-2P-DualRun",
"/Game/Maps/BT-Airrace/BT-AirRace_V5",
"/Game/Maps/BT-ChatoKeK/BT-ChatoKeK",
"/Game/Maps/BT-CouilleNoire/BT-CN",
"/Game/Maps/BT-Crack/BT-Crack_v1",
"/Game/Maps/BT-GBR/BT-GBR_V2",
"/Game/Maps/BT-Indus/BT-Indus_v6",
"/Game/Maps/BT-Joust/BT-Joust_v2",
"/Game/Maps/BT-LTTT/BT-LTTT",
"/Game/Maps/BT-LavaKEK/BT-LavaKEK_v1",
"/Game/Maps/BT-RadicalTrials1_v5",
"/Game/Maps/BT-RadicalTrials2_v4",
"/Game/Maps/BT-Radioactive/BT-Radioactive_v1",
"/Game/Maps/BT-Scoobmap/BT-ScoobTest-V3",
"/Game/Maps/BT-StarLab/BT-StarLab_v1",
"/Game/Maps/BT-Swampruins/BT-SwampRuins_v2",
"/Game/Maps/BT-TUTORIAL/BT-Welcome_v5",
"/Game/Maps/BT-youarelol/BT-youarelol_v2",
"/Game/MyContent/Maps/BT-TheEscape",
"/Game/My_Projects/BT_Maps/BT-Roaster/BT-Roaster",
"/Game/My_Projects/Maps/BT/BT_Osiris/BT-Osiris",
"/Game/RestrictedAssets/Maps/BT-Ancient_Halls",
"/Game/_Ransom/Maps/BT-Plinko/BT-Plinko",
],
"maxPlayers" : 16,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_InstagibCTF.GB_InstagibCTF'",
"gameMode" : "/Game/BT/Gamemode/BT_Game.BT_Game_C",
"gameOptions" : "?ForceNoBots=1?ignoreidle?BalanceTeams=0?MustBeReady=0?ignoreidle=1?MapVoteTime=300?TimeLimit=0?GoalScore=1",
"requiredPackages" : [ ],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,30 @@
{
"uniqueTag" : "Bunnytrack-Easy",
"categories" : [
"BunnyTrack"
],
"title" : "BunnyTrack (I)",
"toolTip" : "Competitive BT - easier maplist",
"description" : "Competitive BunnyTrack\n\n<UT.Hub.RulesText_Small>*Under Construction*</>\n\n<UT.Hub.RulesText_Small>Note: Difficulty categorization is unofficial and only affects the map rotation.</>\n<UT.Hub.RulesText_Small>Note: Times don't save in the upstream server (yet?)</>",
"mapPrefixes" : [ ],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"customMapList" : [
"/Game/Maps/BT-2P-DualRun/BT-2P-DualRun",
"/Game/Maps/BT-Airrace/BT-AirRace_V5",
"/Game/Maps/BT-GBR/BT-GBR_V2",
"/Game/Maps/BT-Radioactive/BT-Radioactive_v1",
"/Game/Maps/BT-StarLab/BT-StarLab_v1",
"/Game/Maps/BT-Swampruins/BT-SwampRuins_v2",
"/Game/Maps/BT-TUTORIAL/BT-Welcome_v5",
"/Game/MyContent/Maps/BT-TheEscape",
],
"maxPlayers" : 16,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_InstagibCTF.GB_InstagibCTF'",
"gameMode" : "/Game/BT/Gamemode/BT_Game.BT_Game_C",
"gameOptions" : "?ForceNoBots=1?ignoreidle?BalanceTeams=0?MustBeReady=0?ignoreidle=1?MapVoteTime=300?TimeLimit=0?GoalScore=1",
"requiredPackages" : [ ],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,27 @@
{
"uniqueTag" : "Bunnytrack-Medium",
"categories" : [
"BunnyTrack"
],
"title" : "BunnyTrack (II)",
"toolTip" : "Competitive BT - mediumer maplist",
"description" : "Competitive BunnyTrack\n\n<UT.Hub.RulesText_Small>*Under Construction*</>\n\n<UT.Hub.RulesText_Small>Note: Difficulty categorization is unofficial and only affects the map rotation.</>\n<UT.Hub.RulesText_Small>Note: Times don't save in the upstream server (yet?)</>",
"mapPrefixes" : [ ],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"customMapList" : [
"/Game/BT-Rumble_V4",
"/Game/Maps/BT-LavaKEK/BT-LavaKEK_v1",
"/Game/Maps/BT-RadicalTrials1_v5",
"/Game/Maps/BT-RadicalTrials2_v4",
"/Game/MyContent/Maps/BT-TheEscape",
],
"maxPlayers" : 16,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_InstagibCTF.GB_InstagibCTF'",
"gameMode" : "/Game/BT/Gamemode/BT_Game.BT_Game_C",
"gameOptions" : "?ForceNoBots=1?BalanceTeams=0?MustBeReady=0?ignoreidle=1?MapVoteTime=300?TimeLimit=0?GoalScore=1",
"requiredPackages" : [ ],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,25 @@
{
"uniqueTag" : "Bunnytrack-Hard",
"categories" : [
"BunnyTrack"
],
"title" : "BunnyTrack (III)",
"toolTip" : "Competitive BT - hardish maplist",
"description" : "Competitive BunnyTrack\n\n<UT.Hub.RulesText_Small>*Under Construction*</>\n\n<UT.Hub.RulesText_Small>Note: Difficulty categorization is unofficial and only affects the map rotation.</>\n<UT.Hub.RulesText_Small>Note: Times don't save in the upstream server (yet?)</>",
"mapPrefixes" : [ ],
"maxMapsInList" : 0,
"quickPlayMaps" : [ ],
"customMapList" : [
"/Game/Maps/BT-Crack/BT-Crack_v1",
"/Game/Maps/BT-RadicalTrials1_v5",
"/Game/Maps/BT-RadicalTrials2_v4",
],
"maxPlayers" : 16,
"displayTexture" : "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_InstagibCTF.GB_InstagibCTF'",
"gameMode" : "/Game/BT/Gamemode/BT_Game.BT_Game_C",
"gameOptions" : "?ForceNoBots=1?BalanceTeams=0?MustBeReady=0?ignoreidle=1?MapVoteTime=300?TimeLimit=0?GoalScore=1",
"requiredPackages" : [ ],
"bTeamGame" : false,
"bCompetitiveMatch" : false,
"bHideFromUI" : false
},

@ -0,0 +1,51 @@
{
"uniqueTag": "UTPlusDUELBeginner",
"categories": [
"Duel"
],
"title": "Duel (Beginners)",
"toolTip": "Ultimate 1v1 test of deathmatch skill",
"description": "1v1 Duel with shield timers\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds, CustomHUD</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=2, TimeLimit=10, WeaponStay=OFF, Amp=OFF, PickupTimers=ON</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/WIP/DM-ASDF,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest",
"defaultMap": "/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Coma/Maps/DM-Coma_A015",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-Deep-03g",
"/Game/Maps/DM-Erase/DM-EraseV2_a03",
"/Game/Maps/DM-Fervor/DM-Fervor_V8",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/WIP/DM-BoneCrusher_MC2",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9",
"/Game/Maps/DM-Ironic-UT2004"
],
"maxPlayers": 2,
"maxTeamCount": 2,
"maxTeamSize": 1,
"maxPartySize": 1,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_Duel.GB_Duel'",
"gameMode" : "/Script/UnrealTournament.UTDuelGame",
"gameOptions" : "?MaxPlayers=2?TimeLimit=10?ignoreidle=1?GoalScore=0?ForceNoBots=1?ForceRespawn=1?mutator=UTPlus,UTPlusMovement,MutHitsounds,MutTeamskins,WeaponSkins,CustomHUD,WeaponReplacement?WTR=/Game/UT+/UTPlus/UT+GrenadeLauncher.UT+GrenadeLauncher_C:/Game/UT+/UTPlus/UT+BioRifle.UT+BioRifle_C?",
"requiredPackages" : [
"CustomHUD",
"MutHitSounds",
"MutTeamSkins",
"WeaponSkins",
"UTPlus",
"UTPlusMovement"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,52 @@
{
"uniqueTag": "MYDUELnogl",
"categories": [
"Duel"
],
"title": "ProMode Duel noGL",
"toolTip": "Ultimate 1v1 test of deathmatch skill",
"description": "1v1 Duel (with ProMode Movement and Weapon Stats)\n\n<UT.Hub.RulesText_Small>Mutators: ProMode, TeamSkins, WeaponSkins, HitSounds, CustomHUD</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=2, TimeLimit=10, WeaponStay=OFF, Amp=OFF*, PickupTimers=OFF</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/WIP/DM-ASDF,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest",
"defaultMap": "/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Coma/Maps/DM-Coma_A015",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-Deep-03g",
"/Game/Maps/DM-Erase/DM-EraseV2_a03",
"/Game/Maps/DM-Fervor/DM-Fervor_V8",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/WIP/DM-BoneCrusher_MC2",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9",
"/Game/Maps/DM-Ironic-UT2004"
],
"maxPlayers": 2,
"maxTeamCount": 2,
"maxTeamSize": 1,
"maxPartySize": 1,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_Duel.GB_Duel'",
"gameMode" : "/Script/UnrealTournament.UTDuelGame",
"gameOptions" : "?MaxPlayers=2?TimeLimit=10?ignoreidle=1?GoalScore=0?ForceNoBots=1?ForceRespawn=1?WTR=/Game/ProMode/Weapons/Pro_GrenadeLauncher.Pro_GrenadeLauncher_C:/Game/Proctf/Weapons/Proctf/Weapons/bp2_Orig_BioRifle.bp2_Orig_BioRifle_C?mutator=ProMode,MutHitsounds,MutTeamSkins,WeaponSkins,CustomHUD,NoPickupTimerMutator,WeaponReplacement",
"requiredPackages" : [
"CustomHUD",
"MutHitSounds",
"MutTeamSkins",
"ProMovement",
"ProWeapons",
"WeaponSkins",
"NoPickupTimerMutator"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,52 @@
{
"uniqueTag": "MYDUEL",
"categories": [
"Duel"
],
"title": "ProMode Duel",
"toolTip": "Ultimate 1v1 test of deathmatch skill",
"description": "1v1 Duel (with ProMode Movement and Weapon Stats)\n\n<UT.Hub.RulesText_Small>Mutators: ProMode, TeamSkins, WeaponSkins, HitSounds, CustomHUD</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=2, TimeLimit=10, WeaponStay=OFF, Amp=OFF*, PickupTimers=OFF</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/WIP/DM-ASDF,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest",
"defaultMap": "/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Coma/Maps/DM-Coma_A015",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-Deep-03g",
"/Game/Maps/DM-Erase/DM-EraseV2_a03",
"/Game/Maps/DM-Fervor/DM-Fervor_V8",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/WIP/DM-BoneCrusher_MC2",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9",
"/Game/Maps/DM-Ironic-UT2004"
],
"maxPlayers": 2,
"maxTeamCount": 2,
"maxTeamSize": 1,
"maxPartySize": 1,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_Duel.GB_Duel'",
"gameMode" : "/Script/UnrealTournament.UTDuelGame",
"gameOptions" : "?MaxPlayers=2?TimeLimit=10?ignoreidle=1?GoalScore=0?ForceNoBots=1?ForceRespawn=1?mutator=ProMovement,ProWeapons,MutHitsounds,MutTeamSkins,WeaponSkins,CustomHUD,NoPickupTimerMutator",
"requiredPackages" : [
"CustomHUD",
"MutHitSounds",
"MutTeamSkins",
"ProMovement",
"ProWeapons",
"WeaponSkins",
"NoPickupTimerMutator"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,53 @@
{
"uniqueTag": "UTPlusDUELnogl",
"categories": [
"Duel"
],
"title": "UT+ Duel noGL",
"toolTip": "Ultimate 1v1 test of deathmatch skill",
"description": "1v1 Duel (with UT+ Movement and Weapon Stats)\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds, CustomHUD</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=2, TimeLimit=10, WeaponStay=OFF, Amp=OFF, PickupTimers=OFF</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/WIP/DM-ASDF,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest",
"defaultMap": "/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Coma/Maps/DM-Coma_A015",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-Deep-03g",
"/Game/Maps/DM-Erase/DM-EraseV2_a03",
"/Game/Maps/DM-Fervor/DM-Fervor_V8",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/WIP/DM-BoneCrusher_MC2",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9",
"/Game/Maps/DM-Ironic-UT2004"
],
"maxPlayers": 2,
"maxTeamCount": 2,
"maxTeamSize": 1,
"maxPartySize": 1,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_Duel.GB_Duel'",
"gameMode" : "/Script/UnrealTournament.UTDuelGame",
"gameOptions" : "?MaxPlayers=2?TimeLimit=10?ignoreidle=1?GoalScore=0?MaxSpecators=10?ForceNoBots=1?ForceRespawn=1?mutator=UTPlus,UTPlusMovement,MutHitsounds,MutTeamskins,WeaponSkins,CustomHUD,NoPickupTimerMutator,WeaponReplacement?WTR=/Game/UT+/UTPlus/UT+GrenadeLauncher.UT+GrenadeLauncher_C:/Game/UT+/UTPlus/UT+BioRifle.UT+BioRifle_C?",
"requiredPackages" : [
"CustomHUD",
"MutHitSounds",
"MutTeamskins",
"WeaponSkins",
"UTPlus",
"UTPlusMovement",
"NoPickupTimerMutator"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"minPlayersToStart": 2,
"epicForceUIVisibility": 0
},

@ -0,0 +1,52 @@
{
"uniqueTag": "UTPlusDUEL",
"categories": [
"Duel"
],
"title": "UT+ Duel",
"toolTip": "Ultimate 1v1 test of deathmatch skill",
"description": "1v1 Duel (with UT+ Movement and Weapon Stats)\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds, CustomHUD</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=2, TimeLimit=10, WeaponStay=OFF, Amp=OFF, PickupTimers=OFF</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/WIP/DM-ASDF,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest",
"defaultMap": "/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Coma/Maps/DM-Coma_A015",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-Deep-03g",
"/Game/Maps/DM-Erase/DM-EraseV2_a03",
"/Game/Maps/DM-Fervor/DM-Fervor_V8",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/WIP/DM-BoneCrusher_MC2",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9",
"/Game/Maps/DM-Ironic-UT2004"
],
"maxPlayers": 2,
"maxTeamCount": 2,
"maxTeamSize": 1,
"maxPartySize": 1,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_Duel.GB_Duel'",
"gameMode" : "/Script/UnrealTournament.UTDuelGame",
"gameOptions" : "?MaxPlayers=2?TimeLimit=10?ignoreidle=1?GoalScore=0?ForceNoBots=1?ForceRespawn=1?mutator=UTPlus,UTPlusMovement,MutHitsounds,MutTeamskins,WeaponSkins,CustomHUD,NoPickupTimerMutator",
"requiredPackages" : [
"CustomHUD",
"MutHitSounds",
"MutTeamSkins",
"WeaponSkins",
"UTPlus",
"UTPlusMovement",
"NoPickupTimerMutator"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,58 @@
{
"uniqueTag": "MYBLITZ",
"categories": [
"Weapons"
],
"title": "Blitz",
"toolTip": "Blitz Mode",
"description": "Blitz",
"description": "Blitz\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=12, TimeLimit=20, WeaponStay=OFF, Translocator=ON</>\n\n<UT.Hub.RulesText_Small>*Under Construction*</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "",
"defaultMap": "",
"customMapList": [
"/Game/FR-Farage",
"/Game/FR-Ozone",
"/Game/FR-Quarry",
"/Game/GSC/Maps/FR-Scrapyard",
"/Game/Maps/FR-Canyon/FR-CanyonWIP4",
"/Game/Maps/FR-CastleTest03",
"/Game/Maps/FR-ChocolateFactory/FR-ChocolateFactory",
"/Game/Maps/FR-ChocolateFactory/FR-FudgeFactory",
"/Game/Maps/FR-Foundry/FR-Foundry-WIP6",
"/Game/Maps/FR-Horus/FR-Horus_WIP02",
"/Game/Maps/FR-Nova/FR-Nova_CUP",
"/Game/Maps/FR-Nova/FR-Nova_WIP2",
"/Game/Maps/H27/FR-Morphine-Beta005",
"/Game/Maps/Sprint/FR-Sprint-Beta002",
"/Game/Mogno/FR-Chill/FR-Chill_V2",
"/Game/RestrictedAssets/Maps/FR-DormantCoast",
"/Game/RestrictedAssets/Maps/WIP/FR-Blackstone-UC",
"/Game/RestrictedAssets/Maps/WIP/FR-HighRoad-UC",
"/Game/dmshaft/FR-MeltDownpdv2019superior",
"/Game/fr_crescendo/FR-Crescendo",
"/Game/tidu/Maps/FR-Spacecadet_01"
],
"maxPlayers": 12,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_CTF.GB_CTF'",
"gameMode": "/Script/UnrealTournament.UTCTFGameMode",
"gameOptions": "?BalanceTeams=false?TimeLimit=20?GoalScore=0?botfill=2?ignoreidle=1?mutator=MutHitsounds,UTPlus,UTPlusMovement,WeaponSkins,MutTeamskins,NoPickupTimerMutator,NoSpawnProtectionMutator",
"requiredPackages" : [
"MutHitsounds",
"MutTeamskins",
"UTPlus",
"UTPlusMovement",
"WeaponSkins",
"NoPickupTimerMutator",
"NoSpawnProtectionMutator"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,58 @@
{
"uniqueTag": "CTF",
"categories": [
"Weapons"
],
"title": "CTF",
"toolTip": "Capture the Flag",
"description": "CTF: UT+",
"description": "Capture the Flag\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=12, TimeLimit=20, WeaponStay=OFF, Translocator=ON</>\n\n<UT.Hub.RulesText_Small>*Under Construction*</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/WIP/CTF-Blank,/Game/RestrictedAssets/Maps/WIP/CTF-Quick,/Game/RestrictedAssets/Maps/WIP/CTF-Plaza",
"defaultMap": "/Game/RestrictedAssets/Maps/WIP/CTF-Quick",
"customMapList": [
"/Game/Anfractuous2/CTF-Anfractuous2_scaled",
"/Game/AreaN23/CTF-AreaN23",
"/Game/Azcanize/CTF-Azcanize",
"/Game/CTF-Shadow-Textured",
"/Game/Cynosure/CTF-Cynosure2",
"/Game/EpicInternal/Pistola/CTF-Pistola-Shell",
"/Game/GrendelKeep/CTF-Grendelkeep_shell",
"/Game/Maps/CTF-Archanastre-v5",
"/Game/Maps/CTF-VaultCity_FPS",
"/Game/Ranel/CTF-Ranel",
"/Game/RestrictedAssets/Maps/CTF-Polaris_Shellv2",
"/Game/RestrictedAssets/Maps/Pater/CTF-BollWerK_UT4",
"/Game/RestrictedAssets/Maps/Vengeance99/CTF-Vengeance_v06",
"/Game/RestrictedAssets/Maps/WIP/CTF-Bleak-CE100-UT99/CTF-Bleak-v4",
"/Game/RestrictedAssets/Maps/WIP/CTF-BleakLE14-UT99/CTF-Bleak-R3",
"/Game/RestrictedAssets/Maps/WIP/CTF-Gataka-SE/CTF-Gataka-SE-UT99",
"/Game/RestrictedAssets/Maps/WIP/CTF-Orbital-UT99/CTF-Orbital-SE-UT99_metal-4",
"/Game/Terra/CTF-Terra-v1",
"/Game/UTzoneContent/Maps/Donzi/CTF-Sprinta",
"/Game/Virility/CTF-Virility_CE"
],
"maxPlayers": 12,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_CTF.GB_CTF'",
"gameMode": "/Script/UnrealTournament.UTCTFGameMode",
"gameOptions": "?MercyScore=5?TimeLimit=20?GoalScore=0?botfil=2?ignoreidle=1?mutator=MutHitsounds,UTPlus,UTPlusMovement,MutTeamSkins,WeaponSkins,NoPickupTimerMutator,NoSpawnProtectionMutator,MutCaptureTime",
"requiredPackages" : [
"MutHitsounds",
"MutTeamskins",
"UTPlus",
"UTPlusMovement",
"WeaponSkins",
"NoPickupTimerMutator",
"NoSpawnProtectionMutator",
"MutCaptureTime"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,64 @@
{
"uniqueTag": "MYDEATHMATCH",
"categories": [
"Weapons"
],
"title": "DM",
"toolTip": "Free-for-all Deathmatch",
"description": "Free for All Deathmatch, WeaponStay is ON\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=10, TimeLimit=10, WeaponStay=ON</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Outpost23,/Game/RestrictedAssets/Maps/DM-Chill,/Game/RestrictedAssets/Maps/DM-Underland,/Game/EpicInternal/Lea/DM-Lea,/Game/EpicInternal/Backspace/DM-Backspace,/Game/EpicInternal/Salt/DM-Salt,/Game/RestrictedAssets/Maps/DM-BioTower,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Focus,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Campgrounds-PRO-UNG",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-DE-Grendelkeep-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-BoneCrusher_MC2",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9"
],
"maxPlayers": 12,
"maxTeamCount": -1,
"maxTeamSize": -1,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_DM.GB_DM'",
"gameMode": "/Script/UnrealTournament.UTDMGameMode",
"gameOptions": "?TimeLimit=10?GoalScore=0?ignoreidle=1?botfill=2?mutator=UTPlus,UTPlusMovement,MutHitsounds,MutTeamskins,NoPickupTimerMutator,WeaponSkins,NoSpawnProtectionMutator",
"requiredPackages" : [
"MutHitsounds",
"MutTeamskins",
"WeaponSkins",
"UTPlus",
"UTPlusMovement",
"NoPickupTimerMutator",
"NoSpawnProtectionMutator"
],
"bTeamGame": false,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

@ -0,0 +1,65 @@
{
"uniqueTag": "MYTDM",
"categories": [
"Weapons"
],
"title": "TDM",
"toolTip": "Red-vs-blue team deathmatch",
"description": "Team Deathmatch, WeaponStay is OFF\n\n<UT.Hub.RulesText_Small>Mutators: UT+, TeamSkins, WeaponSkins, HitSounds</>\n<UT.Hub.RulesText_Small>Options: MaxPlayers=12, TimeLimit=15, WeaponStay=OFF</>",
"mapPrefixes": [],
"maxMapsInList": 0,
"epicMaps": "/Game/RestrictedAssets/Maps/DM-Outpost23,/Game/RestrictedAssets/Maps/DM-Underland,/Game/RestrictedAssets/Maps/DM-Chill,/Game/EpicInternal/Backspace/DM-Backspace,/Game/EpicInternal/Salt/DM-Salt,/Game/EpicInternal/Lea/DM-Lea,/Game/RestrictedAssets/Maps/WIP/DM-Spacer,/Game/RestrictedAssets/Maps/WIP/DM-Cannon,/Game/RestrictedAssets/Maps/WIP/DM-Deadfall,/Game/RestrictedAssets/Maps/WIP/DM-Temple,/Game/RestrictedAssets/Maps/WIP/DM-Focus,/Game/RestrictedAssets/Maps/WIP/DM-NickTest1,/Game/RestrictedAssets/Maps/WIP/DM-Solo,/Game/RestrictedAssets/Maps/WIP/DM-Decktest,/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"defaultMap": "/Game/RestrictedAssets/Maps/DM-Chill",
"customMapList": [
"/Game/DM-Campgrounds-G1E/DM-Campgrounds-G1E",
"/Game/DM-Campgrounds-PRO-UNG",
"/Game/Domination/Maps/DM-Seraphim",
"/Game/GrendelKeep/DM-Grendelkeep_Shell",
"/Game/Maps/DM-1/DM-Pure_vrc_3",
"/Game/Maps/DM-3/DM-AncientLost_v2i",
"/Game/Maps/DM-Antalus",
"/Game/Maps/DM-Blaster-v16",
"/Game/Maps/DM-Campgrounds/DM-Campgrounds-03a",
"/Game/Maps/DM-Corrugation-UT2004",
"/Game/Maps/DM-DE-Grendelkeep-UT2004",
"/Game/Maps/DM-SuperFantasmic/DM-SuperFantasmic-02c",
"/Game/Rankin/DM-Rankin-LE",
"/Game/RestrictedAssets/Maps/DM-1on1-Roughinery",
"/Game/RestrictedAssets/Maps/DM-Cheops-UT4",
"/Game/RestrictedAssets/Maps/WIP/DM-ASDF",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal12k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-AkBal2k4-UT2004/DM-AkBal",
"/Game/RestrictedAssets/Maps/WIP/DM-Echo_b7",
"/Game/RestrictedAssets/Maps/WIP/DM-Focus-LE",
"/Game/RestrictedAssets/Maps/WIP/DM-Goose-b1",
"/Game/RestrictedAssets/Maps/WIP/DM-HyperBlast-UT99/DM-HyperBlast-UT99_metal-1",
"/Game/RestrictedAssets/Maps/WIP/DM-Idoma-UT3/DM-Idoma",
"/Game/RestrictedAssets/Maps/WIP/DM-StalwartXL-UT99/DM-StalwartXL-UT99_metal-1",
"/Game/Signify/DM-Signify",
"/Game/Under/DM-Under-LE",
"/Game/_Ransom/Maps/DM-ChillShell-Abs-A/DM-ChillShell-Abs-A",
"/Game/maps/DM-Erase_Beta/DM-Erase_B9"
],
"maxPlayers": 12,
"maxTeamCount": 2,
"maxTeamSize": 5,
"maxPartySize": 5,
"displayTexture": "Texture2D'/Game/RestrictedAssets/UI/GameModeBadges/GB_TDM.GB_TDM'",
"gameMode": "/Script/UnrealTournament.UTTeamDMGameMode",
"gameOptions" : "?BalanceTeams=false?MaxPlayers=12?TimeLimit=15?ignoreidle=1?GoalScore=0?botfill=2?balanceTeams=true?mutator=UTPlus,UTPlusMovement,MutHitsounds,MutTeamskins,WeaponSkins,NoPickupTimerMutator,NoSpawnProtectionMutator",
"requiredPackages" : [
"MutHitsounds",
"MutTeamskins",
"WeaponSkins",
"UTPlus",
"UTPlusMovement",
"NoPickupTimerMutator",
"NoSpawnProtectionMutator"
],
"bTeamGame": true,
"bCompetitiveMatch": false,
"optionFlags": 65535,
"bHideFromUI": false,
"epicForceUIVisibility": 0
},

11
files/start-server.sh Executable file

@ -0,0 +1,11 @@
#!/bin/bash
PROJECT_DIR="/home/ut4/serv"
cd "$PROJECT_DIR"/LinuxServer/Engine/Binaries/Linux
while true ; do
cd "$PROJECT_DIR"/LinuxServer/Engine/Binaries/Linux
./UE4Server-Linux-Shipping UnrealTournament UT-Entry?Game=Lobby -log |& tee /home/ut4/serv/ut4-server.log
done
cd - >/dev/null

6
files/stop-server.sh Executable file

@ -0,0 +1,6 @@
#!/bin/bash
pkill -SIGINT -f UE4Server-Linux-Shipping
pkill start-server.sh
pkill -SIGINT -f UE4Server-Linux-Shipping

729
ut4-server-ctl.sh Executable file

@ -0,0 +1,729 @@
#!/bin/bash
# The 'All You Need' Unreal Tournament 4 Server (HUB) Script
# ==========================================================
# This script is everything you need for hosting your own UT4
# server! The way this works is you have a root server directory with this
# script inside it. There's separate directories for config files, maps,
# mutators, and rulesets for the provided game types. You always edit the files
# in those directories and then run this script to deploy the server. This
# includes:
#
# (*) Automatic downloading of the latest <server.zip> from Epic
# (*) Installing the game configuration files, the mutators, the maps into the
# instance
# (*) Uploading all .pak package files to the redirect and automatic
# generation of the required hashes for Game.ini
# (*) The only thing that's left is for you to configure your gametypes,
# add some maps, mutators, and get to fraggin'!!!
#
# Remote and Multiple Instances
# -----------------------------
# This script is designed to take files (maps, mutators, config) from
# a project directory and deploy them to two remote servers, the game
# instance and the redirect. Alternatively, these could be the same
# computer but the redirect should be distinct from the game server
# or downloads will make everyone lag. There is no restriction on
# where you put the project directory but you need a place for
# this script, all the maps, mutators to reside. You put maps,
# rulesets, and configuration in this project directory and then run
# this script to generate the instance, deploy to the server instance,
# and deploy to the redirect. This is also used to manage multiple
# server instances without as much duplication of effort. You need
# enough hard drive space to store all the files for the server which
# could be 10-20GB if you put lots of stuff on your HUB.
# Rulesets:
# ---------
# Management of the rulesets (which provide the pre-populated gametypes, including
# all the selected mutators, the map rotation, game options, and mutator
# options) is greatly improved. There's some provided rulesets and some Disable.json
# files which remove the pre-populated ones. You manage each rule as a .json configuration
# file in the ./files/rulesets directory. The main part that is not automated
# is the Resource Path for maps to put them in the rotation. You can get these from
# UTCC, or from hosting a lan game with that map on your local game client,
#
# After you start a map, <alt>+<tab> to go to the UT4 console window and copy/paste
# the name from the logs. It will be the big line and look like:
#
# ...Game=/?
#
# It will make sense when you see the files.
#
# UPDATE: or better yet there is a script on the forums that will extract the required resource names
# from a directory of paks.
#
# What You Need:
# -------------
# (1) A Server
# What you need to actually host this somewhere is a server to run the hub.
# Ideally this is a machine with it's own internet line else it may slow
# down when you watch NetFlix. Cloud hosting providers will provide you
# a perfect machine for a fee/month.
#
# (2) A Redirect
# On the same note as giving the server it's own internet line, content
# from the server is sent to gamers from a third-party server. You additionally
# need a 'redirect' server to host the files. This can be another server or I've
# seen many public redirects which would be happy to spread some of that
# Unreal Tournament Love. In case, we use a second cloud server.
#
# (3) A good attitude. You're almost done. There's just a few commands to learn
# that this script provides. You need to put this script in the right directory
# and then edit that directory path to the right place. After that, you can
# invoke the script to install and configure your instance.
#
# Usage and Directions:
# ---------------------
#
# Edit the exported parameters at the top of this file. You
# certainly need to point this to your relevant servers or
# be prepared to perform the file transfer manually. All
# work is done in the PROJECT_DIR variable so you can see the files
# in there. Use the source code as reference.
#
# Relevant directories (starting from PROJECT_DIR as base):
#
# - base Vanilla UT4 server as downloaded
#
# - files Custom Maps, mutators, rulesets, and config
#
# - instance Generated UT4 server application
# (for transfer if moving to a remot eserver)
# (YOU shouldn't need to edit this folder as
# it gets updated by the script)
#
# Requirements: Linux server with installed dependencies, including wget,
# scp, unzip, and sed. These utilities are used for the various file transfers
# and operations, and will be installed on almost every Linux distribution by
# default.
#
# Credits: Script modeled after the code in the unrelated easy-rsa
# script which I found to be helpful in writing this script.
#
# Last tested with UT4 server: <version number>
# Last updated: 2019-05-05
# Configurable parameters (EDIT THESE):
# -------------------------------------
# Local directory to do everything in -- Point to a directory on the server
# to be the base directory, storing all the UT4 files. If you don't care,
# then just use /home/ut4/serv like provided.
# Some good places that make sense, though technically anywhere will work:
# * /home/ut4
# * /opt/ut4
# * /srv/ut4
####
####
# BELOW has been moved to vars-dallas
# ----------------------------------------
#
# export PROJECT_DIR="/home/ut4/serv"
#
# # For creating RedirectReferences= Lines
# export REDIRECT_PROTOCOL="https"
# export REDIRECT_URL="ut4-redirect.zavage.net"
#
# # Remote server, if applicable, to upload instance and paks
# # Only used for upload-redirects and upload-server commands.
# # Format: username@host:/directory/on/remote/server
# export REMOTE_GAME_HOST="ut4-linode:/home/ut4/serv"
# export REMOTE_REDIRECT_HOST="mathewguest.com:/srv/ut4-redirect"
# BELOW HERE, DEFAULTS SHOULD BE FINE. FEEL FREE TO EDIT IF YOU
# KNOW WHAT YOU'RE DOING
# Latest Linux Server.zip:
export DOWNLOAD_URL="https://s3.amazonaws.com/unrealtournament/ShippedBuilds/%2B%2BUT%2BRelease-Next-CL-3525360/UnrealTournament-Server-XAN-3525360-Linux.zip"
export DOWNLOAD_FILENAME="UnrealTournament-Server-XAN-3525360-Linux.zip"
# If MD5 hash is provided, will verify the download:
export DOWNLOAD_MD5="cad730ad6793ba6261f9a341ad7396eb"
export SKIP_VALIDATE="false" # anything but 'true' will interactively ask
# the user for variables.
usage()
{
cat <<"EOF"
Unreal Tournament 4 Server Build and Deploy Script
A list of commands is shown below.
List commands and usage:
./ut4-server-ctl.sh
Show help for a specific command:
./ut4-server-ctl.sh --help <COMMAND>
Here is the list of sub-commands with short syntax reminder:
./ut4-server-ctl.sh 1click-deploy
./ut4-server-ctl.sh clean-instance
./ut4-server-ctl.sh create-directories
./ut4-server-ctl.sh download-linux-server
./ut4-server-ctl.sh download-logs
./ut4-server-ctl.sh generate-instance
./ut4-server-ctl.sh start-server
./ut4-server-ctl.sh stop-server
./ut4-server-ctl.sh upload-redirects
./ut4-server-ctl.sh upload-server
Typical Usage:
1) You need to either configure the remote server hostnames (both game server and remote redirect server)
in the vars files. Edit vars with a text editor, or edit the defaults in this file, or manually type
them interactively when prompted* (coming soon).
e.g.:
PROJECT_DIR="/path/to/this/script/directory/on/local/machine"
REMOTE_GAME_HOST="54.123.456.10"
REMOTE_GAME_DIR="/home/ut4/hub-instance"
REMOTE_REDIRECT_HOST="45.321.654.10"
REMOTE_REDIRECT_DIR="/srv/ut4-redirect/"
2) You need to download the latest Linux Server release from Epic. Do
this with the 'download-server' command.
e.g.:
./ut4-server-ctl.sh download-server
3) Add and configure custom maps, mutators, rulesets, and hub configuration to your *local* project folder.
This is done by modifying the files in the project directory. With the current environment variables,
this is set to be:
"$PROJECT_DIR"
This is the fun part! Connect with UTCC or UTZONE.DE (unaffiliated) to find custom content to put on
your hub.
4) 1click-deploy to update the remote hub and redirect with your latest content. You're done! Rinse and repeat.
e.g.:
./ut4-server-ctl.sh 1click-deploy
Alternatively, this command is equivalent to running the separate commands. If you'd like more fine-grained
control, you can run them individually.
./ut4-server-ctl.sh generate-instance
./ut4-server-ctl.sh upload-redirects
./ut4-server-ctl.sh upload-server
./ut4-server-ctl.sh restart-server
EOF
}
cmd_help()
{
cmd="$1"
case "$cmd" in
1click-deploy)
cat <<"EOF"
1click-deploy)
Executes all the commands needed to update a remote game server. This is
equivalent to running these 3 commands:
1 - generate-instance (installing config, maps, and mutators)
2 - upload-server (copying hub instance to remote game server)
3 - upload-redirects (copying customized content to remote redirect server)
EOF
;;
clean-instance)
cat <<"EOF"
clean-instance)
This command will delete all files on the generated instance on the LOCAL machine.
Useful for if you ever delete a map or mutator and wan't it off the server. To do that,
modify the files you need, clean-instance, and then generate-instance from scratch.
EOF
;;
create-directories)
cat <<"EOF"
EOF
;;
download-linux-server)
cat <<"EOF"
download-linux-server)
Downloads the latest Linux server release from Epic.
EOF
;;
download-logs)
cat <<"EOF"
download-logs)
Downloads the instance logs from the remote game server while clearing
them on the server.
EOF
;;
generata-instance)
cat <<"EOF"
generate-instance)
Installs the game configuration, maps, and mutators into the *local*
instance directory. The next step after this has been done is to
upload-server to copy the instance directory to the remote game server.
EOF
;;
restart-server)
cat <<"EOF"
restart-server)
Equivalent to stop-server + start-server.
EOF
;;
start-server)
cat <<"EOF"
start-server)
Turns on the remote game server Unreal Tournament 4 Linux Hub instance. Will run in
an infinite loop until stopped.
EOF
;;
stop-server)
cat <<"EOF"
stop-server)
Turns off and kills all remote game server instances.
EOF
;;
upload-redirects)
cat <<"EOF"
upload-redirects)
Uploads customized content and sanitized server configuration to remote
redirect server.
EOF
;;
upload-server)
cat <<"EOF"
upload-server)
Installs the generated UT4 Hub instance to the configured remote game
server.
EOF
;;
""|help|-h|--help|--usage)
usage
;;
*)
echo "Unknown command '$cmd'. Invoke script for usage help."
;;
esac
}
oneclick_deploy()
{
generate_instance
upload_redirects
upload_server
}
clean_instance()
{
_UT4_print Clearing .pak folder...
(set -x # NOTE(MG) set -x echoes all commands that the script does.
# The user will be able to see the computed commands as the
# script runs them.
rm -rv "$PROJECT_DIR"/instance/LinuxServer/UnrealTournament/Content/Paks/*
)
}
create_directories()
{
(set -x
mkdir -p "$PROJECT_DIR"/base
mkdir -p "$PROJECT_DIR"/files/config
mkdir -p "$PROJECT_DIR"/files/maps
mkdir -p "$PROJECT_DIR"/files/mutators
mkdir -p "$PROJECT_DIR"/files/rulesets
mkdir -p "$PROJECT_DIR"/files/unused
)
}
download_linux_server()
{
cd "$PROJECT_DIR"/base
# Only download server when hasn't already been downloaded
if [ ! -f "$PROJECT_DIR"/base/"$DOWNLOAD_FILENAME" ] ; then
_UT4_print "Downloading Linux Server Archive..."
(set -x
wget "$DOWNLOAD_URL" --show-progress
)
_UT4_print "Verifying archive is the file we're expecting"
md5=$(md5sum "$DOWNLOAD_FILENAME" | cut -d' ' -f1)
if [ "$md5" != "$DOWNLOAD_MD5" ] ; then
server.zip echo Downloaded '"$DOWNLOAD_FILENAME"' checksum FAILED.
echo The downloaded zip was not the exact file we\'re expecting.
echo Refusing to continue.
return 1
else
echo The downloaded zip checksum matched what we expected: "$DOWNLOAD_MD5"
fi
else
_UT4_print "UT4 Server .zip already downloaded"
_UT4_print "You need to invoke this command manually if you want to delete these files. (Being extra safe)"
_UT4_print "DELETE COMMAND (manual): cd "$PROJECT_DIR"/base && rm -rv *" && cd -
cd - >/dev/null
return 1
fi
# Extract ut4 linux server into ./base (with overwrite)
_UT4_print "Extracting archive..."
(set -x
unzip -o "$DOWNLOAD_FILENAME"
# rm "$DOWNLOAD_FILENAME"
)
cd - >/dev/null
}
download_logs()
{
_UT4_print "Downloading the game logs from the server (clearing them also)"
# Transfer log directory files from remote game server to local:
(set -x
rsync -ravzp "$REMOTE_GAME_HOST":"$REMOTE_GAME_DIR"/LinuxServer/UnrealTournament/Saved/Logs/ "$CONFIG_DIR"/downloaded-logs/
)
# Delete logs on remote game server if successfully transferred to local:
if [ $? -eq 0 ] ; then
(set -x
:
# ssh "$REMOTE_GAME_HOST" rm "$REMOTE_GAME_DIR"'/LinuxServer/UnrealTournament/Saved/Logs/* -r'
)
fi
}
generate_instance()
{
_UT4_print "Generating server instance from custom files..."
(set -x
rsync -ravzp "$PROJECT_DIR"/base/LinuxServer "$PROJECT_DIR"/instance/
cp "$PROJECT_DIR"/start-server.sh "$PROJECT_DIR"/instance/
cp "$PROJECT_DIR"/stop-server.sh "$PROJECT_DIR"/instance/
)
# _first_run
_install_config
_install_paks
_install_redirect_lines
_install_rulesets
}
restart_server()
{
stop_server
start_server
}
start_server()
{
_UT4_print "Starting server!!"
(set -x
nohup ssh "$REMOTE_GAME_HOST" "$REMOTE_GAME_DIRECTORY"/start-server.sh &
)
}
stop_server()
{
_UT4_print "Stopping all servers!"
(set -x
ssh "$REMOTE_GAME_HOST" "$REMOTE_GAME_DIRECTORY"/stop-server.sh
)
}
upload_redirects()
{
PAKS_DIR="$PROJECT_DIR"/files
_UT4_print "Uploading redirects (maps, mutators, etc.) to download server"
(set -x
rsync -rvz --delete --exclude "*.md5" --exclude 'unused' --exclude ".KEEP" --exclude Mods.db "$PAKS_DIR"/ "$REMOTE_REDIRECT_HOST"
)
# _UT4_print "Uploading md5sum files to redirect"
# mkdir /tmp/ut4-md5sums
# for f in $(ls "$PAKS_DIR"); do
# md5sum "$PAKS_DIR"/"$f" | cut -d' ' -f1 > /tmp/ut4-md5sums/"$f".md5
# done
# rsync -rvz --exclude ".KEEP" /tmp/ut4-md5sums/ "$REMOTE_REDIRECT_HOST"
# Hide admin password from redirect:
# TODO(MG) hardcoded paths and hostname >.<
gameini="/srv/ut4-redirect/config/Game.ini"
engineini="/srv/ut4-redirect/config/Engine.ini"
(set -x
ssh mathewguest.com sed -i /ServerInstanceID=/c\ServerInstanceID=Hidden "$gameini"
ssh mathewguest.com sed -i /RconPassword=/c\RconPassword=Hidden "$engineini"
rsync -vz "$PROJECT_DIR"/ut4-server-ctl.sh "$REMOTE_REDIRECT_HOST"
)
# Fix permissions for redirect:
(set -x
ssh mathewguest.com 'chown http.http /srv/ut4-redirect -R'
)
}
upload_server()
{
_UT4_print "Uploading customized server"
# Exclude everything we don't want to be
# overwritten on the server instance.
# (Hint: uncomment --dry-run to safely verify command works as intended)
(set -x
rsync -ravzp \
--delete \
--exclude ".KEEP" \
--exclude "Mods.db" \
--exclude "Mod.ini" \
--exclude "Logs" \
--exclude "ut4-server.log" \
--exclude "Saved/*.ai" \
--exclude "Saved/Crashes/*" \
--exclude "Saved/Logs/*" \
"$PROJECT_DIR"/instance/ \
"$REMOTE_GAME_HOST":"$REMOTE_GAME_DIRECTORY"
rsync -avzp "$PROJECT_DIR"/ut4-server-ctl.sh "$REMOTE_GAME_HOST":"$REMOTE_GAME_DIRECTORY"
)
}
_first_run()
{
_UT4_print "Starting instance once to get UID."
_UT4_print "Unfortunately, this takes 20 seconds. Just wait."
(set -x
cd "$PROJECT_DIR"/instance/LinuxServer/Engine/Binaries/Linux
chmod 770 UE4Server-Linux-Shipping
./UE4Server-Linux-Shipping UnrealTournament UT-Entry?Game=Lobby -log &>/dev/null &
cd - >/dev/null
)
_UT4_print "sleeping 20 seconds and then we'll kill the server we started just now."
sleep 20
stop_server
# TODO(MG) get uid and export
}
_install_config()
{
f="Game.ini"
_UT4_print Installing file: "$f"
(set -x
cp "$CONFIG_DIR"/config/"$f" "$PROJECT_DIR"/instance/LinuxServer/UnrealTournament/Saved/Config/LinuxServer/
)
f="Engine.ini"
_UT4_print Installing file: "$f"
(set -x
cp "$CONFIG_DIR"/config/"$f" "$PROJECT_DIR"/instance/LinuxServer/UnrealTournament/Saved/Config/LinuxServer/
)
}
_install_paks()
{
_UT4_print Installing maps...
(set -x
rsync -ravzp "$PROJECT_DIR"/files/maps/ "$PROJECT_DIR"/instance/LinuxServer/UnrealTournament/Content/Paks/
)
_UT4_print Installing mutators...
(set -x
rsync -ravzp "$PROJECT_DIR"/files/mutators/ "$PROJECT_DIR"/instance/LinuxServer/UnrealTournament/Content/Paks/
)
}
_install_redirect_lines()
{
_UT4_print Generating redirect references...
MOD_DIR="$PROJECT_DIR"/files
shopt -s nocaseglob
echo > /tmp/ut4-server-ctl-references
for f in "$MOD_DIR"/**/*.pak ; do
# f = full path
RELATIVE_PATH=${f#"$MOD_DIR"/} # <- Trims /root/path/up/until/$MOD_DIR
# example output: maps/DM-Rankin.pak
# mutators/GodMode.pak
BASENAME=$(basename "$f") # DM-Rankin.pak
# Exclusions:
# - exclude the UnrealTournament pak
if [ "$BASENAME" = "UnrealTournament-LinuxServer.pak" ] ; then
continue
fi
# Exclude any files in the 'unused' directory:
FIRSTDIR=$(echo "$RELATIVE_PATH" | cut -d'/' -f1)
if [ "$FIRSTDIR" = "unused" ] ; then
continue
fi
MD5=$(md5sum "$f"| cut -d' ' -f1)
EXTENSION="${BASENAME##*.}" # .pak
FILENAME="${BASENAME%.*}" # DM-Rankin
# line continues that way --> --> -->
LINE="RedirectReferences=(PackageName=\""$FILENAME"\",PackageURLProtocol=\"$REDIRECT_PROTOCOL\",PackageURL=\""$REDIRECT_URL"/"$RELATIVE_PATH"\",PackageChecksum=\""$MD5"\")"
echo "$LINE"
echo "$LINE" >> /tmp/ut4-server-ctl-references
done
_UT4_print Installing redirect references into Game.ini...
FILENAME="$PROJECT_DIR"/instance/LinuxServer/UnrealTournament/Saved/Config/LinuxServer/Game.ini
LINE_NUMBER=17 # TODO(MG) Not hard-coded
# Delete
sed -i '/RedirectReferences/d' "$FILENAME"
# Insert into Game.ini
awk '1; NR==11 {system("cat /tmp/ut4-server-ctl-references")}' "$FILENAME" > /tmp/ut4-server-ctl-game.ini
cp /tmp/ut4-server-ctl-game.ini "$FILENAME"
cat "$FILENAME"
}
_install_rulesets()
{
_UT4_print Concatenating rulesets for game modes...
SRC_DIR="$PROJECT_DIR"/files/rulesets
OUT_DIR="$PROJECT_DIR"/instance/LinuxServer/UnrealTournament/Saved/Config/Rulesets
OUT_FILENAME="$OUT_DIR"/ruleset.json
mkdir -pv "$OUT_DIR"
echo OUT_FILENAME="$OUT_FILENAME"
echo {\"rules\":[ > "$OUT_FILENAME"
for f in "$SRC_DIR"/*.json ; do
cat "$f" >> $OUT_FILENAME
done
echo "]}" >> "$OUT_FILENAME"
echo output ruleset is at "$OUT_FILENAME"
}
_validate_env_vars()
{
# TODO(MG) Add which user we are running this under
_UT4_print Are these environment variables correct?
echo 'PROJECT_DIR: '"$PROJECT_DIR"
echo
echo 'DOWNLOAD_URL: '"$DOWNLOAD_URL"
echo 'DOWNLOAD_FILENAME: '"$DOWNLOAD_FILENAME"
echo 'DOWNLOAD_MD5: '"$DOWNLOAD_MD5"
echo 'REDIRECT_PROTOCOL: '"$REDIRECT_PROTOCOL"
echo 'REDIRECT_URL: '"$REDIRECT_URL"
echo 'REMOTE_GAME_HOST: '"$REMOTE_GAME_HOST"
echo 'REMOTE_GAME_DIRECTORY: '"$REMOTE_GAME_DIRECTORY"
echo 'REMOTE_REDIRECT_HOST: '"$REMOTE_REDIRECT_HOST"
echo
read -p "Continue with above configuration? " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Yy]$ ]] ; then
exit 1
fi
}
# Wrapper prints colored log messages which stand out to communicate what
# the script is doing to the user.
_UT4_print()
{
RED='\033[0;31m'
NC='\033[0m'
echo -e "UT4>${RED} "$@" ${NC}"
}
main()
{
cmd="$1"
_validate_env_vars
case "$cmd" in
1click-instance)
shift
oneclick_deploy "$@"
exit "$?";;
clean-instance)
shift
clean_instance "$@"
exit "$?";;
create-directories)
shift
create_directories "$@"
exit "$?";;
download-linux-server)
shift
download_linux_server "$@"
exit "$?";;
download-logs)
shift
download_logs "$@"
exit "$?";;
generate-instance)
shift
generate_instance "$@"
exit "$?";;
restart-server)
shift
restart_server "$@"
exit "$?";;
start-server)
shift
start_server "$@"
exit "$?";;
stop-server)
shift
stop_server "$@"
exit "$?";;
upload-redirects)
shift
upload_redirects "$@"
exit "$?";;
upload-server)
shift
upload_server "$@"
exit "$?";;
""|help|-h|--help|--usage)
shift
cmd_help "$@"
exit 0;;
*)
cmd_help "$@"
exit 1;;
esac
}
main "$@"

9
vars-dallas Normal file

@ -0,0 +1,9 @@
export PROJECT_DIR="/home/ut4/serv"
export CONFIG_DIR="/home/ut4/serv/server-dallas"
export REDIRECT_PROTOCOL="https"
export REDIRECT_URL="ut4-redirect.zavage.net"
export REMOTE_GAME_HOST="ut4-dallas"
export REMOTE_GAME_DIR="/home/ut4/serv"
export REMOTE_REDIRECT_HOST="root@45.33.76.178:/srv/ut4-redirect.zavage.net"

10
vars-fremont Normal file

@ -0,0 +1,10 @@
export PROJECT_DIR="/home/ut4/serv"
export CONFIG_DIR="/home/ut4/serv/server-fremont"
export REDIRECT_PROTOCOL="https"
export REDIRECT_URL="ut4-redirect.zavage.net"
export REMOTE_GAME_HOST="ut4-fremont"
export REMOTE_GAME_DIRECTORY="/home/ut4/serv"
export REMOTE_REDIRECT_HOST="mathewguest.com:/srv/ut4-redirect.zavage.net"

10
vars-newark Normal file

@ -0,0 +1,10 @@
export PROJECT_DIR="/home/ut4/serv"
export CONFIG_DIR="/home/ut4/serv/server-newark"
export REDIRECT_PROTOCOL="https"
export REDIRECT_URL="ut4-redirect.zavage.net"
export REMOTE_GAME_HOST="ut4-newark"
export REMOTE_GAME_DIRECTORY="/home/ut4/serv"
export REMOTE_REDIRECT_HOST="mathewguest.com:/srv/ut4-redirect.zavage.net"