mirror of
https://github.com/ChocoTaco1/TacoServer.git
synced 2026-01-19 16:14:44 +00:00
Compare commits
28 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
60a84fdb35 | ||
|
|
74ed8c8cde | ||
|
|
47e1932279 | ||
|
|
bddef9489c | ||
|
|
e99b013183 | ||
|
|
97c9bf7270 | ||
|
|
f8a73b752b | ||
|
|
6075098d79 | ||
|
|
d24df745ab | ||
|
|
14caa5aca5 | ||
|
|
3bd4577832 | ||
|
|
fda3f783e3 | ||
|
|
3e858b5649 | ||
|
|
e1f42951af | ||
|
|
4ac9b3bde8 | ||
|
|
b5ed76eb54 | ||
|
|
137bf547bd | ||
|
|
8af6ce887c | ||
|
|
e96039866f | ||
|
|
956ea4dcff | ||
|
|
d5a0cad2a2 | ||
|
|
790d31108e | ||
|
|
90620a1c6c | ||
|
|
7cd1cb8815 | ||
|
|
002ef81e53 | ||
|
|
7fe6bb3b98 | ||
|
|
dd61ee5fa0 | ||
|
|
9aea8e23a6 |
|
|
@ -1,623 +0,0 @@
|
|||
// __ __ _____ _ _ _
|
||||
// | \/ | | __ \ | | | | (_)
|
||||
// | \ / | __ _ _ __ | |__) |___ | |_ __ _| |_ _ ___ _ __
|
||||
// | |\/| |/ _` | '_ \ | _ // _ \| __/ _` | __| |/ _ \| '_ \
|
||||
// | | | | (_| | |_) | | | \ \ (_) | || (_| | |_| | (_) | | | |
|
||||
// |_| |_|\__,_| .__/ |_| \_\___/ \__\__,_|\__|_|\___/|_| |_|
|
||||
// | |
|
||||
// |_|
|
||||
//
|
||||
// Use of this file
|
||||
// To add a new map follow this rules:
|
||||
// 1. Find the file name, ending in .mis (ie BeggarsRun.mis)
|
||||
// 2. Add a line with this syntact: addRotationMap(filename, gametype, %voteable, %cycle, %min. %max);
|
||||
//
|
||||
//addRotationMap("MAP_NAME","MAP_MODE",VOTEABLE,IN-ROTATION,MINIMUM_PLAYERS,MAXIMUM_PLAYERS);
|
||||
//
|
||||
// Example: addRotationMap("BeggarsRun","CTF",1,1,-1,64);
|
||||
// Beggar's Run will be in the mapRotation. It's in the cycle and can be voted. The map has no minimum player count requirement, and a 64 player max.
|
||||
//
|
||||
// Example: addRotationMap("BeggarsRun","CTF",1,0,10,20);
|
||||
// Beggar's Run will be in the mapRotation. It's not in the cycle, but can be voted. The map has a minimum player count requirement of 10, and 20 players is the maximum to be picked.
|
||||
//
|
||||
// Example: addRotationMap("BeggarsRun","CTF",0,0,18,-1);
|
||||
// Beggar's Run won't be in the mapRotation. It's not in the cycle and can't be voted. The map has a minimum player count requirement of 18, and has no maximum for players.
|
||||
//
|
||||
//
|
||||
//addRotationMap("Casern_Cavite","Bounty",1,1,0,64);
|
||||
//addRotationMap("Sirocco","CnH",1,1,0,64);
|
||||
//addRotationMap("aabaaGH","CTF",1,0,0,64);
|
||||
//addRotationMap("AcidRain","DnD",1,1,0,64);
|
||||
//addRotationMap("AgentsOfFortune","Hunters",1,1,0,64);
|
||||
//addRotationMap("SunDriedLak1","LakRabbit",1,1,0,64);
|
||||
//addRotationMap("Arrakis","Rabbit",1,1,0,64);
|
||||
//addRotationMap("VulcansHammer","Siege",1,1,0,64);
|
||||
//addRotationMap("AgentsOfFortune","TeamHunters",1,1,0,64);
|
||||
//
|
||||
|
||||
|
||||
// _____ _______ ______
|
||||
// / ____|__ __| ____|
|
||||
// | | | | | |__
|
||||
// | | | | | __|
|
||||
// | |____ | | | |
|
||||
// \_____| |_| |_|
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//Small Maps
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//addRotationMap("SmallCrossing", "CTF",1,1,-1,16); //Using DMP Version
|
||||
addRotationMap("TWL2_CanyonCrusadeDeluxe", "CTF",1,1,-1,24);
|
||||
addRotationMap("RoundTheMountain", "CTF",1,1,-1,18);
|
||||
addRotationMap("oasisintensity", "CTF",1,1,-1,10);
|
||||
addRotationMap("Minotaur", "CTF",1,0,-1,18);
|
||||
addRotationMap("SmallMelee", "CTF",1,0,-1,12);
|
||||
addRotationMap("Machineeggs", "CTF",1,1,-1,10);
|
||||
addRotationMap("Mac_FlagArena", "CTF",1,0,-1,14);
|
||||
addRotationMap("SmallTimeCTF", "CTF",1,0,-1,14);
|
||||
addRotationMap("TWL2_Hildebrand", "CTF",1,1,-1,18);
|
||||
addRotationMap("ArenaDome", "CTF",1,0,-1,12);
|
||||
addRotationMap("Firestorm", "CTF",1,0,-1,12);
|
||||
addRotationMap("Bulwark", "CTF",1,1,-1,12);
|
||||
addRotationMap("Blink", "CTF",1,0,-1,10);
|
||||
addRotationMap("Discord", "CTF",1,1,6,16);
|
||||
addRotationMap("TWL2_MidnightMayhemDeluxe", "CTF",1,0,8,12);
|
||||
addRotationMap("Sentry", "CTF",1,1,-1,14);
|
||||
addRotationMap("TWL2_Skylight", "CTF",1,1,-1,10);
|
||||
addRotationMap("Exhumed", "CTF",1,0,-1,12);
|
||||
addRotationMap("FrozenHope", "CTF",1,1,8,12);
|
||||
addRotationMap("ClusterUnFuct", "CTF",1,0,8,12);
|
||||
//addRotationMap("Raspian", "CTF",1,0,8,12);
|
||||
addRotationMap("Zilch", "CTF",1,1,6,12);
|
||||
addRotationMap("SuperHappyBouncyFunTime", "CTF",1,0,-1,12);
|
||||
addRotationMap("SuperiorWaterworks", "CTF",1,0,-1,12);
|
||||
//addRotationMap("TWL2_FrozenHope", "CTF",1,0,8,20);
|
||||
//addRotationMap("Island", "CTF",1,1,-1,12);
|
||||
//addRotationMap("TitForTat", "CTF",1,1,-1,12);
|
||||
//addRotationMap("Cinerarium", "CTF",1,0,-1,12); //Using DMP Version
|
||||
//addRotationMap("StarFallCTF", "CTF",1,0,6,12); //Using DMP Version
|
||||
//addRotationMap("TWL_OsIris", "CTF",1,0,8,18);
|
||||
//addRotationMap("FrostPipe", "CTF",1,0,-1,12);
|
||||
|
||||
//Medium Maps
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("HighOctane", "CTF",1,0,10,24);
|
||||
addRotationMap("S5_Mordacity", "CTF",1,1,10,24);
|
||||
addRotationMap("S5_Damnation", "CTF",1,1,12,20);
|
||||
addRotationMap("TWL2_JaggedClaw", "CTF",1,1,14,28);
|
||||
addRotationMap("S5_Massive", "CTF",1,1,12,32);
|
||||
addRotationMap("TWL_Stonehenge", "CTF",1,1,8,20);
|
||||
addRotationMap("TWL_Feign", "CTF",1,1,10,28);
|
||||
addRotationMap("TheFray", "CTF",1,0,10,20);
|
||||
//addRotationMap("DangerousCrossing_nef", "CTF",1,1,8,20);
|
||||
addRotationMap("TWL_DangerousCrossing", "CTF",1,0,10,28);
|
||||
addRotationMap("TWL2_Ocular", "CTF",1,1,20,-1);
|
||||
addRotationMap("Dire", "CTF",1,0,10,16);
|
||||
addRotationMap("berlard", "CTF",1,1,12,24);
|
||||
addRotationMap("S8_Opus", "CTF",1,1,12,24);
|
||||
addRotationMap("TWL_BeggarsRun", "CTF",1,0,18,24);
|
||||
addRotationMap("Headstone", "CTF",1,1,8,24);
|
||||
addRotationMap("Signal", "CTF",1,0,8,24);
|
||||
addRotationMap("S5_Woodymyrk", "CTF",1,1,10,32);
|
||||
addRotationMap("TenebrousCTF", "CTF",1,0,8,12);
|
||||
addRotationMap("Prismatic", "CTF",1,0,16,32);
|
||||
addRotationMap("TWL_WilderZone", "CTF",1,1,12,32);
|
||||
addRotationMap("S5_Mimicry", "CTF",1,0,12,32);
|
||||
addRotationMap("TWL_Snowblind", "CTF",1,1,20,-1);
|
||||
addRotationMap("ShortFall", "CTF",1,0,18,28);
|
||||
addRotationMap("IceRidge_nef", "CTF",1,0,12,32);
|
||||
//addRotationMap("Disjointed", "CTF",1,0,8,20);
|
||||
addRotationMap("TWL2_MuddySwamp", "CTF",1,0,10,24);
|
||||
addRotationMap("HighAnxiety", "CTF",1,1,-1,12);
|
||||
addRotationMap("S5_Centaur", "CTF",1,1,-1,12);
|
||||
addRotationMap("S8_Cardiac", "CTF",1,1,18,-1);
|
||||
addRotationMap("CirclesEdge", "CTF",1,0,10,24);
|
||||
addRotationMap("S5_Icedance", "CTF",1,1,10,28);
|
||||
addRotationMap("Surreal", "CTF",1,0,24,-1);
|
||||
addRotationMap("TWL2_Drifts", "CTF",1,0,14,24);
|
||||
//addRotationMap("TWL2_Drorck", "CTF",1,0,12,24);
|
||||
addRotationMap("S5_HawkingHeat", "CTF",1,0,16,28);
|
||||
addRotationMap("TWL2_Celerity", "CTF",1,1,12,32);
|
||||
addRotationMap("Draco", "CTF",1,0,8,24);
|
||||
//addRotationMap("Pariah", "CTF",1,0,8,24); //Using DMP Version
|
||||
//addRotationMap("Mirage", "CTF",1,0,8,20);
|
||||
addRotationMap("Norty", "CTF",1,1,18,32);
|
||||
|
||||
//Voteable but Not in Rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("TWL2_IceDagger", "CTF",1,1,10,20);
|
||||
addRotationMap("TWL_Titan", "CTF",1,0,16,32);
|
||||
addRotationMap("Burstside", "CTF",1,0,10,20);
|
||||
addRotationMap("Infernus", "CTF",1,0,18,26);
|
||||
addRotationMap("Confusco", "CTF",1,0,10,20);
|
||||
//addRotationMap("Snowcone", "CTF",1,0,10,20);
|
||||
addRotationMap("S5_Drache", "CTF",1,0,16,28);
|
||||
//addRotationMap("JadeValley", "CTF",1,0,10,20);
|
||||
addRotationMap("S5_Sherman", "CTF",1,1,24,-1);
|
||||
addRotationMap("S5_Silenus", "CTF",1,0,8,20);
|
||||
addRotationMap("S5_Reynard", "CTF",1,0,10,20);
|
||||
//addRotationMap("Coppersky", "CTF",1,0,8,20);
|
||||
//addRotationMap("TWL2_Crevice", "CTF",1,0,10,20);
|
||||
addRotationMap("TWL_SubZero", "CTF",1,0,16,32);
|
||||
addRotationMap("Fallout", "CTF",1,1,16,24);
|
||||
//addRotationMap("TheClocktower", "CTF",1,0,10,20);
|
||||
//addRotationMap("SoylentGreen", "CTF",1,0,10,20);
|
||||
//addRotationMap("Ramparts", "CTF",1,0,10,20);
|
||||
//addRotationMap("Blastside_nef", "CTF",1,0,10,24);
|
||||
//addRotationMap("NatureMagic", "CTF",1,0,10,20);
|
||||
//addRotationMap("TWL_Damnation", "CTF",1,0,10,20);
|
||||
addRotationMap("TWL_DeadlyBirdsSong", "CTF",1,0,24,32);
|
||||
addRotationMap("Vauban", "CTF",1,0,18,-1);
|
||||
addRotationMap("TWL_Pandemonium", "CTF",1,0,16,24);
|
||||
addRotationMap("TWL_WhiteDwarf", "CTF",1,0,18,24);
|
||||
//addRotationMap("Cinereous", "CTF",1,0,12,20);
|
||||
|
||||
//Vehicle Maps
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("Logans_Run", "CTF",1,1,14,28);
|
||||
addRotationMap("Rollercoaster_nef", "CTF",1,1,8,-1);
|
||||
addRotationMap("HostileLoch", "CTF",1,1,8,12);
|
||||
addRotationMap("TWL_BeachBlitz", "CTF",1,1,18,28);
|
||||
addRotationMap("TWL2_Magnum", "CTF",1,1,12,-1);
|
||||
//addRotationMap("MoonDance", "CTF",1,0,12,28); //Using DMP Version
|
||||
addRotationMap("Raindance_nef", "CTF",1,1,12,28);
|
||||
addRotationMap("TWL_Magmatic", "CTF",1,0,14,28);
|
||||
addRotationMap("TWL2_FrozenGlory", "CTF",1,1,12,24);
|
||||
addRotationMap("LandingParty", "CTF",1,0,16,20);
|
||||
addRotationMap("TWL_Crossfire", "CTF",1,1,18,28);
|
||||
//addRotationMap("TitanV", "CTF",1,0,12,28);
|
||||
//addRotationMap("Rollercoaster_nef_FZ", "CTF",1,1,8,28);
|
||||
//addRotationMap("The_Calm", "CTF",1,0,12,24);
|
||||
addRotationMap("TWL2_Dissention", "CTF",1,0,16,32);
|
||||
|
||||
//Vehicle Maps: Voteable, But Not in Rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("SubZeroV", "CTF",1,0,12,24);
|
||||
addRotationMap("S8_Geothermal", "CTF",1,0,12,24);
|
||||
addRotationMap("Lakefront", "CTF",1,0,16,24);
|
||||
addRotationMap("ShockRidge", "CTF",1,0,12,24);
|
||||
addRotationMap("TWL2_BlueMoon", "CTF",1,1,18,32);
|
||||
addRotationMap("TWL_Katabatic", "CTF",1,0,16,32);
|
||||
addRotationMap("SandOcean", "CTF",1,0,12,28);
|
||||
addRotationMap("ks_braistv", "CTF",1,0,12,24);
|
||||
addRotationMap("Nightdance", "CTF",1,0,16,24);
|
||||
addRotationMap("TWL_Abaddon", "CTF",1,0,16,24);
|
||||
//addRotationMap("StarIce", "CTF",1,0,12,24);
|
||||
//addRotationMap("FilteredDust", "CTF",1,0,12,24);
|
||||
//addRotationMap("Choke", "CTF",1,0,12,24);
|
||||
addRotationMap("TWL_Chokepoint", "CTF",1,0,12,24);
|
||||
//addRotationMap("TWL_Starfallen", "CTF",1,0,12,24);
|
||||
//addRotationMap("ConstructionYard", "CTF",1,0,12,24);
|
||||
//addRotationMap("AcidRain", "CTF",1,0,12,24);
|
||||
addRotationMap("Agorazscium", "CTF",1,0,12,24);
|
||||
|
||||
//BIG Vehicle Maps
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("Circleofstones", "CTF",1,1,16,-1);
|
||||
addRotationMap("Ruined", "CTF",1,0,24,-1);
|
||||
//addRotationMap("FullCircle", "CTF",1,0,18,30);
|
||||
//addRotationMap("Surro", "CTF",1,0,18,24);
|
||||
addRotationMap("TWL2_RoughLand", "CTF",1,0,16,-1);
|
||||
addRotationMap("HarvestDance", "CTF",1,1,24,-1);
|
||||
//addRotationMap("WindyGap", "CTF",1,0,24,-1);
|
||||
addRotationMap("Fenix", "CTF",1,1,26,-1);
|
||||
addRotationMap("Hillside", "CTF",1,0,28,-1);
|
||||
addRotationMap("TWL_Slapdash", "CTF",1,0,24,-1);
|
||||
addRotationMap("BerylBasin", "CTF",1,1,20,-1);
|
||||
//addRotationMap("TWL_Frozen", "CTF",1,0,20,-1);
|
||||
addRotationMap("TWL_Harvester", "CTF",1,1,24,-1);
|
||||
addRotationMap("TWL2_Bleed", "CTF",1,0,24,-1);
|
||||
addRotationMap("DeathBirdsFly1", "CTF",1,1,24,-1);
|
||||
//addRotationMap("Scarabrae_nef", "CTF",1,0,28,-1);
|
||||
addRotationMap("aabaa", "CTF",1,1,28,-1);
|
||||
addRotationMap("TWL_Reversion", "CTF",1,1,28,-1);
|
||||
addRotationMap("Horde", "CTF",1,0,24,-1);
|
||||
addRotationMap("CloakofNightV", "CTF",1,0,24,-1);
|
||||
//addRotationMap("TWL2_Ruined", "CTF",1,1,18,-1);
|
||||
//addRotationMap("Glade", "CTF",1,1,28,-1);
|
||||
//addRotationMap("Pantheon", "CTF",1,0,20,-1);
|
||||
//addRotationMap("Archipelago", "CTF",1,0,20,-1);
|
||||
//addRotationMap("Sangre_de_Grado", "CTF",1,0,20,-1);
|
||||
|
||||
//DMP Mappack
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
addRotationMap("DMP_Agroleon", "CTF",1,1,18,28);
|
||||
addRotationMap("DMP_Astro", "CTF",1,0,16,26);
|
||||
addRotationMap("DMP_BastardForge", "CTF",1,1,8,28);
|
||||
addRotationMap("DMP_BitterGorge", "CTF",1,0,24,-1);
|
||||
addRotationMap("DMP_Bunkered", "CTF",1,0,6,14);
|
||||
addRotationMap("DMP_Cinerarium", "CTF",1,1,-1,20);
|
||||
addRotationMap("DMP_DermCity", "CTF",1,0,-1,-1);
|
||||
addRotationMap("DMP_Embers", "CTF",1,0,-1,14);
|
||||
addRotationMap("DMP_EmeraldSpit", "CTF",1,0,10,20);
|
||||
addRotationMap("DMP_FaceCrossing", "CTF",1,0,10,20);
|
||||
addRotationMap("DMP_Hoth", "CTF",1,1,26,-1);
|
||||
addRotationMap("DMP_IceGiant", "CTF",1,0,20,32);
|
||||
addRotationMap("DMP_IsleDeBatalla", "CTF",1,0,10,20);
|
||||
addRotationMap("DMP_LavaGods", "CTF",1,0,10,20);
|
||||
addRotationMap("DMP_Magellan", "CTF",1,1,10,28);
|
||||
addRotationMap("DMP_MoonDance", "CTF",1,1,12,32);
|
||||
addRotationMap("DMP_Pantheon", "CTF",1,0,16,24);
|
||||
addRotationMap("DMP_Paranoia", "CTF",1,0,6,10);
|
||||
addRotationMap("DMP_Pariah", "CTF",1,1,8,24);
|
||||
addRotationMap("DMP_PipeDream", "CTF",1,0,8,16);
|
||||
addRotationMap("DMP_RavineV", "CTF",1,0,12,28);
|
||||
addRotationMap("DMP_ScorchedEarth", "CTF",1,0,24,-1);
|
||||
addRotationMap("DMP_SimpleFlagArena", "CTF",1,0,-1,12);
|
||||
addRotationMap("DMP_SpinCycle", "CTF",1,1,-1,16);
|
||||
addRotationMap("DMP_StarFall", "CTF",1,0,-1,16);
|
||||
addRotationMap("DMP_Tyre", "CTF",1,1,16,-1);
|
||||
addRotationMap("DMP_Wasteland", "CTF",1,0,10,20);
|
||||
|
||||
addRotationMap("SC_Normal", "CTF",1,0,-1,16);
|
||||
//addRotationMap("SC_Badlands", "CTF",1,0,-1,16);
|
||||
//addRotationMap("SC_Desert", "CTF",1,0,-1,16);
|
||||
//addRotationMap("SC_Lush", "CTF",1,0,-1,16);
|
||||
addRotationMap("SC_Ice", "CTF",1,1,-1,16);
|
||||
addRotationMap("SC_Night", "CTF",1,0,-1,16);
|
||||
//addRotationMap("DX_Badlands", "CTF",1,0,10,20);
|
||||
//addRotationMap("DX_Desert", "CTF",1,0,10,20);
|
||||
addRotationMap("DX_Ice", "CTF",1,1,10,28);
|
||||
//addRotationMap("HO_Badlands", "CTF",1,1,8,24);
|
||||
//addRotationMap("HO_Desert", "CTF",1,0,8,24);
|
||||
addRotationMap("HO_Ice", "CTF",1,1,8,28);
|
||||
addRotationMap("HO_Lush", "CTF",1,0,8,24);
|
||||
addRotationMap("Attrition", "CTF",1,0,-1,10);
|
||||
//addRotationMap("Chasmaclysmic", "CTF",1,1,-1,-1);
|
||||
//addRotationMap("DBS_Smoothed", "CTF",1,0,-1,-1);
|
||||
addRotationMap("PuliVeivari", "CTF",1,0,-1,-1);
|
||||
addRotationMap("PlanetX", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Ravine", "CTF",1,1,-1,-1);
|
||||
addRotationMap("Stripmine", "CTF",1,0,-1,-1);
|
||||
|
||||
//Not In Rotation - Not Voteable
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//addRotationMap("Sandstorm", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Starfallen", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Stonehenge_nef", "CTF",1,0,-1,-1);
|
||||
addRotationMap("Extractor", "CTF",1,0,16,-1);
|
||||
//addRotationMap("AstersDescent", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Azoth", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("BattleGrove", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Durango", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("DustLust", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("IceGulch", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("MountainMist", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Peak", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Pendulum", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("S5_Misadventure", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("S8_CentralDogma", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("S8_Mountking", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("S8_Zilch", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL2_CloakOfNight", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_BaNsHee", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_Boss", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_NoShelter", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_Clusterfuct", "CTF",1,0,-1,-1);
|
||||
addRotationMap("TWL_Curtilage", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_Deserted", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_Frostclaw", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_Neve", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_Ramparts", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_Sandstorm", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("TWL_WoodyMyrk", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("OctoberRust", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("DevilsElbow", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("CloudCity", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Damnation", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("DeathBirdsFly", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Desiccator", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("DustToDust", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Katabatic", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Quagmire", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Recalescence", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Reversion", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("RiverDance", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Sanctuary", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("ThinIce", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Tombstone", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Broadside_nef", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Camelland", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("HighTrepidation", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("SmallDesertofDeath", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("BasinFury", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Cadaver", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("EivoItoxico", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Einfach", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("PicnicTable", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Hostility", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("HighWire", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("CloudBurst", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("CloseCombat", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("DesertofDeath_nef", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Gorgon", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Magmatic", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Sub-zero", "CTF",1,0,-1,-1);
|
||||
|
||||
|
||||
// Custom
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("CoconutFury", "CTF",1,0,-1,-1);
|
||||
addRotationMap("CinderCone", "CTF",1,0,-1,-1);
|
||||
addRotationMap("Sector1", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Slamnation", "CTF",0,0,-1,-1);
|
||||
//addRotationMap("MountaintopMayhem", "CTF",0,0,-1,-1);
|
||||
|
||||
addRotationMap("ChasmClash", "CTF",1,0,-1,14);
|
||||
//addRotationMap("FrostBite", "CTF",1,0,-1,-1);
|
||||
//addRotationMap("Lapiths", "CTF",1,0,-1,-1);
|
||||
addRotationMap("GreenLawn", "CTF",1,1,12,32);
|
||||
addRotationMap("OuterWilds", "CTF",1,1,-1,12);
|
||||
addRotationMap("Jettisoned", "CTF",1,0,-1,10);
|
||||
addRotationMap("Moonwalk", "CTF",1,1,12,-1);
|
||||
addRotationMap("Drafts", "CTF",1,1,-1,12);
|
||||
//addRotationMap("IslaHermano", "CTF",1,0,-1,-1);
|
||||
addRotationMap("DermCrossingDeluxe", "CTF",1,0,-1,-1);
|
||||
addRotationMap("DaftGulch", "CTF",1,1,16,24);
|
||||
addRotationMap("Triad", "CTF",1,0,12,20);
|
||||
addRotationMap("Vaubania", "CTF",1,0,-1,12);
|
||||
addRotationMap("VanDamnedCTF", "CTF",1,1,-1,14);
|
||||
addRotationMap("HillKingCTF", "CTF",1,1,-1,18);
|
||||
addRotationMap("Bonespur", "CTF",1,1,-1,14);
|
||||
addRotationMap("Bridgepoint", "CTF",1,0,-1,18);
|
||||
addRotationMap("Narcolepsy", "CTF",1,1,-1,20);
|
||||
addRotationMap("WhiteDwarfDeluxe", "CTF",1,0,-1,14);
|
||||
addRotationMap("SmallSpit", "CTF",1,1,-1,20);
|
||||
addRotationMap("MisadventureV2", "CTF",1,1,12,28);
|
||||
addRotationMap("El_Fin", "CTF",1,1,-1,14);
|
||||
addRotationMap("HogansRun24", "CTF",1,0,-1,14);
|
||||
addRotationMap("SignalDX", "CTF",1,0,8,24);
|
||||
|
||||
// _ _ _ _ _ _
|
||||
// | | | | | | | | (_) |
|
||||
// | | __ _| | ___ __ __ _| |__ | |__ _| |_
|
||||
// | | / _` | |/ / '__/ _` | '_ \| '_ \| | __|
|
||||
// | |___| (_| | <| | | (_| | |_) | |_) | | |_
|
||||
// |______\__,_|_|\_\_| \__,_|_.__/|_.__/|_|\__|
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//In Rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("VaubanLak", "Lakrabbit",1,1,8,-1);
|
||||
addRotationMap("MiniSunDried", "Lakrabbit",1,1,-1,12);
|
||||
addRotationMap("Sundance", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("TWL_BeachBlitzLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("DesertofDeathLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("Raindance_nefLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("SunDriedLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("SkinnyDipLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("SaddiesHill", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("HavenLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("LushLak", "Lakrabbit",1,1,8,-1);
|
||||
addRotationMap("BoxLak", "Lakrabbit",1,1,-1,10);
|
||||
addRotationMap("TitaniaLak", "Lakrabbit",1,0,8,-1);
|
||||
addRotationMap("TibbawLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("InfernusLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("S8_GeothermalLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("CankerLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("DustRunLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("CrossfiredLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("CloakofLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("SpectreLak", "Lakrabbit",1,1,-1,-1);
|
||||
|
||||
//Voteable, But not in rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("TreasureIslandLak", "Lakrabbit",1,1,-1,-1);
|
||||
addRotationMap("Sulfide", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("FrozenFuryLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("Arrakis", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("EquinoxLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("PhasmaDustLak", "Lakrabbit",1,0,-1,12);
|
||||
addRotationMap("GodsRiftLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("SolsDescentLak", "Lakrabbit",1,0,-1,-1);
|
||||
addRotationMap("Crater71Lak", "Lakrabbit",1,0,6,-1);
|
||||
|
||||
//Not Voteable, Not in rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//addRotationMap("EscaladeLak", "Lakrabbit",1,0,-1,-1);
|
||||
//addRotationMap("MagmaticLak", "Lakrabbit",1,0,-1,-1);
|
||||
//addRotationMap("HillsOfSorrow", "Lakrabbit",1,0,-1,-1);
|
||||
//addRotationMap("TWL2_MuddySwampLak", "Lakrabbit",1,0,-1,-1);
|
||||
//addRotationMap("SandStormLak", "Lakrabbit",1,0,-1,-1);
|
||||
//addRotationMap("BeggarsRunLak", "Lakrabbit",1,0,-1,-1);
|
||||
//addRotationMap("DamnnationLak", "Lakrabbit",1,0,-1,-1);
|
||||
|
||||
|
||||
// _ _____ _______ ______
|
||||
// | | / ____|__ __| ____|
|
||||
// | | | | | | | |__
|
||||
// | | | | | | | __|
|
||||
// | |___| |____ | | | |
|
||||
// |______\_____| |_| |_|
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//In Rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
addRotationMap("DangerousCrossingLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("SmallCrossingLT", "LCTF",1,0,-1,12);
|
||||
addRotationMap("DireLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("RoundTheMountainLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("CirclesEdgeLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("TenebrousCTF", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("TheFray", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("SignalLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("S5_DamnationLT", "LCTF",1,0,8,-1);
|
||||
addRotationMap("S5_Icedance", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("S5_Mordacity", "LCTF",1,1,10,-1);
|
||||
addRotationMap("S5_SilenusLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("TWL2_CanyonCrusadeDeluxeLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("TWL2_HildebrandLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("TWL2_SkylightLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("TWL_FeignLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("TWL_RollercoasterLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("TWL_StonehengeLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("TWL_WilderZoneLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("oasisintensity", "LCTF",1,1,-1,10);
|
||||
addRotationMap("berlard", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("RaindanceLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("SmallTimeLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("ArenaDome", "LCTF",1,1,-1,10);
|
||||
addRotationMap("Bulwark", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("Discord", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("S5_MassiveLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("Blink", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("HillSideLT", "LCTF",1,1,-1,10);
|
||||
addRotationMap("IcePick", "LCTF",1,1,-1,16);
|
||||
addRotationMap("OsIrisLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("GrassyKnollLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("TWL2_MuddySwamp", "LCTF",1,0,8,-1);
|
||||
addRotationMap("SandyRunLT", "LCTF",1,0,-1,12);
|
||||
addRotationMap("Sentry", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("DMP_Cinerarium", "LCTF",1,1,-1,14);
|
||||
addRotationMap("Exhumed", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("S8_ZilchLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("TWL_BeachBlitzLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("FrozenHopeLT", "LCTF",1,1,-1,-1);
|
||||
//addRotationMap("Confusco", "LCTF",1,0,6,-1);
|
||||
addRotationMap("TWL2_JaggedClawLT", "LCTF",1,1,-1,-1);
|
||||
|
||||
//Voteable, But not in rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("BeggarsRunLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("S5_WoodymyrkLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("S8_Opus", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("TWL_DangerousCrossing", "LCTF",1,0,-1,-1);
|
||||
|
||||
//DMP Mappack
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
addRotationMap("AttritionLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("RushLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("HillKingLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("DMP_BastardForgeLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("VanDamnedLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("DMP_Paranoia", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("DMP_SpincycleLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("Ravine", "LCTF",1,1,-1,-1);
|
||||
// addRotationMap("DX_Badlands", "LCTF",1,0,-1,-1);
|
||||
// addRotationMap("DX_Desert", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("DX_Ice", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("PipeDreamLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("DMP_LavaGods", "LCTF",1,0,10,20);
|
||||
addRotationMap("DMP_StarFallLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("DMP_BunkeredLT", "LCTF",1,1,-1,12);
|
||||
addRotationMap("DMP_PariahLT", "LCTF",1,1,-1,-1);
|
||||
|
||||
//Not Voteable, Not in rotation
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//addRotationMap("SurrealLT", "LCTF",1,0,-1,-1);
|
||||
addRotationMap("DuelersDelight", "LCTF",1,0,-1,12);
|
||||
addRotationMap("SmallSpit", "LCTF",1,1,-1,14);
|
||||
addRotationMap("BonespurLT", "LCTF",1,1,-1,14);
|
||||
addRotationMap("Bridgepoint", "LCTF",1,1,-1,14);
|
||||
addRotationMap("NarcolepsyLT", "LCTF",1,1,-1,14);
|
||||
addRotationMap("WhiteDwarfDeluxeLT", "LCTF",1,0,-1,14);
|
||||
addRotationMap("ClusterUnFuct", "LCTF",1,1,8,-1);
|
||||
addRotationMap("OuterWildsLT", "LCTF",1,1,-1,12);
|
||||
addRotationMap("Drafts", "LCTF",1,1,-1,12);
|
||||
addRotationMap("DermCrossingDeluxeLT", "LCTF",1,1,-1,-1);
|
||||
addRotationMap("SuperiorWaterworks", "LCTF",1,0,-1,12);
|
||||
addRotationMap("FrozenForgeLT", "LCTF",1,1,-1,20);
|
||||
addRotationMap("TWL2_CelerityLT", "LCTF",1,1,-1,20);
|
||||
addRotationMap("El_FinLT", "LCTF",1,1,-1,14);
|
||||
addRotationMap("CapriLT", "LCTF",1,1,-1,14);
|
||||
addRotationMap("RunenmachtLT", "LCTF",1,1,-1,14);
|
||||
|
||||
|
||||
// _____ _ _ _ _
|
||||
// | __ \ | | | | | | | |
|
||||
// | | | | ___ __ _| |_| |__ _ __ ___ __ _| |_ ___| |__
|
||||
// | | | |/ _ \/ _` | __| '_ \| '_ ` _ \ / _` | __/ __| '_ \
|
||||
// | |__| | __/ (_| | |_| | | | | | | | | (_| | || (__| | | |
|
||||
// |_____/ \___|\__,_|\__|_| |_|_| |_| |_|\__,_|\__\___|_| |_|
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
addRotationMap("RaspDM", "DM",1,1,8,-1);
|
||||
addRotationMap("EntombedDM", "DM",1,1,-1,-1);
|
||||
addRotationMap("IceDomeDM", "DM",1,1,-1,-1);
|
||||
addRotationMap("HoofToeDM", "DM",1,1,6,-1);
|
||||
addRotationMap("ArenaDomeDM", "DM",1,1,-1,-1);
|
||||
addRotationMap("VulcansWrathDM", "DM",1,1,-1,-1);
|
||||
addRotationMap("RampartsDM", "DM",1,1,-1,-1);
|
||||
addRotationMap("ShrineDM", "DM",1,1,-1,12);
|
||||
addRotationMap("LiveBaitDM", "DM",1,1,-1,-1);
|
||||
addRotationMap("FourSquareDM", "DM",1,1,-1,10);
|
||||
addRotationMap("BrigDM", "DM",1,1,-1,8);
|
||||
addRotationMap("PitsDM", "DM",1,1,-1,10);
|
||||
addRotationMap("RingofFireDM", "DM",1,1,-1,10);
|
||||
addRotationMap("GorgonDM", "DM",1,1,-1,10);
|
||||
|
||||
|
||||
// _____ _
|
||||
// | __ \ | |
|
||||
// | | | |_ _ ___| |
|
||||
// | | | | | | |/ _ \ |
|
||||
// | |__| | |_| | __/ |
|
||||
// |_____/ \__,_|\___|_|
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//addRotationMap("AgentsOfFortune", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Casern_Cavite", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Equinox", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Escalade", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Fracas", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Invictus", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("MyrkWood", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Oasis", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Pyroclasm", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Rasp", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("SunDried", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Talus", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Underhill", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Whiteout", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("Tombstone", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("VaubanLak", "Duel",1,1,-1,-1);
|
||||
//addRotationMap("DesertofDeathLak", "Duel",1,1,-1,-1);
|
||||
|
||||
|
||||
|
||||
// _____ _
|
||||
// / ____(_)
|
||||
// | (___ _ ___ __ _ ___
|
||||
// \___ \| |/ _ \/ _` |/ _ \
|
||||
// ____) | | __/ (_| | __/
|
||||
// |_____/|_|\___|\__, |\___|
|
||||
// __/ |
|
||||
// |___/
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//addRotationMap("Alcatraz", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("BridgeTooFar", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("Caldera", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("Gauntlet", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("IceBound", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("Isleofman", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("Masada", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("Respite", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("Trident", "Siege",1,1,-1,-1);
|
||||
//addRotationMap("UltimaThule", "Siege",1,1,-1,-1);
|
||||
|
||||
|
||||
|
||||
// _ _ _
|
||||
// | | | | | |
|
||||
// | |__| |_ _ _ __ | |_ ___ _ __ ___
|
||||
// | __ | | | | '_ \| __/ _ \ '__/ __|
|
||||
// | | | | |_| | | | | || __/ | \__ \
|
||||
// |_| |_|\__,_|_| |_|\__\___|_| |___/
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
//addRotationMap("MiniSunDried","Hunters",1,1,-1,-1);
|
||||
//addRotationMap("DustToDust","Hunters",1,1,-1,-1);
|
||||
465
Classic/prefs/mapRotation.cs
Normal file
465
Classic/prefs/mapRotation.cs
Normal file
|
|
@ -0,0 +1,465 @@
|
|||
//To use this file add a new map with the following rules:
|
||||
//1. Find the file name, ending in .mis (ie BeggarsRun.mis)
|
||||
//2. Add a line with this syntact: addRotationMap(filename, gametype, %voteable, %cycle, %min. %max);
|
||||
//Example: addRotationMap("MAP_NAME","MAP_MODE",VOTEABLE,IN-ROTATION,MINIMUM_PLAYERS,MAXIMUM_PLAYERS);
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("SC_Normal","CTF",true,false,-1,16);
|
||||
//addRotationMap("SC_Badlands","CTF",true,false,-1,16);
|
||||
//addRotationMap("SC_Desert","CTF",true,false,-1,16);
|
||||
//addRotationMap("SC_Lush","CTF",true,false,-1,16);
|
||||
addRotationMap("SC_Ice","CTF",true,true,-1,16);
|
||||
addRotationMap("SC_Night","CTF",true,false,-1,16);
|
||||
addRotationMap("TWL_DangerousCrossing","CTF",true,false,-1,20);
|
||||
//addRotationMap("DX_Badlands","CTF",true,false,-1,20);
|
||||
//addRotationMap("DX_Desert","CTF",true,false,-1,20);
|
||||
addRotationMap("DX_Ice","CTF",true,true,-1,20);
|
||||
addRotationMap("HighOctane","CTF",true,false,10,24);
|
||||
//addRotationMap("HO_Badlands","CTF",true,true,10,24);
|
||||
//addRotationMap("HO_Desert","CTF",true,false,10,24);
|
||||
addRotationMap("HO_Ice","CTF",true,true,10,24);
|
||||
addRotationMap("HO_Lush","CTF",true,false,10,24);
|
||||
addRotationMap("TWL2_CanyonCrusadeDeluxe","CTF",true,true,-1,-1);
|
||||
addRotationMap("TWL2_Skylight","CTF",true,false,-1,12);
|
||||
addRotationMap("TWL2_Hildebrand","CTF",true,true,-1,18);
|
||||
addRotationMap("RoundTheMountain","CTF",true,true,-1,14);
|
||||
addRotationMap("oasisintensity","CTF",true,true,-1,12);
|
||||
addRotationMap("Machineeggs","CTF",true,true,-1,10);
|
||||
addRotationMap("Mac_FlagArena","CTF",true,false,-1,10);
|
||||
addRotationMap("SmallTimeCTF","CTF",true,true,-1,12);
|
||||
addRotationMap("ArenaDome","CTF",true,true,-1,10);
|
||||
addRotationMap("Bulwark","CTF",true,true,-1,12);
|
||||
addRotationMap("Discord","CTF",true,true,-1,16);
|
||||
addRotationMap("Sentry","CTF",true,true,-1,12);
|
||||
addRotationMap("FrozenHope","CTF",true,true,8,12);
|
||||
addRotationMap("ClusterUnFuct","CTF",true,true,8,12);
|
||||
addRotationMap("Zilch","CTF",true,true,6,12);
|
||||
addRotationMap("SuperHappyBouncyFunTime","CTF",true,false,-1,12);
|
||||
addRotationMap("SuperiorWaterworks","CTF",true,true,-1,10);
|
||||
//addRotationMap("TWL2_FrozenHope","CTF",true,false,-1,12);
|
||||
//addRotationMap("Island","CTF",true,true,-1,12);
|
||||
//addRotationMap("TitForTat","CTF",true,true,-1,12);
|
||||
//addRotationMap("TWL_OsIris","CTF",true,false,8,18);
|
||||
//addRotationMap("FrostPipe","CTF",true,false,-1,12);
|
||||
//addRotationMap("Raspian","CTF",true,false,8,12);
|
||||
//addRotationMap("Exhumed","CTF",true,false,-1,12);
|
||||
//addRotationMap("Blink","CTF",true,false,-1,10);
|
||||
//addRotationMap("Firestorm","CTF",true,false,-1,12);
|
||||
//addRotationMap("SmallMelee","CTF",true,false,-1,12);
|
||||
//addRotationMap("Attrition","CTF",true,true,-1,10);
|
||||
//addRotationMap("Coppersky","CTF",true,false,8,20);
|
||||
//addRotationMap("S5_Silenus","CTF",true,false,8,20);
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("TWL_Stonehenge","CTF",true,false,8,-1);
|
||||
addRotationMap("TWL_Feign","CTF",true,true,8,32);
|
||||
addRotationMap("TWL_Snowblind","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL_BeggarsRun","CTF",true,true,14,-1);
|
||||
addRotationMap("TWL_WilderZone","CTF",true,false,12,-1);
|
||||
addRotationMap("TWL_Titan","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL_SubZero","CTF",true,true,14,-1);
|
||||
addRotationMap("TWL_DeadlyBirdsSong","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL_Pandemonium","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL2_MidnightMayhemDeluxe","CTF",true,true,12,-1);
|
||||
addRotationMap("TWL2_JaggedClaw","CTF",true,true,12,-1);
|
||||
addRotationMap("TWL2_Ocular","CTF",true,true,14,-1);
|
||||
addRotationMap("TWL2_Drifts","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL2_Celerity","CTF",true,true,12,-1);
|
||||
addRotationMap("Minotaur","CTF",true,false,12,-1);
|
||||
addRotationMap("S5_Centaur","CTF",true,false,-1,12);
|
||||
addRotationMap("S5_Mordacity","CTF",true,true,10,32);
|
||||
addRotationMap("S5_Damnation","CTF",true,false,12,-1);
|
||||
addRotationMap("S5_Massive","CTF",true,true,12,-1);
|
||||
addRotationMap("S5_Mimicry","CTF",true,true,12,-1);
|
||||
addRotationMap("S5_Icedance","CTF",true,true,10,-1);
|
||||
addRotationMap("S5_Woodymyrk","CTF",true,true,10,-1);
|
||||
addRotationMap("S8_Cardiac","CTF",true,true,14,-1);
|
||||
addRotationMap("TheFray","CTF",true,false,10,32);
|
||||
addRotationMap("berlard","CTF",true,true,12,32);
|
||||
addRotationMap("Headstone","CTF",true,true,12,32);
|
||||
addRotationMap("Signal","CTF",true,false,12,32);
|
||||
addRotationMap("TenebrousCTF","CTF",true,false,10,24);
|
||||
addRotationMap("Prismatic","CTF",true,false,12,32);
|
||||
addRotationMap("IceRidge_nef","CTF",true,true,12,-1);
|
||||
addRotationMap("CirclesEdge","CTF",true,false,12,-1);
|
||||
addRotationMap("Surreal","CTF",true,false,20,-1);
|
||||
addRotationMap("Norty","CTF",true,true,14,-1);
|
||||
addRotationMap("Confusco","CTF",true,false,14,32);
|
||||
addRotationMap("Vauban","CTF",true,false,14,-1);
|
||||
//addRotationMap("TWL2_MuddySwamp","CTF",true,false,12,32);
|
||||
//addRotationMap("TWL2_Drorck","CTF",true,false,12,32);
|
||||
//addRotationMap("TWL2_Crevice","CTF",true,false,12,32);
|
||||
//addRotationMap("TWL2_IceDagger","CTF",true,false,12,32);
|
||||
//addRotationMap("S5_HawkingHeat","CTF",true,false,12,32);
|
||||
//addRotationMap("S5_Drache","CTF",true,true,12,32);
|
||||
//addRotationMap("S5_Sherman","CTF",true,false,20,-1);
|
||||
//addRotationMap("S5_Reynard","CTF",true,false,14,32);
|
||||
//addRotationMap("S8_Opus","CTF",true,false,10,32);
|
||||
//addRotationMap("ShortFall","CTF",true,false,12,32);
|
||||
//addRotationMap("Disjointed","CTF",true,false,12,32);
|
||||
//addRotationMap("HighAnxiety","CTF",true,false,-1,12);
|
||||
//addRotationMap("Dire","CTF",true,false,10,32);
|
||||
//addRotationMap("Draco","CTF",true,false,12,32);
|
||||
//addRotationMap("Mirage","CTF",true,false,12,32);
|
||||
//addRotationMap("TWL_WhiteDwarf","CTF",true,false,14,-1);
|
||||
//addRotationMap("Cinereous","CTF",true,false,14,-1);
|
||||
//addRotationMap("Fallout","CTF",true,false,14,32);
|
||||
//addRotationMap("TheClocktower","CTF",true,false,10,20);
|
||||
//addRotationMap("SoylentGreen","CTF",true,false,10,20);
|
||||
//addRotationMap("Ramparts","CTF",true,false,14,-1);
|
||||
//addRotationMap("Blastside_nef","CTF",true,false,14,-1);
|
||||
//addRotationMap("NatureMagic","CTF",true,false,14,-1);
|
||||
//addRotationMap("TWL_Damnation","CTF",true,false,12,32);
|
||||
//addRotationMap("Snowcone","CTF",true,false,12,32);
|
||||
//addRotationMap("JadeValley","CTF",true,false,12,32);
|
||||
//addRotationMap("Burstside","CTF",true,false,12,32);
|
||||
//addRotationMap("Infernus","CTF",true,false,14,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("TWL_Katabatic","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL_Crossfire","CTF",true,true,14,-1);
|
||||
addRotationMap("TWL_BeachBlitz","CTF",true,true,12,-1);
|
||||
addRotationMap("TWL_Magmatic","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL_Harvester","CTF",true,true,20,-1);
|
||||
addRotationMap("TWL2_BlueMoon","CTF",true,true,14,-1);
|
||||
addRotationMap("TWL2_Bleed","CTF",true,false,20,-1);
|
||||
addRotationMap("TWL2_Dissention","CTF",true,false,14,-1);
|
||||
addRotationMap("TWL2_Magnum","CTF",true,true,12,-1);
|
||||
addRotationMap("TWL2_FrozenGlory","CTF",true,true,12,-1);
|
||||
addRotationMap("Logans_Run","CTF",true,false,12,32);
|
||||
addRotationMap("Rollercoaster_nef","CTF",true,true,10,-1);
|
||||
addRotationMap("HostileLoch","CTF",true,false,14,32);
|
||||
addRotationMap("Raindance_nef","CTF",true,true,12,-1);
|
||||
addRotationMap("LandingParty","CTF",true,false,12,20);
|
||||
addRotationMap("ShockRidge","CTF",true,false,12,-1);
|
||||
addRotationMap("Nightdance","CTF",true,false,14,32);
|
||||
addRotationMap("TWL_Abaddon","CTF",true,false,20,-1);
|
||||
addRotationMap("Agorazscium","CTF",true,false,12,32);
|
||||
addRotationMap("Circleofstones","CTF",true,true,14,-1);
|
||||
addRotationMap("Ruined","CTF",true,false,14,-1);
|
||||
addRotationMap("Fenix","CTF",true,false,20,-1);
|
||||
addRotationMap("Hillside","CTF",true,false,24,-1);
|
||||
addRotationMap("TWL_Slapdash","CTF",true,false,24,-1);
|
||||
addRotationMap("BerylBasin","CTF",true,false,14,-1);
|
||||
addRotationMap("DeathBirdsFly1","CTF",true,false,24,-1);
|
||||
addRotationMap("aabaa","CTF",true,false,28,-1);
|
||||
addRotationMap("CloakofNightV","CTF",true,false,24,-1);
|
||||
addRotationMap("Sangre_de_Grado","CTF",true,false,20,-1);
|
||||
addRotationMap("FullCircle","CTF",true,false,14,-1);
|
||||
//addRotationMap("Lakefront","CTF",true,false,14,-1);
|
||||
//addRotationMap("S8_Geothermal","CTF",true,false,12,32);
|
||||
//addRotationMap("TWL_Frozen","CTF",true,false,20,-1);
|
||||
//addRotationMap("TWL_Chokepoint","CTF",true,false,12,24);
|
||||
//addRotationMap("TWL_Starfallen","CTF",true,false,12,24);
|
||||
//addRotationMap("TWL_Reversion","CTF",true,false,28,-1);
|
||||
//addRotationMap("TWL2_RoughLand","CTF",true,false,16,-1);
|
||||
//addRotationMap("TWL2_Ruined","CTF",true,true,18,-1);
|
||||
//addRotationMap("SandOcean","CTF",true,false,16,24);
|
||||
//addRotationMap("ks_braistv","CTF",true,true,12,24);
|
||||
//addRotationMap("Horde","CTF",true,false,24,-1);
|
||||
//addRotationMap("Glade","CTF",true,true,28,-1);
|
||||
//addRotationMap("Pantheon","CTF",true,false,20,-1);
|
||||
//addRotationMap("Archipelago","CTF",true,false,20,-1);
|
||||
//addRotationMap("TitanV","CTF",true,false,12,28);
|
||||
//addRotationMap("The_Calm","CTF",true,false,12,24);
|
||||
//addRotationMap("Surro","CTF",true,false,18,24);
|
||||
//addRotationMap("HarvestDance","CTF",true,false,24,-1);
|
||||
//addRotationMap("WindyGap","CTF",true,false,24,-1);
|
||||
addRotationMap("Scarabrae_nef","CTF",true,false,28,-1);
|
||||
//addRotationMap("StarIce","CTF",true,false,12,24);
|
||||
//addRotationMap("FilteredDust","CTF",true,false,12,24);
|
||||
//addRotationMap("Choke","CTF",true,false,12,24);
|
||||
//addRotationMap("ConstructionYard","CTF",true,false,12,24);
|
||||
//addRotationMap("AcidRain","CTF",true,false,12,24);
|
||||
//addRotationMap("SubZeroV","CTF",true,true,12,24);
|
||||
//-------------------------------------------------------------------------------
|
||||
//addRotationMap("DMP_Agroleon","CTF",true,true,18,28);
|
||||
//addRotationMap("DMP_Astro","CTF",true,false,16,26);
|
||||
addRotationMap("DMP_BastardForge","CTF",true,true,12,32);
|
||||
addRotationMap("DMP_BitterGorge","CTF",true,false,24,-1);
|
||||
//addRotationMap("DMP_Bunkered","CTF",true,true,6,14);
|
||||
addRotationMap("DMP_Cinerarium","CTF",true,true,-1,14);
|
||||
//addRotationMap("DMP_DermCity","CTF",true,false,-1,-1);
|
||||
//addRotationMap("DMP_Embers","CTF",true,false,-1,14);
|
||||
//addRotationMap("DMP_EmeraldSpit","CTF",true,false,10,20);
|
||||
//addRotationMap("DMP_FaceCrossing","CTF",true,false,10,20);
|
||||
addRotationMap("DMP_Hoth","CTF",true,false,24,-1);
|
||||
//addRotationMap("DMP_IceGiant","CTF",true,false,20,32);
|
||||
//addRotationMap("DMP_IsleDeBatalla","CTF",true,false,10,20);
|
||||
//addRotationMap("DMP_LavaGods","CTF",true,false,10,20);
|
||||
addRotationMap("DMP_Magellan","CTF",true,false,12,32);
|
||||
addRotationMap("DMP_MoonDance","CTF",true,true,12,-1);
|
||||
//addRotationMap("DMP_Pantheon","CTF",true,false,16,24);
|
||||
addRotationMap("DMP_Paranoia","CTF",true,false,-1,16);
|
||||
addRotationMap("DMP_Pariah","CTF",true,true,8,32);
|
||||
addRotationMap("DMP_PipeDream","CTF",true,false,8,24);
|
||||
addRotationMap("DMP_RavineV","CTF",true,false,12,32);
|
||||
//addRotationMap("DMP_ScorchedEarth","CTF",true,false,24,-1);
|
||||
addRotationMap("DMP_SimpleFlagArena","CTF",true,true,-1,14);
|
||||
addRotationMap("DMP_SpinCycle","CTF",true,true,-1,12);
|
||||
addRotationMap("DMP_StarFall","CTF",true,true,-1,14);
|
||||
addRotationMap("DMP_Tyre","CTF",true,true,14,-1);
|
||||
//addRotationMap("DMP_Wasteland","CTF",true,false,12,32);
|
||||
//addRotationMap("Chasmaclysmic","CTF",true,true,-1,-1);
|
||||
//addRotationMap("DBS_Smoothed","CTF",true,false,-1,-1);
|
||||
//addRotationMap("PuliVeivari","CTF",true,false,-1,-1);
|
||||
//addRotationMap("PlanetX","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Ravine","CTF",true,true,-1,-1);
|
||||
//addRotationMap("Stripmine","CTF",true,false,-1,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
//addRotationMap("S5_Misadventure","CTF",true,false,-1,-1);
|
||||
//addRotationMap("S8_CentralDogma","CTF",true,false,-1,-1);
|
||||
//addRotationMap("S8_Mountking","CTF",true,false,-1,-1);
|
||||
//addRotationMap("S8_Zilch","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL2_CloakOfNight","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_BaNsHee","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Boss","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_NoShelter","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Clusterfuct","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Curtilage","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Deserted","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Frostclaw","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Neve","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Ramparts","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_Sandstorm","CTF",true,false,-1,-1);
|
||||
//addRotationMap("TWL_WoodyMyrk","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Sandstorm","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Starfallen","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Stonehenge_nef","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Extractor","CTF",true,false,16,-1);
|
||||
//addRotationMap("AstersDescent","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Azoth","CTF",true,false,-1,-1);
|
||||
//addRotationMap("BattleGrove","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Durango","CTF",true,false,-1,-1);
|
||||
//addRotationMap("DustLust","CTF",true,false,-1,-1);
|
||||
//addRotationMap("IceGulch","CTF",true,false,-1,-1);
|
||||
//addRotationMap("MountainMist","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Peak","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Pendulum","CTF",true,false,-1,-1);
|
||||
//addRotationMap("OctoberRust","CTF",true,false,-1,-1);
|
||||
//addRotationMap("DevilsElbow","CTF",true,false,-1,-1);
|
||||
//addRotationMap("CloudCity","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Damnation","CTF",true,false,-1,-1);
|
||||
//addRotationMap("DeathBirdsFly","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Desiccator","CTF",true,false,-1,-1);
|
||||
//addRotationMap("DustToDust","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Katabatic","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Quagmire","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Recalescence","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Reversion","CTF",true,false,-1,-1);
|
||||
//addRotationMap("RiverDance","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Sanctuary","CTF",true,false,-1,-1);
|
||||
//addRotationMap("ThinIce","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Tombstone","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Broadside_nef","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Camelland","CTF",true,false,-1,-1);
|
||||
//addRotationMap("HighTrepidation","CTF",true,false,-1,-1);
|
||||
//addRotationMap("SmallDesertofDeath","CTF",true,false,-1,-1);
|
||||
//addRotationMap("BasinFury","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Cadaver","CTF",true,false,-1,-1);
|
||||
//addRotationMap("EivoItoxico","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Einfach","CTF",true,false,-1,-1);
|
||||
//addRotationMap("PicnicTable","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Hostility","CTF",true,false,-1,-1);
|
||||
//addRotationMap("HighWire","CTF",true,false,-1,-1);
|
||||
//addRotationMap("CloudBurst","CTF",true,false,-1,-1);
|
||||
//addRotationMap("CloseCombat","CTF",true,false,-1,-1);
|
||||
//addRotationMap("DesertofDeath_nef","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Gorgon","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Magmatic","CTF",true,false,-1,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("SmallSpit","CTF",true,true,-1,12);
|
||||
addRotationMap("MisadventureV2","CTF",true,false,12,32);
|
||||
addRotationMap("El_Fin","CTF",true,true,-1,14);
|
||||
addRotationMap("HogansRun24","CTF",true,false,14,-1);
|
||||
addRotationMap("VanDamnedCTF","CTF",true,true,-1,12);
|
||||
addRotationMap("HillKingCTF","CTF",true,true,-1,12);
|
||||
addRotationMap("DaftGulch","CTF",true,false,12,32);
|
||||
addRotationMap("Triad","CTF",true,false,12,32);
|
||||
addRotationMap("Moonwalk","CTF",true,true,12,-1);
|
||||
addRotationMap("GreenLawn","CTF",true,true,12,-1);
|
||||
addRotationMap("OuterWilds","CTF",true,true,-1,14);
|
||||
addRotationMap("CoconutFury","CTF",true,false,-1,32);
|
||||
addRotationMap("TWL2_FrozenGlory_Thawed","CTF",true,false,12,-1);
|
||||
addRotationMap("Sector1","CTF",true,false,-1,-1);
|
||||
//addRotationMap("CinderCone","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Slamnation","CTF",false,false,-1,-1);
|
||||
//addRotationMap("MountaintopMayhem","CTF",false,false,-1,-1);
|
||||
//addRotationMap("ChasmClash","CTF",true,false,-1,14);
|
||||
//addRotationMap("FrostBite","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Lapiths","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Jettisoned","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Drafts","CTF",true,true,-1,12);
|
||||
//addRotationMap("IslaHermano","CTF",true,false,-1,-1);
|
||||
//addRotationMap("DermCrossingDeluxe","CTF",true,false,-1,-1);
|
||||
//addRotationMap("Vaubania","CTF",true,true,-1,12);
|
||||
//addRotationMap("Bonespur","CTF",true,true,-1,14);
|
||||
//addRotationMap("Bridgepoint","CTF",true,false,-1,18);
|
||||
//addRotationMap("Narcolepsy","CTF",true,false,-1,20);
|
||||
//addRotationMap("WhiteDwarfDeluxe","CTF",true,true,-1,14);
|
||||
//addRotationMap("SignalDX","CTF",true,false,8,24);
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("VaubanLak","Lakrabbit",true,false,8,-1);
|
||||
addRotationMap("MiniSunDried","Lakrabbit",true,true,-1,12);
|
||||
addRotationMap("Sundance","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("TWL_BeachBlitzLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("DesertofDeathLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("Raindance_nefLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("SunDriedLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("SkinnyDipLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("SaddiesHill","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("HavenLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("LushLak","Lakrabbit",true,false,8,-1);
|
||||
addRotationMap("BoxLak","Lakrabbit",true,true,-1,10);
|
||||
addRotationMap("TitaniaLak","Lakrabbit",true,false,8,-1);
|
||||
addRotationMap("TibbawLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("InfernusLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("S8_GeothermalLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("CankerLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("DustRunLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("CrossfiredLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("CloakofLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("SpectreLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("TreasureIslandLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("Sulfide","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("FrozenFuryLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("Arrakis","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("EquinoxLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("PhasmaDustLak","Lakrabbit",true,true,-1,12);
|
||||
addRotationMap("GodsRiftLak","Lakrabbit",true,false,-1,-1);
|
||||
addRotationMap("SolsDescentLak","Lakrabbit",true,true,-1,-1);
|
||||
addRotationMap("Crater71Lak","Lakrabbit",true,false,6,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
//addRotationMap("EscaladeLak","Lakrabbit",true,false,-1,-1);
|
||||
//addRotationMap("MagmaticLak","Lakrabbit",true,false,-1,-1);
|
||||
//addRotationMap("HillsOfSorrow","Lakrabbit",true,false,-1,-1);
|
||||
//addRotationMap("TWL2_MuddySwampLak","Lakrabbit",true,false,-1,-1);
|
||||
//addRotationMap("SandStormLak","Lakrabbit",true,false,-1,-1);
|
||||
//addRotationMap("BeggarsRunLak","Lakrabbit",true,false,-1,-1);
|
||||
//addRotationMap("DamnnationLak","Lakrabbit",true,false,-1,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("DangerousCrossingLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("DX_Ice","LCTF",true,true,-1,-1);
|
||||
//addRotationMap("DX_Badlands","LCTF",true,false,-1,-1);
|
||||
//addRotationMap("DX_Desert","LCTF",true,false,-1,-1);
|
||||
addRotationMap("SmallCrossingLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("DireLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("RoundTheMountainLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("TWL_FeignLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("TWL_RollercoasterLT","LCTF",true,false,10,-1);
|
||||
addRotationMap("TWL_StonehengeLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("TWL_WilderZoneLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("TWL_BeachBlitzLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("TWL2_CanyonCrusadeDeluxeLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("TWL2_HildebrandLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("TWL2_SkylightLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("TWL2_JaggedClawLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("S5_MassiveLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("S5_DamnationLT","LCTF",true,false,8,-1);
|
||||
addRotationMap("S5_Icedance","LCTF",true,true,10,-1);
|
||||
addRotationMap("S5_Mordacity","LCTF",true,true,10,-1);
|
||||
addRotationMap("S8_ZilchLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("CirclesEdgeLT","LCTF",true,true,10,-1);
|
||||
addRotationMap("TenebrousCTF","LCTF",true,false,-1,-1);
|
||||
addRotationMap("oasisintensity","LCTF",true,true,-1,10);
|
||||
addRotationMap("berlard","LCTF",true,true,-1,-1);
|
||||
addRotationMap("RaindanceLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("SmallTimeLT","LCTF",true,false,-1,-1);
|
||||
addRotationMap("ArenaDome","LCTF",true,true,-1,10);
|
||||
addRotationMap("Bulwark","LCTF",true,true,-1,-1);
|
||||
addRotationMap("Discord","LCTF",true,true,-1,-1);
|
||||
addRotationMap("HillSideLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("IcePick","LCTF",true,true,-1,16);
|
||||
addRotationMap("OsIrisLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("GrassyKnollLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("SandyRunLT","LCTF",true,false,-1,12);
|
||||
addRotationMap("Sentry","LCTF",true,true,-1,-1);
|
||||
addRotationMap("Exhumed","LCTF",true,false,-1,-1);
|
||||
addRotationMap("FrozenHopeLT","LCTF",true,true,-1,-1);
|
||||
//addRotationMap("TheFray","LCTF",true,false,-1,-1);
|
||||
//addRotationMap("SignalLT","LCTF",true,false,-1,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("HillKingLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("DMP_BastardForgeLT","LCTF",true,true,10,-1);
|
||||
addRotationMap("DMP_Paranoia","LCTF",true,false,-1,-1);
|
||||
addRotationMap("DMP_SpincycleLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("DMP_Cinerarium","LCTF",true,true,-1,-1);
|
||||
addRotationMap("DMP_StarFallLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("DMP_BunkeredLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("DMP_PariahLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("DMP_SimpleFlagArena","LCTF",true,true,-1,-1);
|
||||
addRotationMap("VanDamnedLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("Ravine","LCTF",true,true,10,-1);
|
||||
addRotationMap("PipeDreamLT","LCTF",true,true,-1,-1);
|
||||
//addRotationMap("DMP_LavaGods","LCTF",true,false,10,20);
|
||||
//addRotationMap("AttritionLT","LCTF",true,true,-1,-1);
|
||||
//addRotationMap("RushLT","LCTF",true,false,-1,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("SmallSpit","LCTF",true,true,10,-1);
|
||||
addRotationMap("ClusterUnFuct","LCTF",true,true,10,-1);
|
||||
addRotationMap("OuterWildsLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("SuperiorWaterworks","LCTF",true,true,-1,-1);
|
||||
addRotationMap("FrozenForgeLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("El_FinLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("CapriLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("RunenmachtLT","LCTF",true,true,-1,-1);
|
||||
addRotationMap("Machineeggs","LCTF",true,true,-1,-1);
|
||||
addRotationMap("Mac_FlagArena","LCTF",true,false,-1,-1);
|
||||
addRotationMap("SuperHappyBouncyFuntime","LCTF",true,false,-1,-1);
|
||||
addRotationMap("NarcolepsyLT","LCTF",true,false,10,-1);
|
||||
//addRotationMap("BonespurLT","LCTF",true,true,-1,14);
|
||||
//addRotationMap("DuelersDelight","LCTF",true,false,-1,12);
|
||||
//addRotationMap("TWL2_CelerityLT","LCTF",true,true,-1,20);
|
||||
//addRotationMap("Drafts","LCTF",true,true,-1,12);
|
||||
//addRotationMap("DermCrossingDeluxeLT","LCTF",true,true,-1,-1);
|
||||
//addRotationMap("Bridgepoint","LCTF",true,true,-1,14);
|
||||
//addRotationMap("WhiteDwarfDeluxeLT","LCTF",true,false,-1,14);
|
||||
//addRotationMap("SurrealLT","LCTF",true,false,-1,-1);
|
||||
//addRotationMap("Confusco","LCTF",true,false,6,-1);
|
||||
//addRotationMap("TWL2_MuddySwamp","LCTF",true,false,8,-1);
|
||||
//addRotationMap("Blink","LCTF",true,false,-1,-1);
|
||||
//addRotationMap("S8_Opus","LCTF",true,false,-1,-1);
|
||||
//addRotationMap("BeggarsRunLT","LCTF",true,false,-1,-1);
|
||||
//addRotationMap("S5_WoodymyrkLT","LCTF",true,false,-1,-1);
|
||||
//addRotationMap("S5_SilenusLT","LCTF",true,false,-1,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
addRotationMap("RaspDM","DM",true,true,8,-1);
|
||||
addRotationMap("EntombedDM","DM",true,true,-1,-1);
|
||||
addRotationMap("IceDomeDM","DM",true,true,-1,-1);
|
||||
addRotationMap("HoofToeDM","DM",true,true,6,-1);
|
||||
addRotationMap("ArenaDomeDM","DM",true,true,-1,-1);
|
||||
addRotationMap("VulcansWrathDM","DM",true,true,-1,-1);
|
||||
addRotationMap("RampartsDM","DM",true,true,-1,-1);
|
||||
addRotationMap("ShrineDM","DM",true,true,-1,12);
|
||||
addRotationMap("LiveBaitDM","DM",true,true,-1,-1);
|
||||
addRotationMap("FourSquareDM","DM",true,true,-1,10);
|
||||
addRotationMap("BrigDM","DM",true,true,-1,8);
|
||||
addRotationMap("PitsDM","DM",true,true,-1,10);
|
||||
addRotationMap("RingofFireDM","DM",true,true,-1,10);
|
||||
addRotationMap("GorgonDM","DM",true,true,-1,10);
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//addRotationMap("Alcatraz","Siege",true,true,-1,-1);
|
||||
//addRotationMap("Caldera","Siege",true,true,-1,-1);
|
||||
//addRotationMap("Gauntlet","Siege",true,true,-1,-1);
|
||||
//addRotationMap("IceBound","Siege",true,true,-1,-1);
|
||||
//addRotationMap("Masada","Siege",true,true,-1,-1);
|
||||
//addRotationMap("Respite","Siege",true,true,-1,-1);
|
||||
//addRotationMap("UltimaThule","Siege",true,true,-1,-1);
|
||||
//addRotationMap("BridgeTooFar","Siege",true,true,-1,-1);
|
||||
//addRotationMap("IsleOfMan","Siege",true,true,-1,-1);
|
||||
//addRotationMap("Trident","Siege",true,true,-1,-1);
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//-------------------------------------------------------------------------------
|
||||
//addRotationMap("MiniSunDried","Hunters",true,true,-1,-1);
|
||||
//addRotationMap("DustToDust","Hunters",true,true,-1,-1);
|
||||
|
|
@ -5,7 +5,6 @@ $Host::AllowAdminKick = 1;
|
|||
$Host::AllowAdminPassVote = 1;
|
||||
$Host::allowAdminPlayerVotes = "0";
|
||||
$Host::AllowAdminStopVote = 1;
|
||||
$Host::AllowAdminStopVotes = 1;
|
||||
$Host::AllowAdminVotes = 1;
|
||||
$Host::AllowMapScript = "True";
|
||||
$Host::AllowPlayerVoteChangeMission = 1;
|
||||
|
|
@ -56,7 +55,7 @@ $Host::ClassicLoadVRamChanges = 0;
|
|||
$Host::ClassicLogEchoEnabled = 0;
|
||||
$Host::ClassicMaxVotes = 3;
|
||||
$Host::ClassicMaxTelepads = 3;
|
||||
$Host::ClassicMOTD = "<color:3cb4b4><font:Sui Generis:22>Tribes 2 Test\n<color:3cb4b4><font:Univers:16>Server brought to you via Commuity Effort\n<color:3cb4b4><font:Univers:16>Celebrating 20 Years of Tribes2!";
|
||||
$Host::ClassicMOTD = "<color:3cb4b4><font:Sui Generis:22>Tribes 2 Test\n<color:3cb4b4><font:Univers:16>Server brought to you via Commuity Effort\n<color:3cb4b4><font:Univers:16>Celebrating 25 Years of Tribes2!";
|
||||
$Host::ClassicMOTDLines = 3;
|
||||
$Host::ClassicMOTDTime = 6;
|
||||
$Host::ClassicNoNullVoiceSpam = 0;
|
||||
|
|
@ -123,7 +122,7 @@ $Host::LoadScreenColor3 = "33CCCC";
|
|||
$Host::LoadScreenLine1 = "Join Discord:";
|
||||
$Host::LoadScreenLine1_Msg = "<a:playt2.com/discord>playt2.com/discord</a>";
|
||||
$Host::LoadScreenLine2 = "Game Modes:";
|
||||
$Host::LoadScreenLine2_Msg = "LakRabbit, Capture the Flag, DeathMatch, (Light Only) Capture the Flag";
|
||||
$Host::LoadScreenLine2_Msg = "Lak, CTF, DeathMatch, LCTF";
|
||||
$Host::LoadScreenLine3 = "Get Mappacks:";
|
||||
$Host::LoadScreenLine3_Msg = "<a:playt2.com/mappacks>playt2.com/mappacks</a>";
|
||||
$Host::LoadScreenLine4 = "Server Location:";
|
||||
|
|
@ -132,7 +131,7 @@ $Host::LoadScreenLine5 = "Server Hosted:";
|
|||
$Host::LoadScreenLine5_Msg = "Internet";
|
||||
$Host::LoadScreenLine6 = "Server Github:";
|
||||
$Host::LoadScreenLine6_Msg = "https://github.com/ChocoTaco1/TacoServer";
|
||||
$Host::LoadScreenMOTD1 = "Celebrating 20 Years of Tribes2!";
|
||||
$Host::LoadScreenMOTD1 = "Celebrating 25 Years of Tribes2!";
|
||||
$Host::LoadScreenMOTD2 = "Come play Arena on Wednesday Nights!";
|
||||
$Host::LoadScreenMOTD3 = "Lak crowd early evenings after work during the week.";
|
||||
$Host::LoadScreenMOTD4 = "Big CTF games Fridays, Saturdays, and Sundays!";
|
||||
|
|
@ -160,10 +159,10 @@ $Host::PUGautoPassword = 0;
|
|||
$Host::PUGPassword = "pickup";
|
||||
$Host::PUGpasswordAlwaysOn = 0;
|
||||
$Host::PureServer = 0;
|
||||
$Host::ServerRules1 = "\c2if\c4(\c3%client.attitude \c4$= \c5\"fun\" \c4&& \c3%client.Llama_Grabs \c4< \c51\c4) {";
|
||||
$Host::ServerRules2 = " \c1keepTeamsBalanced\c4(\c2%client\c4); \c1dontSwitch2WinningTeam(\c2%client\c4); }";
|
||||
$Host::ServerRules3 = "\c2else if\c4(\c3%client.attitude \c4$= \c5\"too_serious\"\c4) {";
|
||||
$Host::ServerRules4 = " \c1try2HaveFun\c4(\c2%client, %attitude\c4); \c1thisIsPubServer\c4(\c2%client, %attitude\c4); }";
|
||||
$Host::ServerRules1 = "1. Don\'t Llama Grab. (Grab flag slowly)";
|
||||
$Host::ServerRules2 = "2. Don\'t sit on teams and AFK. Move to observer.";
|
||||
$Host::ServerRules3 = "3. Don\'t Excessively teamkill or teamkill on purpose.";
|
||||
$Host::ServerRules4 = "4. Don\'t spam chat with inappropriate topics. Play the game.";
|
||||
$Host::ShowEndingPlayerScores = 1;
|
||||
$Host::ShowIngamePlayerScores = 1;
|
||||
$Host::Siege::Halftime = 20000;
|
||||
|
|
@ -191,7 +190,7 @@ $Host::TN::echo = 1;
|
|||
$Host::TournamentMode = 0;
|
||||
$Host::useCustomSkins = 1;
|
||||
$Host::VoteCooldown = 120;
|
||||
$Host::VoteDelayTime = 120;
|
||||
$Host::VoteDelayTime = 60;
|
||||
$Host::VotePassPercent = 60;
|
||||
$Host::VoteSpread = 20;
|
||||
$Host::VoteTime = "45";
|
||||
|
|
|
|||
|
|
@ -952,6 +952,9 @@ function CTFGame::gameOver(%game)
|
|||
}
|
||||
for(%j = 1; %j <= %game.numTeams; %j++)
|
||||
$TeamScore[%j] = 0;
|
||||
|
||||
%game.voteOT = 0;
|
||||
%game.overtime = 0;
|
||||
}
|
||||
|
||||
function CTFGame::onClientDamaged(%game, %clVictim, %clAttacker, %damageType, %implement, %damageLoc)
|
||||
|
|
@ -1266,8 +1269,15 @@ function CTFGame::checkTimeLimit(%game, %forced)
|
|||
{
|
||||
%teamOneCaps = mFloor($TeamScore[1] / %game.SCORE_PER_TEAM_FLAG_CAP);
|
||||
%teamTwoCaps = mFloor($TeamScore[2] / %game.SCORE_PER_TEAM_FLAG_CAP);
|
||||
if(%teamOneCaps == %teamTwoCaps && $CTF::Overtime && $Host::TournamentMode){ //Setting exists
|
||||
if(!%game.overtime){
|
||||
if(%game.scheduleVote !$= "" && !%game.voteOT && !$Host::TournamentMode)
|
||||
{
|
||||
messageAll('MsgOvertime', '\c2Vote Overtime Initiated.~wfx/powered/turret_heavy_activate.wav');
|
||||
%game.voteOT = 1;
|
||||
}
|
||||
else if(%teamOneCaps == %teamTwoCaps && $CTF::Overtime && (($TeamRank[1, count] + $TeamRank[2, count]) > 6))
|
||||
{
|
||||
if(!%game.overtime)
|
||||
{
|
||||
%game.overtime = 1;
|
||||
if($CTF::Overtime > 1){ %s = "s"; }
|
||||
messageAll('MsgOvertime', '\c2Sudden-Death Overtime Initiated: %1 Minute%2 Remaining~wfx/powered/turret_heavy_activate.wav', $CTF::Overtime, %s);
|
||||
|
|
@ -1275,18 +1285,30 @@ function CTFGame::checkTimeLimit(%game, %forced)
|
|||
UpdateClientTimes($CTF::Overtime * 60 * 1000);
|
||||
EndCountdown($CTF::Overtime * 60 * 1000);
|
||||
%game.timeCheck = %game.schedule($CTF::Overtime * 60 * 1000, "timeLimitReached");
|
||||
|
||||
//Cancel vote if any
|
||||
if(%game.scheduleVote !$= "")
|
||||
{
|
||||
messageAll('closeVoteHud', "");
|
||||
cancel(Game.scheduleVote);
|
||||
Game.scheduleVote = "";
|
||||
Game.kickClient = "";
|
||||
clearVotes();
|
||||
|
||||
//Stop vote chimes
|
||||
for(%i = 0; %i < $Host::EnableVoteSoundReminders; %i++)
|
||||
{
|
||||
if(isEventPending(Game.voteReminder[%i]))
|
||||
cancel(Game.voteReminder[%i]);
|
||||
Game.voteReminder[%i] = "";
|
||||
}
|
||||
messageAll('MsgOvertime', "\c2Vote has been cancelled due to Sudden-Death Overtime.");
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(%game.scheduleVote !$= ""){
|
||||
if(!%game.voteOT){
|
||||
messageAll('MsgOvertime', '\c2Vote Overtime Initiated.~wfx/powered/turret_heavy_activate.wav');
|
||||
%game.voteOT = 1;
|
||||
}
|
||||
}
|
||||
else{
|
||||
%game.timeLimitReached();
|
||||
}
|
||||
else
|
||||
{
|
||||
%game.timeLimitReached();
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
@ -2017,7 +2039,7 @@ function CTFGame::awardScoreKill(%game, %killerID)
|
|||
function checkVehicleCamping( %team )
|
||||
{
|
||||
%position = $flagPos[%team];
|
||||
%radius = 15;
|
||||
%radius = 5;
|
||||
InitContainerRadiusSearch(%position, %radius, $TypeMasks::VehicleObjectType );
|
||||
|
||||
while ((%vehicle = containerSearchNext()) != 0)
|
||||
|
|
|
|||
|
|
@ -689,6 +689,9 @@ function LCTFGame::gameOver(%game)
|
|||
|
||||
if (isActivePackage(LCTFOneMine))
|
||||
deactivatePackage(LCTFOneMine);
|
||||
|
||||
%game.voteOT = 0;
|
||||
%game.overtime = 0;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1566,8 +1569,15 @@ function LCTFGame::checkTimeLimit(%game, %forced)
|
|||
{
|
||||
%teamOneCaps = mFloor($TeamScore[1] / %game.SCORE_PER_TEAM_FLAG_CAP);
|
||||
%teamTwoCaps = mFloor($TeamScore[2] / %game.SCORE_PER_TEAM_FLAG_CAP);
|
||||
if(%teamOneCaps == %teamTwoCaps && $LCTF::Overtime && $Host::TournamentMode){ //Setting exists
|
||||
if(!%game.overtime){
|
||||
if(%game.scheduleVote !$= "" && !%game.voteOT && !$Host::TournamentMode)
|
||||
{
|
||||
messageAll('MsgOvertime', '\c2Vote Overtime Initiated.~wfx/powered/turret_heavy_activate.wav');
|
||||
%game.voteOT = 1;
|
||||
}
|
||||
else if(%teamOneCaps == %teamTwoCaps && $LCTF::Overtime && (($TeamRank[1, count] + $TeamRank[2, count]) > 6))
|
||||
{
|
||||
if(!%game.overtime)
|
||||
{
|
||||
%game.overtime = 1;
|
||||
if($LCTF::Overtime > 1){ %s = "s"; }
|
||||
messageAll('MsgOvertime', '\c2Sudden-Death Overtime Initiated: %1 Minute%2 Remaining~wfx/powered/turret_heavy_activate.wav', $LCTF::Overtime, %s);
|
||||
|
|
@ -1575,18 +1585,30 @@ function LCTFGame::checkTimeLimit(%game, %forced)
|
|||
UpdateClientTimes($LCTF::Overtime * 60 * 1000);
|
||||
EndCountdown($LCTF::Overtime * 60 * 1000);
|
||||
%game.timeCheck = %game.schedule($LCTF::Overtime * 60 * 1000, "timeLimitReached");
|
||||
|
||||
//Cancel vote if any
|
||||
if(%game.scheduleVote !$= "")
|
||||
{
|
||||
messageAll('closeVoteHud', "");
|
||||
cancel(Game.scheduleVote);
|
||||
Game.scheduleVote = "";
|
||||
Game.kickClient = "";
|
||||
clearVotes();
|
||||
|
||||
//Stop vote chimes
|
||||
for(%i = 0; %i < $Host::EnableVoteSoundReminders; %i++)
|
||||
{
|
||||
if(isEventPending(Game.voteReminder[%i]))
|
||||
cancel(Game.voteReminder[%i]);
|
||||
Game.voteReminder[%i] = "";
|
||||
}
|
||||
messageAll('MsgOvertime', "\c2Vote has been cancelled due to Sudden-Death Overtime.");
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(%game.scheduleVote !$= ""){
|
||||
if(!%game.voteOT){
|
||||
messageAll('MsgOvertime', '\c2Vote Overtime Initiated.~wfx/powered/turret_heavy_activate.wav');
|
||||
%game.voteOT = 1;
|
||||
}
|
||||
}
|
||||
else{
|
||||
%game.timeLimitReached();
|
||||
}
|
||||
else
|
||||
{
|
||||
%game.timeLimitReached();
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
|
|||
|
|
@ -166,6 +166,23 @@
|
|||
// 1 - Players get 999 or unlimited DiscJumps
|
||||
//
|
||||
|
||||
datablock ItemData(LakFakeFlag2) : flag
|
||||
{
|
||||
lightColor = "0.1 0.1 0.9 1.0";
|
||||
className = LakFakeFlag;
|
||||
lightTime = "100";
|
||||
lightRadius = "5";
|
||||
};
|
||||
|
||||
datablock ItemData(LakFakeFlag4) : LakFakeFlag2
|
||||
{
|
||||
lightColor = "0.9 0.9 0.1 1.0";
|
||||
};
|
||||
|
||||
datablock ItemData(LakFakeFlag8) : LakFakeFlag2
|
||||
{
|
||||
lightColor = "0.1 0.9 0.1 1.0";
|
||||
};
|
||||
|
||||
package LakRabbitGame {
|
||||
|
||||
|
|
@ -417,7 +434,12 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am
|
|||
|
||||
// no splash damage vote
|
||||
if(Game.noSplashDamage && %percentDam < 98 && $lastObjExplode && !$lastObjExplode.isHandNade && %damageType != $DamageType::Mine)
|
||||
%amount = 0.0;
|
||||
{
|
||||
if(!%targetObject.holdingFlag)
|
||||
%amount = 0.0;
|
||||
else if(((getSimTime() - %targetObject.client.rabbitSplash) < 15000)) //Turn on splash for rabbit after not making a shot for an alotted time
|
||||
%amount = 0.0;
|
||||
}
|
||||
|
||||
switch$(%damageType)
|
||||
{
|
||||
|
|
@ -435,54 +457,106 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am
|
|||
%sound = %defaultSound;
|
||||
}
|
||||
|
||||
// special knockback if you hit too close, max 15% chance (point blank).. 5% at 30meters, 1% chance for any MA
|
||||
if(%targetObject.holdingFlag)
|
||||
{
|
||||
%tgPos = %targetObject.getPosition();
|
||||
%terrHeight = getTerrainHeight(getWords(%tgPos,0,1));
|
||||
%playerHeight = mAbs(getWord(%tgPos,2) - %terrHeight);
|
||||
}
|
||||
|
||||
// Slap based on a Disc headshot
|
||||
//%chance = mFloor(25 - %distance/3);
|
||||
//if(%ma && getRandom(1,50) <= %chance && %targetObject.client.headshot)
|
||||
if(%targetObject.holdingFlag && %playerHeight >= 100)
|
||||
{
|
||||
// tr2 style flag drop.. it does kill the rabbit
|
||||
|
||||
%chance = mFloor(20 - %distance/%playerHeight);
|
||||
if(%chance <= 0) %chance = 1;
|
||||
|
||||
//Normal Slap
|
||||
%chance = mFloor(15 - %distance/3);
|
||||
if(%chance <= 0) %chance = 1;
|
||||
if(%ma && getRandom(1,100) <= %chance)
|
||||
{
|
||||
Game.playerDroppedFlag(%targetObject);
|
||||
|
||||
if(%ma && getRandom(1,100) <= %chance)
|
||||
%position = %targetObject.getPosition();
|
||||
%count = 40;
|
||||
%ttl = 60000;
|
||||
%player = %targetObject;
|
||||
if( %position $= "" )
|
||||
{
|
||||
if(%targetObject.holdingFlag)
|
||||
{
|
||||
Game.playerDroppedFlag(%targetObject);
|
||||
//Added so cloak is turned off when slapped.
|
||||
%targetObject.setCloaked(false);
|
||||
%targetObject.freeDJ = 1;
|
||||
}
|
||||
if(%sourceObject.holdingFlag && Game.duelMode)
|
||||
{
|
||||
duelBonus(%sourceObject.client);
|
||||
$LakDamaged[%targetObject.client] = 0;
|
||||
}
|
||||
|
||||
// lower damage and make invincible to ground damage to make it a little more fun
|
||||
%amount = 0.01;
|
||||
%targetObject.setKnockback(true);
|
||||
%targetObject.schedule(15000, "setKnockback", false);
|
||||
|
||||
%p = %targetObject.getWorldBoxCenter();
|
||||
%muzzleVec = %sourceObject.getMuzzleVector(0);
|
||||
%impulseVec = VectorScale(%muzzleVec, 25000);
|
||||
%targetObject.applyImpulse(%p, %impulseVec);
|
||||
%sound = '~wfx/misc/slapshot.wav';
|
||||
|
||||
%slapmsg = getRandom(1,3);
|
||||
switch$(%slapmsg)
|
||||
{
|
||||
case 1:
|
||||
messageAll('msgSlapmessage','\c0%1 wonders what the five fingers said to the face.', %targetObject.client.name );
|
||||
case 2:
|
||||
messageAll('msgSlapmessage','\c0%1 gets slapped the heck out!', %targetObject.client.name );
|
||||
case 3:
|
||||
messageAll('msgSlapmessage','\c0%1 is taking a short tour around the map.', %targetObject.client.name );
|
||||
}
|
||||
error("No position passed!");
|
||||
return 0;
|
||||
}
|
||||
if( %count <= 0 )
|
||||
{
|
||||
error("Number of flags to spew must be greater than 0!");
|
||||
return 0;
|
||||
}
|
||||
|
||||
%flagArr[0] = LakFakeFlag8;
|
||||
%flagArr[1] = LakFakeFlag2;
|
||||
%flagArr[2] = LakFakeFlag4;
|
||||
|
||||
while( %count > 0 )
|
||||
{
|
||||
%index = mFloor(getRandom() * 3);
|
||||
// throwDummyFlag(location, Datablock);
|
||||
LakRabbitGame::throwDummyFlag(%position, %flagArr[%index], %player, %ttl);
|
||||
%count--;
|
||||
}
|
||||
|
||||
%targetObject.blowup();
|
||||
%targetObject.scriptKill($DamageType::Explosion);
|
||||
%sound = '~wfx/misc/MA1.wav';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// special knockback if you hit too close, max 15% chance (point blank).. 5% at 30meters, 1% chance for any MA
|
||||
|
||||
// Slap based on a Disc headshot
|
||||
//%chance = mFloor(25 - %distance/3);
|
||||
//if(%ma && getRandom(1,50) <= %chance && %targetObject.client.headshot)
|
||||
|
||||
//Normal Slap
|
||||
%chance = mFloor(15 - %distance/3);
|
||||
if(%chance <= 0) %chance = 1;
|
||||
|
||||
if(%ma && getRandom(1,100) <= %chance)
|
||||
{
|
||||
if(%targetObject.holdingFlag)
|
||||
{
|
||||
Game.playerDroppedFlag(%targetObject);
|
||||
//Added so cloak is turned off when slapped.
|
||||
%targetObject.setCloaked(false);
|
||||
%targetObject.freeDJ = 1;
|
||||
}
|
||||
if(%sourceObject.holdingFlag && Game.duelMode)
|
||||
{
|
||||
duelBonus(%sourceObject.client);
|
||||
$LakDamaged[%targetObject.client] = 0;
|
||||
}
|
||||
|
||||
// lower damage and make invincible to ground damage to make it a little more fun
|
||||
%amount = 0.01;
|
||||
%targetObject.setKnockback(true);
|
||||
%targetObject.schedule(15000, "setKnockback", false);
|
||||
|
||||
%p = %targetObject.getWorldBoxCenter();
|
||||
%muzzleVec = %sourceObject.getMuzzleVector(0);
|
||||
%impulseVec = VectorScale(%muzzleVec, 25000);
|
||||
%targetObject.applyImpulse(%p, %impulseVec);
|
||||
%sound = '~wfx/misc/slapshot.wav';
|
||||
|
||||
%slapmsg = getRandom(1,3);
|
||||
switch$(%slapmsg)
|
||||
{
|
||||
case 1:
|
||||
messageAll('msgSlapmessage','\c0%1 wonders what the five fingers said to the face.', %targetObject.client.name );
|
||||
case 2:
|
||||
messageAll('msgSlapmessage','\c0%1 gets slapped the heck out!', %targetObject.client.name );
|
||||
case 3:
|
||||
messageAll('msgSlapmessage','\c0%1 is taking a short tour around the map.', %targetObject.client.name );
|
||||
}
|
||||
}
|
||||
}
|
||||
%weapon = "Disc";
|
||||
case $DamageType::Grenade:
|
||||
if($lastObjExplode.isHandNade) //Hand grenades
|
||||
|
|
@ -746,10 +820,15 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am
|
|||
}
|
||||
|
||||
// borlak -- make a sound when you hit someone
|
||||
if(%sound $= "" && %sourceObject.client.team != %targetObject.client.team)
|
||||
messageClient(%sourceObject.client,'MsgHitSound','~wfx/misc/diagnostic_beep.wav');
|
||||
else if(%sound !$= "")
|
||||
// if(%sound $= "" && %sourceObject.client.team != %targetObject.client.team)
|
||||
// messageClient(%sourceObject.client,'MsgHitSound','~wfx/misc/diagnostic_beep.wav');
|
||||
// else if(%sound !$= ""){
|
||||
if(%sound !$= ""){
|
||||
messageAll('msgSpecialHitSound', %sound);
|
||||
if(%sourceObject.holdingFlag){
|
||||
%sourceObject.client.rabbitSplash = getSimTime();
|
||||
}
|
||||
}
|
||||
|
||||
// borlak -- rabbit should be able to kill heavies/mediums fast(er) in duel mode
|
||||
if(%targetObject.client.armor $= "Heavy" || %targetObject.client.armor $= "Medium")
|
||||
|
|
@ -1905,6 +1984,7 @@ function LakRabbitGame::playerTouchFlag(%game, %player, %flag)
|
|||
cancel(%game.updateFlagThread[%flag]); // z0dd - ZOD, 8/4/02. Cancel this flag's thread to KineticPoet's flag updater
|
||||
%player.freeDJ = 0;
|
||||
%flag.bounced = 0;
|
||||
%player.client.rabbitSplash = getSimTime();
|
||||
|
||||
%player.client.startTime = getSimTime();
|
||||
%player.holdingFlag = %flag;
|
||||
|
|
@ -2017,6 +2097,45 @@ function LakRabbitGame::resetFlag(%game, %flag)
|
|||
cancel(%game.updateFlagThread[%flag]); // z0dd - ZOD, 8/4/02. Cancel this flag's thread to KineticPoet's flag updater
|
||||
}
|
||||
|
||||
function LakRabbitGame::checkTimeLimit(%game, %forced)
|
||||
{
|
||||
// Don't add extra checks:
|
||||
if ( %forced )
|
||||
cancel( %game.timeCheck );
|
||||
|
||||
// if there is no time limit, check back in a minute to see if it's been set
|
||||
if(($Host::TimeLimit $= "") || $Host::TimeLimit == 0)
|
||||
{
|
||||
%game.timeCheck = %game.schedule(20000, "checkTimeLimit");
|
||||
return;
|
||||
}
|
||||
|
||||
%curTimeLeftMS = ($Host::TimeLimit * 60 * 1000) + $missionStartTime - getSimTime();
|
||||
|
||||
if (%curTimeLeftMS <= 0)
|
||||
{
|
||||
if(%game.scheduleVote !$= "" && !%game.voteOT && !$Host::TournamentMode)
|
||||
{
|
||||
messageAll('MsgOvertime', '\c2Vote Overtime Initiated.~wfx/powered/turret_heavy_activate.wav');
|
||||
%game.voteOT = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
%game.timeLimitReached();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(%curTimeLeftMS >= 20000)
|
||||
%game.timeCheck = %game.schedule(20000, "checkTimeLimit");
|
||||
else
|
||||
%game.timeCheck = %game.schedule(%curTimeLeftMS + 1, "checkTimeLimit");
|
||||
|
||||
//now synchronize everyone's clock
|
||||
messageAll('MsgSystemClock', "", $Host::TimeLimit, %curTimeLeftMS);
|
||||
}
|
||||
}
|
||||
|
||||
// ----- These functions are native to Rabbit
|
||||
|
||||
function LakRabbitGame::timeLimitReached(%game)
|
||||
|
|
@ -2092,6 +2211,9 @@ function LakRabbitGame::gameOver(%game)
|
|||
// borlak -- delete variables
|
||||
deleteVariables("$LakFired*");
|
||||
deleteVariables("$LakDamaged*");
|
||||
|
||||
%game.voteOT = 0;
|
||||
%game.overtime = 0;
|
||||
}
|
||||
|
||||
function LakRabbitGame::resetScore(%game, %client)
|
||||
|
|
@ -2617,96 +2739,41 @@ function LakRabbitGame::applyConcussion(%game, %player)
|
|||
%game.dropFlag( %player );
|
||||
}
|
||||
|
||||
//--------------------------------Footnotes---------------------------------------
|
||||
//
|
||||
//
|
||||
//To make vote options work in evo admin mod, demonstration only below
|
||||
//
|
||||
//function serverCmdStartNewVote(%client, %typeName, %arg1, %arg2, %arg3, %arg4, %playerVote)
|
||||
//{
|
||||
// parent::serverCmdStartNewVote(%client, %typeName, %arg1, %arg2, %arg3, %arg4, %playerVote);
|
||||
//
|
||||
// // sonic9k 11/6/2003 - Added support for LakRabbit DuelMode option
|
||||
// //
|
||||
// case "VoteDuelMode":
|
||||
// if( %isAdmin && !%client.ForceVote )
|
||||
// {
|
||||
// adminStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4);
|
||||
// adminLog(%client, " has toggled " @ %arg1 @ " (" @ %arg2 @ ")");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// if(Game.scheduleVote !$= "")
|
||||
// {
|
||||
// messageClient(%client, 'voteAlreadyRunning', '\c2A vote is already in progress.');
|
||||
// return;
|
||||
// }
|
||||
// %actionMsg = ($Host::LakRabbitDuelMode ? "disable Duel mode" : "enable Duel mode");
|
||||
// for(%idx = 0; %idx < ClientGroup.getCount(); %idx++)
|
||||
// {
|
||||
// %cl = ClientGroup.getObject(%idx);
|
||||
// if(!%cl.isAIControlled())
|
||||
// {
|
||||
// messageClient(%cl, 'VoteStarted', '\c2%1 initiated a vote to %2.', %client.name, %actionMsg);
|
||||
// %clientsVoting++;
|
||||
// }
|
||||
// }
|
||||
// playerStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4, %clientsVoting);
|
||||
// }
|
||||
// //
|
||||
// // sonic9k 11/6/2003 - Added support for LakRabbit SplashDamage option
|
||||
// //
|
||||
// case "VoteSplashDamage":
|
||||
// if( %isAdmin && !%client.ForceVote )
|
||||
// {
|
||||
// adminStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4);
|
||||
// adminLog(%client, " has toggled " @ %arg1 @ " (" @ %arg2 @ ")");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// if(Game.scheduleVote !$= "")
|
||||
// {
|
||||
// messageClient(%client, 'voteAlreadyRunning', '\c2A vote is already in progress.');
|
||||
// return;
|
||||
// }
|
||||
// %actionMsg = ($Host::LakRabbitNoSplashDamage ? "enable SplashDamage" : "disable SplashDamage");
|
||||
// for(%idx = 0; %idx < ClientGroup.getCount(); %idx++)
|
||||
// {
|
||||
// %cl = ClientGroup.getObject(%idx);
|
||||
// if(!%cl.isAIControlled())
|
||||
// {
|
||||
// messageClient(%cl, 'VoteStarted', '\c2%1 initiated a vote to %2.', %client.name, %actionMsg);
|
||||
// %clientsVoting++;
|
||||
// }
|
||||
// }
|
||||
// playerStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4, %clientsVoting);
|
||||
// }
|
||||
// //
|
||||
// // chocotaco 8/7/2018 - Added support for LakRabbit Pro option
|
||||
// //
|
||||
// case "VotePro":
|
||||
// if( %isAdmin && !%client.ForceVote )
|
||||
// {
|
||||
// adminStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4);
|
||||
// adminLog(%client, " has toggled " @ %arg1 @ " (" @ %arg2 @ ")");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// if(Game.scheduleVote !$= "")
|
||||
// {
|
||||
// messageClient(%client, 'voteAlreadyRunning', '\c2A vote is already in progress.');
|
||||
// return;
|
||||
// }
|
||||
// %actionMsg = ($Host::LakRabbitPubPro ? "disable Pro mode" : "enable Pro mode");
|
||||
// for(%idx = 0; %idx < ClientGroup.getCount(); %idx++)
|
||||
// {
|
||||
// %cl = ClientGroup.getObject(%idx);
|
||||
// if(!%cl.isAIControlled())
|
||||
// {
|
||||
// messageClient(%cl, 'VoteStarted', '\c2%1 initiated a vote to %2.', %client.name, %actionMsg);
|
||||
// %clientsVoting++;
|
||||
// }
|
||||
// }
|
||||
// playerStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4, %clientsVoting);
|
||||
// }
|
||||
//}
|
||||
function LakRabbitGame::throwDummyFlag(%position, %datablock, %player, %ttl)
|
||||
{
|
||||
%client = %player.client;
|
||||
|
||||
// create a flag and throw it
|
||||
%droppedflag = new Item() {
|
||||
position = %position;
|
||||
rotation = "0 0 1 " @ (getRandom() * 360);
|
||||
scale = "1 1 1";
|
||||
dataBlock = %datablock;
|
||||
collideable = "0";
|
||||
static = "0";
|
||||
rotate = "1";
|
||||
team = "0";
|
||||
isFake = 1;
|
||||
};
|
||||
MissionCleanup.add(%droppedflag);
|
||||
|
||||
%vec = (-1.0 + getRandom() * 2.0) SPC (-1.0 + getRandom() * 2.0) SPC getRandom();
|
||||
%vec = VectorScale(%vec, getrandom(250,1000) + (getRandom() * 300));
|
||||
|
||||
// Add player's velocity
|
||||
if (%player !$= "")
|
||||
{
|
||||
%droppedflag.setCollisionTimeout(%player);
|
||||
%vec = vectorAdd(%vec, %player.getVelocity());
|
||||
}
|
||||
|
||||
%droppedflag.applyImpulse(%pos, %vec);
|
||||
|
||||
%droppedFlag.die = schedule(getrandom(1500,5500), 0, "removeLakFakeFlag", %droppedflag);
|
||||
}
|
||||
|
||||
function removeLakFakeFlag(%flag)
|
||||
{
|
||||
%flag.startFade(600, 0, true);
|
||||
%flag.schedule(601, "delete");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,59 +4,58 @@
|
|||
//From Krash
|
||||
memPatch("756076","6169");
|
||||
|
||||
// Thanks Turkeh
|
||||
// TraversalRoot Console spam fix
|
||||
function suppressTraversalRootPatch()
|
||||
{
|
||||
if($tvpatched)
|
||||
return;
|
||||
//// Thanks Turkeh
|
||||
//// TraversalRoot Console spam fix
|
||||
//function suppressTraversalRootPatch()
|
||||
//{
|
||||
//if($tvpatched)
|
||||
//return;
|
||||
|
||||
warn("Patching traversal root error...");
|
||||
memPatch("56AD8A", "90909090909090909090909090909090909090909090");
|
||||
memPatch("56D114", "90909090909090909090909090909090909090909090");
|
||||
$tvpatched = 1;
|
||||
}
|
||||
//warn("Patching traversal root error...");
|
||||
//memPatch("56AD8A", "90909090909090909090909090909090909090909090");
|
||||
//memPatch("56D114", "90909090909090909090909090909090909090909090");
|
||||
//$tvpatched = 1;
|
||||
//}
|
||||
|
||||
if (!$CmdArmor::Patched)
|
||||
{
|
||||
$CmdArmor::Patched = true;
|
||||
//memPatch("6FC746", "66B8000090906683FE017408ACAA84C075FA89D05F5EC3");
|
||||
memPatch("6FC746", "83FE017408ACAA84C075FA89D05F5EC3");
|
||||
//Removed register size override (cmp si, 1 -> cmp esi, 1) and got rid of
|
||||
//weird NASM garbage code at the beginning. Had a mov ax, 0 which did nothing
|
||||
//and wasn't necessary anyways because of xor eax, eax in the original. It also
|
||||
//generated several NOPs after that for no reason.
|
||||
}
|
||||
//if (!$CmdArmor::Patched)
|
||||
//{
|
||||
//$CmdArmor::Patched = true;
|
||||
////memPatch("6FC746", "66B8000090906683FE017408ACAA84C075FA89D05F5EC3");
|
||||
//memPatch("6FC746", "83FE017408ACAA84C075FA89D05F5EC3");
|
||||
////Removed register size override (cmp si, 1 -> cmp esi, 1) and got rid of
|
||||
////weird NASM garbage code at the beginning. Had a mov ax, 0 which did nothing
|
||||
////and wasn't necessary anyways because of xor eax, eax in the original. It also
|
||||
////generated several NOPs after that for no reason.
|
||||
//}
|
||||
|
||||
function serverCmd(%client)
|
||||
{
|
||||
// Stick your own administrative action code here
|
||||
messageAll('msgAll',"\c3" @ %client.namebase SPC "is attempting to crash the server!");
|
||||
//function serverCmd(%client)
|
||||
//{
|
||||
//// Stick your own administrative action code here
|
||||
//messageAll('msgAll',"\c3" @ %client.namebase SPC "is attempting to crash the server!");
|
||||
|
||||
messageClient(%client, 'onClientBanned', "");
|
||||
messageAllExcept( %client, -1, 'MsgClientDrop', "", %client.name, %client );
|
||||
//messageClient(%client, 'onClientBanned', "");
|
||||
//messageAllExcept( %client, -1, 'MsgClientDrop', "", %client.name, %client );
|
||||
|
||||
// kill and delete this client
|
||||
if( isObject(%client.player) )
|
||||
%client.player.scriptKill(0);
|
||||
//// kill and delete this client
|
||||
//if( isObject(%client.player) )
|
||||
//%client.player.scriptKill(0);
|
||||
|
||||
if ( isObject( %client ) )
|
||||
{
|
||||
%client.setDisconnectReason("You have been banned for attempting to crash the server.");
|
||||
%client.schedule(700, "delete");
|
||||
}
|
||||
//if ( isObject( %client ) )
|
||||
//{
|
||||
//%client.setDisconnectReason("You have been banned for attempting to crash the server.");
|
||||
//%client.schedule(700, "delete");
|
||||
//}
|
||||
|
||||
BanList::add(%client.guid, %client.getAddress(), $Host::BanTime);
|
||||
}
|
||||
//BanList::add(%client.guid, %client.getAddress(), $Host::BanTime);
|
||||
//}
|
||||
|
||||
//Disable UE box on crash
|
||||
//Disable UE box on crash (Tribesnext Preview Unpatched Only)
|
||||
//Used if a clean crash is desired
|
||||
memPatch("7dc7fc","90");
|
||||
//memPatch("7dc7fc","90");
|
||||
//Loops Crash patch (Prevent the Uncaught Exception dialog from appearing)
|
||||
memPatch("006ff376", "909090909090");
|
||||
//memPatch("006ff376", "909090909090");
|
||||
|
||||
//Show Linux Icon in server list
|
||||
//memPatch("5C9628","80CB05");
|
||||
|
||||
//Bahke MPB stability fix
|
||||
//memPatch("614120","9090");
|
||||
//Show no Linux Icon
|
||||
//memPatch("5C9628","80CB01");
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ function VehicleData::onDestroyed(%data, %obj, %prevState)
|
|||
%zVel = (getRandom() * 100.0) + 50.0;
|
||||
%flingVel = %xVel @ " " @ %yVel @ " " @ %zVel;
|
||||
%flingee.applyImpulse(%flingee.getTransform(), %flingVel);
|
||||
echo("got player..." @ %flingee.getClassName());
|
||||
//echo("got player..." @ %flingee.getClassName());
|
||||
%flingee.damage(0, %obj.getPosition(), 0.4, $DamageType::Crash);
|
||||
}
|
||||
}
|
||||
|
|
@ -70,29 +70,13 @@ function VehicleData::onDestroyed(%data, %obj, %prevState)
|
|||
%data.deleteAllMounted(%obj);
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// z0dd - ZOD - Czar, 6/24/02. Move this vehicle out of the way so nothing collides with it.
|
||||
if(%data.getName() $="AssaultVehicle")
|
||||
{
|
||||
// %obj.setFrozenState(true);
|
||||
%obj.schedule(500, "delete"); //was 2000
|
||||
//%data.schedule(500, 'onAvoidCollisions', %obj);
|
||||
%obj.setFrozenState(true);
|
||||
%obj.schedule(2000, "delete"); //was 500
|
||||
%data.schedule(500, 'onAvoidCollisions', %obj);
|
||||
|
||||
//Transfer the vehicle far away
|
||||
%obj.schedule(128, "setPosition", vectorAdd(%obj.getPosition(), "40 -27 10000")); //Lowered: was 500
|
||||
}
|
||||
else if(%data.getName() $="BomberFlyer" || %data.getName() $="MobileBaseVehicle")
|
||||
{
|
||||
// %obj.setFrozenState(true);
|
||||
%obj.schedule(2000, "delete"); //was 2000
|
||||
//%data.schedule(500, 'onAvoidCollisions', %obj);
|
||||
//Transfer the vehicle far away
|
||||
%obj.schedule(128, "setPosition", vectorAdd(%obj.getPosition(), "40 -27 10000")); //Lowered: was 500
|
||||
|
||||
//Transfer the vehicle far away
|
||||
%obj.schedule(128, "setPosition", vectorAdd(%obj.getPosition(), "40 -27 10000")); //Lowered: was 500
|
||||
}
|
||||
else
|
||||
{
|
||||
%obj.setFrozenState(true);
|
||||
%obj.schedule(500, "delete"); //was 500
|
||||
}
|
||||
// -----------------------------------------------------------------------------------------
|
||||
}
|
||||
|
||||
|
|
@ -323,17 +307,6 @@ function serverCmdScopeCommanderMap(%client, %scope)
|
|||
%client.player.ccActive = %scope;
|
||||
}
|
||||
|
||||
//Mortar Throw Reload Fix
|
||||
// function ShapeBase::throwWeapon(%this)
|
||||
// {
|
||||
// if((%this.getMountedImage($WeaponSlot).getName() $= "MortarImage" || %this.getMountedImage($WeaponSlot).getName() $= "MissileLauncherImage" || %this.getMountedImage($WeaponSlot).getName() $= "ShockLanceImage") &&
|
||||
// (%this.getImageState($WeaponSlot) $= "Reload" || %this.getImageState($WeaponSlot) $= "Fire")){
|
||||
// return;
|
||||
// }
|
||||
|
||||
// parent::throwWeapon(%this);
|
||||
// }
|
||||
|
||||
|
||||
// Added object check
|
||||
function VehicleData::damageObject(%data, %targetObject, %sourceObject, %position, %amount, %damageType, %momVec, %theClient, %proj)
|
||||
|
|
@ -433,4 +406,4 @@ if (!isActivePackage(TacoOverrides))
|
|||
// %z = getWord(%impulseVec, 2) / %data.mass;
|
||||
// %vel = %x SPC %y SPC %z;
|
||||
// %this.setVelocity(vectorAdd(%this.getVelocity(), %vel));
|
||||
// }
|
||||
// }
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ function GetTeamCounts(%game)
|
|||
if($countdownStarted && $MatchStarted)
|
||||
{
|
||||
//Variables
|
||||
$TotalTeamPlayerCount = $TeamRank[1, count] + $TeamRank[2, count];
|
||||
$TotalTeamPlayerCount = (Game.class $= "LakRabbitGame") ? $TeamRank[0, count] : ($TeamRank[1, count] + $TeamRank[2, count]);
|
||||
$AllPlayerCount = $HostGamePlayerCount;
|
||||
|
||||
//Observers
|
||||
|
|
|
|||
|
|
@ -502,8 +502,6 @@ function serverCmdStartNewVote(%client, %typeName, %arg1, %arg2, %arg3, %arg4, %
|
|||
{
|
||||
if(%arg1 $= "999") %time = "unlimited"; else %time = %arg1;
|
||||
%msg = %client.nameBase @ " initiated a vote to change the time limit to " @ %time SPC "minutes.";
|
||||
// VoteOvertime
|
||||
StartVOTimeVote(%game);
|
||||
|
||||
$CMHasVoted[%client.guid]++;
|
||||
}
|
||||
|
|
@ -583,11 +581,12 @@ function serverCmdStartNewVote(%client, %typeName, %arg1, %arg2, %arg3, %arg4, %
|
|||
case "stopRunningVote":
|
||||
if(%client.isSuperAdmin || (%client.isAdmin && $Host::AllowAdminStopVote))
|
||||
{
|
||||
if($VOStatus $="InProgress") //Dont allow a stop vote after time has expired, then no new time is set - VoteOverTime
|
||||
{
|
||||
messageClient(%client, "", "\c2Can't stop time vote after time has expired.");
|
||||
return;
|
||||
}
|
||||
// %curTimeLeftMS = ($Host::TimeLimit * 60 * 1000) + $missionStartTime - getSimTime();
|
||||
// if(%curTimeLeftMS <= 0) //Dont allow a stop vote after time has expired, then no new time is set - VoteOverTime
|
||||
// {
|
||||
// messageClient(%client, "", "\c2Can't stop vote after time has expired.");
|
||||
// return;
|
||||
// }
|
||||
|
||||
stopCurrentVote(%client);
|
||||
adminLog(%client, " stopped the vote in progress.");
|
||||
|
|
@ -867,7 +866,7 @@ function serverCmdStartNewVote(%client, %typeName, %arg1, %arg2, %arg3, %arg4, %
|
|||
messageClient(%client, "", "\c2Mines are disabled at this time.");
|
||||
|
||||
if(!%isAdmin || (%isAdmin && %client.ForceVote))
|
||||
%msg = %client.nameBase @ " initiated a vote to " @ (Game.LCTFOneMine == 0 ? "enable" : "disable") @ " one mine mode.";
|
||||
%msg = %client.nameBase @ " initiated a vote to " @ (Game.LCTFOneMine == 1 ? "enable" : "disable") @ " one mine mode.";
|
||||
|
||||
case "showServerRules":
|
||||
if (($Host::ServerRules[1] !$= "") && (!%client.CantView))
|
||||
|
|
@ -1223,8 +1222,6 @@ function DefaultGame::voteChangeTimeLimit( %game, %admin, %newLimit )
|
|||
{
|
||||
messageAll('MsgVotePassed', '\c2The mission time limit was set to %1 minutes by vote.', %display);
|
||||
$Host::TimeLimit = %newLimit;
|
||||
// VoteOvertime
|
||||
ResetVOTimeChanged(%game);
|
||||
// Reset the voted time limit when changing mission
|
||||
$TimeLimitChanged = 1;
|
||||
|
||||
|
|
@ -1243,9 +1240,6 @@ function DefaultGame::voteChangeTimeLimit( %game, %admin, %newLimit )
|
|||
votePercentLog(%newLimit, %typeName, %key, %game.totalVotesFor, %game.totalVotesAgainst, %totalVotes, %game.totalVotesNone);
|
||||
//Show Vote %
|
||||
messageAll('', '\c1Vote %6: \c0Yea: %1 Nay: %2 Abstain: %7 Total: %3 [%4%5]', %game.totalVotesFor, %game.totalVotesAgainst, %totalVotes, mfloor((%game.totalVotesFor/(ClientGroup.getCount() - %game.totalVotesNone)) * 100), "%", %key, %game.totalVotesNone);
|
||||
|
||||
// VoteOvertime
|
||||
ResetVOall(%game);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,99 +0,0 @@
|
|||
// Vote OverTime Script
|
||||
//
|
||||
// Dont allow the match to end if a time vote is pending
|
||||
// Or if the timelimit has changed
|
||||
//
|
||||
// Changes were also made in how time votes are handled in scripts/autoexec/VoteMenu.cs
|
||||
// DefaultGame::voteChangeMission, DefaultGame::voteChangeTimeLimit, serverCmdStartNewVote
|
||||
//
|
||||
// The VoteChangeTimeLimit functions in evo dictate VOStatus conditions
|
||||
|
||||
$VOStatus = "Normal";
|
||||
|
||||
package VoteOverTime
|
||||
{
|
||||
|
||||
function DefaultGame::checkTimeLimit(%game, %forced)
|
||||
{
|
||||
// Don't add extra checks:
|
||||
if ( %forced )
|
||||
cancel( %game.timeCheck );
|
||||
|
||||
// if there is no time limit, check back in a minute to see if it's been set
|
||||
if(($Host::TimeLimit $= "") || $Host::TimeLimit == 0)
|
||||
{
|
||||
%game.timeCheck = %game.schedule(20000, "checkTimeLimit");
|
||||
return;
|
||||
}
|
||||
|
||||
%curTimeLeftMS = ($Host::TimeLimit * 60 * 1000) + $missionStartTime - getSimTime();
|
||||
|
||||
if (%curTimeLeftMS <= 0)
|
||||
{
|
||||
//Vote Overtime
|
||||
//Check if Time Vote is starting or active or if the timelimit has changed.
|
||||
//If the timelimit has changed, don't end the game.
|
||||
switch$($VOStatus)
|
||||
{
|
||||
case Starting:
|
||||
if($missionRunning)
|
||||
{
|
||||
messageAll('', '\c2Vote Overtime Initiated.~wfx/powered/turret_heavy_activate.wav', %display);
|
||||
$VOStatus = "InProgress";
|
||||
}
|
||||
case InProgress:
|
||||
//Do Nothing
|
||||
case TimeChanged:
|
||||
//Do Nothing
|
||||
case Normal:
|
||||
// time's up, put down your pencils
|
||||
%game.timeLimitReached();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(%curTimeLeftMS >= 20000)
|
||||
%game.timeCheck = %game.schedule(20000, "checkTimeLimit");
|
||||
else
|
||||
%game.timeCheck = %game.schedule(%curTimeLeftMS + 1, "checkTimeLimit");
|
||||
|
||||
//now synchronize everyone's clock
|
||||
messageAll('MsgSystemClock', "", $Host::TimeLimit, %curTimeLeftMS);
|
||||
}
|
||||
}
|
||||
|
||||
function DefaultGame::gameOver(%game)
|
||||
{
|
||||
Parent::gameOver(%game);
|
||||
|
||||
//Reset everything to do with Vote Overtime
|
||||
ResetVOall(%game);
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
// Various Flags for the different situations
|
||||
// Starting a TimeVote - Sets flags so the game wont end during this vote
|
||||
function StartVOTimeVote(%game)
|
||||
{
|
||||
if(!$Host::TournamentMode)
|
||||
$VOStatus = "Starting";
|
||||
}
|
||||
|
||||
// Tribes wont change the time after its reached zero and you cant change it again afterwards until a gameover/map change.
|
||||
// But this serves its purpose for extending the game whether it works (technically) or not.
|
||||
function ResetVOTimeChanged(%game)
|
||||
{
|
||||
$VOStatus = "TimeChanged";
|
||||
}
|
||||
|
||||
// Reset everything. So everything functions normally after a map change.
|
||||
function ResetVOall(%game)
|
||||
{
|
||||
$VOStatus = "Normal";
|
||||
}
|
||||
|
||||
|
||||
// Prevent package from being activated if it is already
|
||||
if (!isActivePackage(VoteOverTime))
|
||||
activatePackage(VoteOverTime);
|
||||
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
// First Screen loading time (Map Screen)
|
||||
// If this is set too low the second screen wont show at all
|
||||
$dtLoadingScreen::FirstScreen = 5500;
|
||||
$dtLoadingScreen::FirstScreen = 3000;
|
||||
// Second Screen Delay
|
||||
$dtLoadingScreen::Delay = 0;
|
||||
|
||||
|
|
@ -149,6 +149,10 @@ if (!isActivePackage(LoadScreenPackage) && $Host::LoadingScreenUseDebrief)
|
|||
// Just make our own
|
||||
function ALTsendModInfoToClient(%client)
|
||||
{
|
||||
if(%client.isReady){
|
||||
return;
|
||||
}
|
||||
|
||||
// Wont allow Debrief on consecutive map loads
|
||||
if(%client.loaded)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Stats system for classic and base
|
||||
// Script BY: DarkTiger
|
||||
|
|
@ -15,7 +16,7 @@
|
|||
// Note See bottom of file for full log
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//-----------Settings-----------
|
||||
$dtStats::version = 10.58;
|
||||
$dtStats::version = 10.60;
|
||||
//disable stats system
|
||||
$dtStats::Enable = $Host::dtStatsEnable $= "" ? ($Host::dtStatsEnable = 1) : $Host::dtStatsEnable;
|
||||
if(!$dtStats::Enable){ return;}// so it disables with a restart
|
||||
|
|
@ -1862,6 +1863,8 @@ $statsName["discKillGroundTG"] = "Ground Disc Kills" TAB "Total";
|
|||
$statsName["WLRAvg"] = "Win Loss Ratio" TAB "Average";
|
||||
$statsName["roundsWonTG"] = "Rounds Won" TAB "Total";
|
||||
$statsName["hatTricksTG"] = "Hat Tricks" TAB "Total";
|
||||
$statsName["OffKillsTG"] = "Offensive Kills" TAB "Total";
|
||||
$statsName["DefKillsTG"] = "Defensive Kills" TAB "Total";
|
||||
|
||||
$panelCount = 0;
|
||||
$upperWepPanel[$panelCount, "CTFGame"] = "discMAHitDistMax"; $upperWepPanel[$panelCount++, "CTFGame"] = "plasmaMAHitDistMax";$upperWepPanel[$panelCount++, "CTFGame"] = "blasterMAHitDistMax";
|
||||
|
|
@ -13978,8 +13981,10 @@ package dtBanSys{
|
|||
|
||||
//Reapply the gag
|
||||
function GameConnection::onConnect( %client, %name, %raceGender, %skin, %voice, %voicePitch ){
|
||||
if (banList_checkClient(%client, getField(%client.t2csri_authInfo, 3))){
|
||||
return 0;
|
||||
}
|
||||
parent::onConnect( %client, %name, %raceGender, %skin, %voice, %voicePitch );
|
||||
|
||||
%client.isGagged = ($chatGagged[getClientCleanIP(%client)] || $chatGagged[%client.guid]); //restore status
|
||||
}
|
||||
|
||||
|
|
@ -13988,7 +13993,8 @@ package dtBanSys{
|
|||
%time = (%time $= "") ? 100000 : %time;
|
||||
%name = getClientBanName(%guid, %ipAddress);
|
||||
%bareIP = getCleanIP(%ipAddress);
|
||||
if(!isObject($dtBanTemp::GUID[%guid]) && !isObject($dtBanTemp::GUID[%bareIP])){
|
||||
//error("GUID" SPC %guid SPC "IP" SPC %bareIP);
|
||||
if(!isObject($dtBanTemp::GUID[%guid]) && !isObject($dtBanTemp::IP[%bareIP])){
|
||||
if(!isObject(dtBanList)){
|
||||
new simGroup(dtBanList);
|
||||
RootGroup.add(dtBanList);
|
||||
|
|
@ -13998,64 +14004,20 @@ package dtBanSys{
|
|||
name = %name;
|
||||
guid = %guid;
|
||||
ip = %bareip;
|
||||
banDateTime = dtMarkDate();
|
||||
banDateTime = dtMarkDate();
|
||||
banLengthMin = %time;
|
||||
};
|
||||
dtBanList.add(%banObj);
|
||||
if(!%bareIP)
|
||||
if(%bareIP !$= "0")
|
||||
$dtBanTemp::IP[%bareIP] = %banObj;
|
||||
if(%guid){
|
||||
$dtBanTemp::GUID[%guid] = %banObj;
|
||||
rmvWhiteListGuid(%guid);
|
||||
}
|
||||
}
|
||||
if(isObject($dtBanTemp::GUID[%guid]) && !isObject($dtBanTemp::GUID[%bareIP])){
|
||||
%obj = $dtBanTemp::GUID[%guid];
|
||||
%obj.ip = %bareIP;
|
||||
}
|
||||
else if(isObject($dtBanTemp::GUID[%bareIP]) && !isObject($dtBanTemp::GUID[%guid])){
|
||||
%obj = $dtBanTemp::GUID[%bareIP];
|
||||
%obj.guid = %guid;
|
||||
}
|
||||
|
||||
saveBanList();
|
||||
}
|
||||
|
||||
function banList_checkIP(%client){
|
||||
%ip = getClientCleanIP(%client);
|
||||
%obj = $dtBanTemp::IP[%ip];
|
||||
if(isObject(%obj) && %obj.banDateTime > 0){
|
||||
%delta = getTimeDelta(%obj.banDateTime);
|
||||
if (%delta < %obj.banLengthMin){
|
||||
pushFailJoin(%obj.name, %obj.gui, 0, "Kick/Ban" SPC %obj.banDateTime - %delta SPC "Minutes Left", 1);
|
||||
return 1;
|
||||
}
|
||||
else{
|
||||
unbanUserObj(%obj);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
// from tribes next did not want to override this but need to pass %client id into ban check to avoid wierd issues
|
||||
function serverCmdt2csri_challengeResponse(%client, %serverChallenge){
|
||||
if (%client.doneAuthenticating)
|
||||
return;
|
||||
|
||||
if (%client.t2csri_serverChallenge $= %serverChallenge){
|
||||
// check to see if the client is GUID banned, now that we verified their certificate
|
||||
if (banList_checkClientGUID(%client, getField(%client.t2csri_authInfo, 3))){
|
||||
return;
|
||||
}
|
||||
|
||||
// client checks out... continue loading sequence
|
||||
%client.onConnect(%client.tname, %client.trgen, %client.tskin, %client.tvoic, %client.tvopi);
|
||||
}
|
||||
else{
|
||||
%client.setDisconnectReason("Invalid server challenge. Check your account key for corruption.");
|
||||
%client.delete();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function dtIsAdmin(%client,%guid){
|
||||
|
|
@ -14079,10 +14041,12 @@ function dtIsAdmin(%client,%guid){
|
|||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
function banList_checkClientGUID(%client, %guid){// only one we care about in whitelist mode
|
||||
%obj = $dtBanTemp::GUID[%guid];
|
||||
function banList_checkClient(%client, %guid){// only one we care about in whitelist mode
|
||||
//error("banlist check" SPC "client" SPC %client SPC "Guid" SPC %guid);
|
||||
%objA = $dtBanTemp::GUID[%guid];
|
||||
%ip = getClientCleanIP(%client);
|
||||
%objB = $dtBanTemp::IP[%ip];
|
||||
%obj = (isObject(%objA) == 1) ? %objA : %objB;
|
||||
if (isObject(%obj) && %obj.banDateTime > 0){
|
||||
%delta = getTimeDelta(%obj.banDateTime);
|
||||
if (%delta < %obj.banLengthMin){
|
||||
|
|
@ -14096,30 +14060,31 @@ function banList_checkClientGUID(%client, %guid){// only one we care about in wh
|
|||
unbanUserObj(%obj);
|
||||
}
|
||||
}
|
||||
if(isObject(%objA)){
|
||||
%realName = getField(%client.t2csri_authInfo, 0 );
|
||||
if(%realName !$= "")
|
||||
%name = trim(%realName);
|
||||
else
|
||||
%name = trim(stripChars( detag( getTaggedString( %fc.name ) ), "\cp\co\c6\c7\c8\c9\c0" ));
|
||||
|
||||
%realName = getField(%client.t2csri_authInfo, 0 );
|
||||
if(%realName !$= "")
|
||||
%name = trim(%realName);
|
||||
else
|
||||
%name = trim(stripChars( detag( getTaggedString( %fc.name ) ), "\cp\co\c6\c7\c8\c9\c0" ));
|
||||
%safe = ( dtIsAdmin(%client,%guid) || isObject($dtWhtList::WhiteList[%guid]));
|
||||
if(!%safe){
|
||||
pushFailJoin(%name, %guid, 0, "Not Whitelisted", 0);
|
||||
if($dtServerVars::WhiteListMode){
|
||||
%client.setDisconnectReason("Server is locked, please message admin or wait for approval");
|
||||
%client.delete();
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
%safe = ( dtIsAdmin(%client,%guid) || isObject($dtWhtList::WhiteList[%guid]));
|
||||
if(!%safe){
|
||||
pushFailJoin(%name, %guid, 0, "Not Whitelisted", 0);
|
||||
if($dtServerVars::WhiteListMode){
|
||||
%client.setDisconnectReason("Server is locked, please message admin or wait for approval");
|
||||
// this is here in case of banned ip is a whitelisted account
|
||||
if($dtServerVars::IPBanListMode && $dtIPList[%ip] && !isObject($dtWhtList::WhiteList[%guid])){
|
||||
pushFailJoin(%name, %client.guid, %ip, "IP Ban List", 2);
|
||||
%client.setDisconnectReason("You are not allowed to play on this server.");
|
||||
%client.delete();
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
%ip = getClientCleanIP(%client);// this is here in case of banned ip is a whitelisted account
|
||||
if($dtServerVars::IPBanListMode && $dtIPList[%ip] && !isObject($dtWhtList::WhiteList[%guid])){
|
||||
pushFailJoin(%name, %client.guid, %ip, "IP Ban List", 2);
|
||||
%client.setDisconnectReason("You are not allowed to play on this server.");
|
||||
%client.delete();
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -16456,7 +16421,7 @@ function genBigStats(%game, %lType, %mon, %year){
|
|||
%year = 2024;
|
||||
}
|
||||
%callCount = 0;
|
||||
%callTime = 16;
|
||||
%callTime = 32;
|
||||
deleteVariables("$textColor*");
|
||||
%mainXSize =1860;
|
||||
%mainySize = 1115;
|
||||
|
|
@ -16688,7 +16653,7 @@ function genMapStatsImg(%game,%count){
|
|||
return;
|
||||
}
|
||||
%callCount = 0;
|
||||
%callTime = 16;
|
||||
%callTime = 32;
|
||||
deleteVariables("$textColor*");
|
||||
%mainXSize =1860;
|
||||
%mainySize = 1115;
|
||||
|
|
@ -16955,12 +16920,12 @@ function imgCycle3(%img, %count){
|
|||
}
|
||||
%img.yc++;
|
||||
if(%img.yc < %img.y)
|
||||
schedule(32,0,"imgCycle3",%img);
|
||||
schedule(32,0,"imgCycle3",%img, %count);
|
||||
else{
|
||||
%img.close();
|
||||
%img.delete();
|
||||
deleteVariables("$textColor*");
|
||||
error("Stats Image Done");
|
||||
error("Stats Image Done" SPC %count);
|
||||
genBigMapStats(%count++);
|
||||
}
|
||||
}
|
||||
|
|
@ -17202,7 +17167,7 @@ function renderArenaMapTextTM(%id){
|
|||
%sizeX = 1280+20;
|
||||
%sizeY = 810;
|
||||
|
||||
%callTime = 8;
|
||||
%callTime = 32;
|
||||
%spaceing = 20;
|
||||
%justLeft = 355;
|
||||
%justLeft2 = 55;
|
||||
|
|
@ -17979,7 +17944,7 @@ function renderLCTFMapTextTM(%id){
|
|||
%sizeX = 1280+20;
|
||||
%sizeY = 810;
|
||||
|
||||
%callTime = 8;
|
||||
%callTime = 32;
|
||||
%spaceing = 20;
|
||||
%justLeft = 355;
|
||||
%justLeft2 = 55;
|
||||
|
|
@ -18756,7 +18721,7 @@ function renderCTFMapTextTM(%id){
|
|||
%sizeX = 1280+20;
|
||||
%sizeY = 1115;
|
||||
|
||||
%callTime = 8;
|
||||
%callTime = 32;
|
||||
%spaceing = 20;
|
||||
%justLeft = 355;
|
||||
%justLeft2 = 55;
|
||||
|
|
@ -19804,6 +19769,12 @@ function dtBuildMissionList(%reset){
|
|||
}
|
||||
else if ( getSubStr( %line, 0, 18 ) $= "// MissionTypes = " ){
|
||||
%typeList = getSubStr( %line, 18, 1000 );
|
||||
if(strstr(%typeList,"CTF") != -1 && strstr(%typeList,"LCTF") == -1){
|
||||
%typeList = %typeList SPC "LCTF";
|
||||
}
|
||||
if(strstr(%typeList,"CTF") != -1 && strstr(%typeList,"SCtF") == -1){
|
||||
%typeList = %typeList SPC "SCtF";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -20562,16 +20533,17 @@ function mapCyleTest(){
|
|||
// Added custom two team debrief as well as a evo style extended stats
|
||||
// Reworked enable disable, only disables stats saving and stats access, do to systems relying on systems
|
||||
//
|
||||
// 10.1 - 10.2 - 10.3
|
||||
// 10.1 - 10.2 - 10.3 - 10.6
|
||||
// Ban system changes
|
||||
// Fix bad loop in ban system
|
||||
// Misc arena things
|
||||
// Added LCTF Naming
|
||||
// serverPrefs Support
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////Storage/////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// bansystem rework doto new tribes next changes
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
function testVarsRandomAll(%max){
|
||||
%game = Game.class;
|
||||
for(%q = 0; %q < $statsVars::count[%game]; %q++){
|
||||
|
|
|
|||
|
|
@ -459,9 +459,9 @@ function DefaultGame::createPlayer(%game, %client, %spawnLoc, %respawn)
|
|||
if(%respawn)
|
||||
{
|
||||
%player.setInvincible(true);
|
||||
%player.setCloaked(true); // z0dd - ZOD, 8/6/02. Don't spawn players cloaked //was //
|
||||
//%player.setCloaked(true); // z0dd - ZOD, 8/6/02. Don't spawn players cloaked
|
||||
%player.setInvincibleMode($InvincibleTime,0.02);
|
||||
%player.respawnCloakThread = %player.schedule($InvincibleTime * 50, "setRespawnCloakOff"); // z0dd - ZOD, 8/6/02. Don't spawn players cloaked //was 1000
|
||||
//%player.respawnCloakThread = %player.schedule($InvincibleTime * 50, "setRespawnCloakOff"); // z0dd - ZOD, 8/6/02. Don't spawn players cloaked //was 1000
|
||||
%player.schedule($InvincibleTime * 1000, "setInvincible", false);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -445,7 +445,7 @@ function ShapeBase::throwObject(%this,%obj)
|
|||
{
|
||||
%obj.static = false;
|
||||
// z0dd - ZOD - SquirrelOfDeath, 10/02/02. Hack for flag collision bug.
|
||||
if(Game.Class $= CTFGame || Game.Class $= PracticeCTFGame || Game.Class $= SCtFGame)
|
||||
if(Game.Class $= CTFGame || Game.Class $= PracticeCTFGame || Game.Class $= SCtFGame || Game.Class $= LCTFGame)
|
||||
%obj.searchSchedule = Game.schedule(10, "startFlagCollisionSearch", %obj);
|
||||
}
|
||||
//------------------------------------------------------------------
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ datablock AudioDescription(CloakLooping3d)
|
|||
|
||||
is3D = true;
|
||||
minDistance= 10.0;
|
||||
MaxDistance= 55.0; //Was 50
|
||||
MaxDistance= 50.0;
|
||||
type = $EffectAudioType;
|
||||
environmentLevel = 1.0;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ datablock ItemData(SensorJammerPack)
|
|||
};
|
||||
|
||||
|
||||
datablock SensorData(JammerSensorObjectPassive) //v2 was commented out...
|
||||
datablock SensorData(JammerSensorObjectPassive)
|
||||
{
|
||||
// same detection info as 'PlayerObject' sensorData
|
||||
detects = true;
|
||||
|
|
@ -76,7 +76,7 @@ datablock SensorData(JammerSensorObjectPassive) //v2 was commented out...
|
|||
detectFOVPercent = 1.3;
|
||||
useObjectFOV = true;
|
||||
|
||||
detectscloaked = 1; //v2
|
||||
//detectscloaked = 1; //v2
|
||||
|
||||
jams = true;
|
||||
jamsOnlyGroup = true;
|
||||
|
|
@ -96,52 +96,55 @@ datablock SensorData(JammerSensorObjectActive)
|
|||
detectFOVPercent = 1.3;
|
||||
useObjectFOV = true;
|
||||
|
||||
detectscloaked = 1; //v2
|
||||
//detectscloaked = 1; //v2
|
||||
|
||||
jams = true;
|
||||
jamsOnlyGroup = true;
|
||||
jamsUsingLOS = true;
|
||||
jamRadius = 45; //was 30
|
||||
jamRadius = 30;
|
||||
};
|
||||
|
||||
function SensorJammerPackImage::onMount(%data, %obj, %slot)
|
||||
{
|
||||
setTargetSensorData(%obj.client.target, JammerSensorObjectPassive); //v2
|
||||
%obj.setImageTrigger(%slot, false);
|
||||
commandToClient( %obj.client, 'setSenJamIconOff' );
|
||||
%obj.setJammerFX(false);
|
||||
setTargetSensorData(%obj.client.target, JammerSensorObjectPassive);
|
||||
}
|
||||
|
||||
function deactivateJammer(%data, %obj, %slot)
|
||||
function SensorJammerPackImage::onUnmount(%data, %obj, %slot)
|
||||
{
|
||||
SensorJammerPackImage::onDeactivate(%data, %obj, %slot);
|
||||
}
|
||||
|
||||
function SensorJammerPackImage::onUnmount(%data, %obj, %slot) //v2
|
||||
{
|
||||
%obj.setImageTrigger(%slot, false);
|
||||
setTargetSensorData(%obj.client.target, PlayerSensor);
|
||||
%obj.setImageTrigger(%slot, false);
|
||||
}
|
||||
|
||||
function SensorJammerPackImage::onActivate(%data, %obj, %slot)
|
||||
{
|
||||
messageClient(%obj.client, 'MsgSensorJammerPackOn', '\c2Sensor jammer pack on.');
|
||||
setTargetSensorData(%obj.client.target, JammerSensorObjectActive);
|
||||
// z0dd - ZOD, 9/29/02. Removed T2 demo code from here
|
||||
commandToClient( %obj.client, 'setSenJamIconOn' );
|
||||
|
||||
%obj.setJammerFX( true );
|
||||
}
|
||||
|
||||
function SensorJammerPackImage::onDeactivate(%data, %obj, %slot)
|
||||
{
|
||||
messageClient(%obj.client, 'MsgSensorJammerPackOff', '\c2Sensor jammer pack off.');
|
||||
setTargetSensorData(%obj.client.target, PlayerSensor); //v2 H bug fix
|
||||
%obj.setImageTrigger(%slot, false);
|
||||
setTargetSensorData(%obj.client.target, JammerSensorObjectPassive); //v2 was PlayerSensor
|
||||
|
||||
// ----------------------------------------------------------------------
|
||||
// z0dd - ZOD, 4/25/02. This function is actually getting called AFTER
|
||||
// ::onUnmount. We must check to see what the players current sensor data
|
||||
// is, then if it is NOT PlayerSensor, set to passive jam, bug fix.
|
||||
if(getTargetSensorData(%obj.client.target).getName() !$= "PlayerSensor")
|
||||
setTargetSensorData(%obj.client.target, JammerSensorObjectPassive);
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
// z0dd - ZOD, 9/29/02. Removed T2 demo code from here
|
||||
commandToClient( %obj.client, 'setSenJamIconOff' );
|
||||
|
||||
%obj.setJammerFX( false );
|
||||
}
|
||||
|
||||
function SensorJammerPack::onPickup(%this, %obj, %shape, %amount)
|
||||
{
|
||||
//Nope
|
||||
}
|
||||
// z0dd - ZOD, 5/18/03. Removed functions, created parent. Streamline.
|
||||
//function SensorJammerPack::onPickup(%this, %obj, %shape, %amount)
|
||||
//{
|
||||
// created to prevent console errors
|
||||
//}
|
||||
|
|
|
|||
|
|
@ -1085,8 +1085,8 @@ datablock ParticleData(LightPuff)
|
|||
textureName = "particleTest";
|
||||
colors[0] = "0.46 0.36 0.26 0.4";
|
||||
colors[1] = "0.46 0.46 0.36 0.0";
|
||||
sizes[0] = 0.8; //was 0.4
|
||||
sizes[1] = 1.4; //was 1.0
|
||||
sizes[0] = 0.4;
|
||||
sizes[1] = 1.0;
|
||||
};
|
||||
|
||||
datablock ParticleEmitterData(LightPuffEmitter)
|
||||
|
|
@ -1123,9 +1123,9 @@ datablock ParticleData(LiftoffDust)
|
|||
colors[0] = "0.46 0.36 0.26 0.0";
|
||||
colors[1] = "0.46 0.46 0.36 0.4";
|
||||
colors[2] = "0.46 0.46 0.36 0.0";
|
||||
sizes[0] = 0.6; //was 0.2
|
||||
sizes[1] = 1.0; //was 0.6
|
||||
sizes[2] = 1.4; //was 1.0
|
||||
sizes[0] = 0.2;
|
||||
sizes[1] = 0.6;
|
||||
sizes[2] = 1.0;
|
||||
times[0] = 0.0;
|
||||
times[1] = 0.5;
|
||||
times[2] = 1.0;
|
||||
|
|
@ -1765,7 +1765,7 @@ datablock PlayerData(HeavyMaleHumanArmor) : HeavyPlayerDamageProfile
|
|||
//Value changed halfway between base and classic.
|
||||
//Classic is 54, Base is 75
|
||||
//Shield breaks right at two mine-disc
|
||||
energyPerDamagePoint = 60.0; // shield energy required to block one point of damage
|
||||
energyPerDamagePoint = 54.0; // shield energy required to block one point of damage
|
||||
|
||||
rechargeRate = 0.256;
|
||||
jetForce = 29.58 * 180;
|
||||
|
|
|
|||
|
|
@ -62,21 +62,20 @@ function ShapeBaseImageData::onFire(%data, %obj, %slot)
|
|||
{
|
||||
// ---------------------------------------------------------------------------
|
||||
// z0dd - ZOD, 9/3/02. Anti rapid fire mortar/missile fix.
|
||||
// if (%obj.cantFire !$= "")
|
||||
// {
|
||||
// return 0;
|
||||
// }
|
||||
if (%obj.cantFire !$= "")
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// %wpnName = %data.getName();
|
||||
// if((%wpnName $= "MortarImage") || (%wpnName $= "MissileLauncherImage"))
|
||||
// {
|
||||
// %obj.cantFire = 1;
|
||||
// %preventTime = %data.stateTimeoutValue[4];
|
||||
// //%preventTime = (%data.stateTimeoutValue[4] + %data.stateTimeoutValue[3]) - 0.032;
|
||||
// %obj.reloadSchedule = schedule(%preventTime * 1000, %obj, resetFire, %obj);
|
||||
// }
|
||||
%wpnName = %data.getName();
|
||||
if((%wpnName $= "MortarImage") || (%wpnName $= "MissileLauncherImage"))
|
||||
{
|
||||
%obj.cantFire = 1;
|
||||
%preventTime = %data.stateTimeoutValue[4];
|
||||
%obj.reloadSchedule = schedule(%preventTime * 1000, %obj, resetFire, %obj);
|
||||
}
|
||||
// ---------------------------------------------------------------------------
|
||||
%obj.lfireTime[%data.getName()] = getSimTime();
|
||||
//%obj.lfireTime[%data.getName()] = getSimTime();
|
||||
|
||||
%data.lightStart = getSimTime();
|
||||
|
||||
|
|
|
|||
|
|
@ -141,16 +141,16 @@ $Host::LoadScreenColor3 = "33CCCC"; //Loading Screen color; Accents
|
|||
$Host::LoadScreenLine1 = "Join Discord:"; //Loading screen Line 1 Topic
|
||||
$Host::LoadScreenLine1_Msg = "<a:playt2.com/discord>playt2.com/discord</a>"; //Loading Screen Line 1 Message
|
||||
$Host::LoadScreenLine2 = "Game Modes:"; //Loading screen Line 2 Topic
|
||||
$Host::LoadScreenLine2_Msg = "LakRabbit, Capture the Flag, DeathMatch, (Light Only) Capture the Flag"; //Loading Screen Line 2 Message
|
||||
$Host::LoadScreenLine2_Msg = "Lak, CTF, DeathMatch, LCTF"; //Loading Screen Line 2 Message
|
||||
$Host::LoadScreenLine3 = "Get Mappacks:"; //Loading screen Line 3 Topic
|
||||
$Host::LoadScreenLine3_Msg = "<a:playt2.com/mappacks>playt2.com/mappacks</a>"; //Loading Screen Line 3 Message
|
||||
$Host::LoadScreenLine4 = "Server Location:"; //Loading screen Line 4 Topic
|
||||
$Host::LoadScreenLine4_Msg = "Iowa"; //Loading Screen Line 4 Message
|
||||
$Host::LoadScreenLine4_Msg = "Somewhere"; //Loading Screen Line 4 Message
|
||||
$Host::LoadScreenLine5 = "Server Hosted:"; //Loading screen Line 5 Topic (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenLine5_Msg = "Google Compute Engine"; //Loading Screen Line 5 Message (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenLine5_Msg = "Internet"; //Loading Screen Line 5 Message (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenLine6 = "Server Github:"; //Loading screen Line 6 Topic (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenLine6_Msg = "https://github.com/ChocoTaco1/TacoServer"; //Loading Screen Line 6 Message (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenMOTD1 = "Celebrating 20 Years of Tribes2!"; //MOTD or Events Line 1 Message (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenMOTD1 = "Celebrating 25 Years of Tribes2!"; //MOTD or Events Line 1 Message (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenMOTD2 = "Come play Arena on Wednesday Nights!"; //MOTD or Events Line 2 Message (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenMOTD3 = "Lak crowd early evenings after work during the week."; //MOTD or Events Line 3 Message (Debrief LoadScreen Only)
|
||||
$Host::LoadScreenMOTD4 = "Big CTF games Fridays, Saturdays, and Sundays!"; //MOTD or Events Line 4 Message (Debrief LoadScreen Only)
|
||||
|
|
@ -160,7 +160,7 @@ $Host::ClassicChatLog = 1;
|
|||
$Host::ClassicChatLogPath = "logs/Chat/";
|
||||
$Host::ClassicConnectLog = 1;
|
||||
$Host::ClassicConnLogPath = "logs/Connect/log.txt";
|
||||
$Host::ClassicMOTD = "<color:3cb4b4><font:Sui Generis:22>Discord PUB\n<color:3cb4b4><font:Univers:16>Server brought to you by Ravin and Choco\n<color:3cb4b4><font:Univers:16>Celebrating 20 Years of Tribes2!";
|
||||
$Host::ClassicMOTD = "<color:3cb4b4><font:Sui Generis:22>Tribes 2 Test\n<color:3cb4b4><font:Univers:16>Server brought to you via Commuity Effort\n<color:3cb4b4><font:Univers:16>Celebrating 25 Years of Tribes2!";
|
||||
$Host::ClassicMOTDLines = 3;
|
||||
$Host::ClassicMOTDTime = 6;
|
||||
$Host::ClassicRotationCustom = 1;
|
||||
|
|
@ -171,10 +171,10 @@ $Host::ClassicSuppressTraversalRootError = 1; //Suppress console spam e
|
|||
$Host::ClassicMaxVotes = 5; //Max a player can vote per mission
|
||||
$Host::ClassicVoteLog = 1; //Log Votes
|
||||
$Host::ClassicVoteLogPath = "logs/Vote/Vote.log"; //Vote Log location
|
||||
$Host::ServerRules1 = "\c2if\c4(\c3%client.attitude \c4$= \c5\"fun\" \c4&& \c3%client.Llama_Grabs \c4< \c51\c4) {";
|
||||
$Host::ServerRules2 = " \c1keepTeamsBalanced\c4(\c2%client\c4); \c1dontSwitch2WinningTeam(\c2%client\c4); }";
|
||||
$Host::ServerRules3 = "\c2else if\c4(\c3%client.attitude \c4$= \c5\"too_serious\"\c4) {";
|
||||
$Host::ServerRules4 = " \c1try2HaveFun\c4(\c2%client, %attitude\c4); \c1thisIsPubServer\c4(\c2%client, %attitude\c4); }";
|
||||
$Host::ServerRules1 = "1. Don\'t Llama Grab. (Grab flag slowly)";
|
||||
$Host::ServerRules2 = "2. Don\'t sit on teams and AFK. Move to observer.";
|
||||
$Host::ServerRules3 = "3. Don\'t Excessively teamkill or teamkill on purpose.";
|
||||
$Host::ServerRules4 = "4. Don\'t spam chat with inappropriate topics. Play the game.";
|
||||
$Host::AnimateWithTransitions = 1; //????????????? T1 engine var may or may not help timescale ?????????????
|
||||
$Host::AllowAdmin2Admin = 0;
|
||||
$Host::AllowAdminBan = 0;
|
||||
|
|
@ -201,7 +201,7 @@ $Host::KickObserverStartOnJoin = 0; //Start KickObserver Timer as so
|
|||
$Host::KickObserverTimeout = 1200; //How long player can stay in observer before being booted (1200 is 20 mins)
|
||||
//$Host::ClassicBanlist = "prefs/banlist.cs";
|
||||
$Host::VoteCooldown = 120; //Time cooldown that dosnt allow a player to vote again after theyve initiated a vote (120 is 2 mins)
|
||||
$Host::VoteDelayTime = 120; //Delay the ability to vote (For everyone) at the beginning of the match (120 is 2 minutes)
|
||||
$Host::VoteDelayTime = 60; //Delay the ability to vote (For everyone) at the beginning of the match (120 is 2 minutes)
|
||||
$Host::ClassicTeamKillLog = 1; //Enable/Disable Teamkill Logging
|
||||
$Host::ClassicTeamKillLogPath = "logs/TeamKills/teamkills.log"; //TeamKill Log Path
|
||||
$Host::ClassicDailyHardRestart = 0; //Enable/Disable Daily Hard Restart
|
||||
|
|
|
|||
|
|
@ -235,7 +235,7 @@ datablock HoverVehicleData(AssaultVehicle) : TankDamageProfile
|
|||
|
||||
isShielded = true;
|
||||
rechargeRate = 1.0;
|
||||
energyPerDamagePoint = 142; //was 135
|
||||
energyPerDamagePoint = 135;
|
||||
maxEnergy = 400;
|
||||
minJetEnergy = 15;
|
||||
jetEnergyDrain = 2.0;
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ datablock ItemData(FlashGrenadeThrown)
|
|||
radiusDamageType = $DamageType::Grenade;
|
||||
kickBackStrength = 1000;
|
||||
computeCRC = true;
|
||||
maxWhiteout = 0.78; // z0dd - ZOD, 9/8/02. Was 1.2 //Reduced. Was 0.9 Choco
|
||||
maxWhiteout = 0.9; // z0dd - ZOD, 9/8/02. Was 1.2
|
||||
};
|
||||
|
||||
datablock ItemData(FlashGrenade)
|
||||
|
|
|
|||
|
|
@ -2,6 +2,37 @@
|
|||
// Missile launcher
|
||||
//--------------------------------------
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Force-Feedback Effects
|
||||
//--------------------------------------
|
||||
datablock EffectProfile(MissileSwitchEffect)
|
||||
{
|
||||
effectname = "weapons/missile_launcher_activate";
|
||||
minDistance = 2.5;
|
||||
maxDistance = 2.5;
|
||||
};
|
||||
|
||||
datablock EffectProfile(MissileFireEffect)
|
||||
{
|
||||
effectname = "weapons/missile_fire";
|
||||
minDistance = 2.5;
|
||||
maxDistance = 5.0;
|
||||
};
|
||||
|
||||
datablock EffectProfile(MissileDryFireEffect)
|
||||
{
|
||||
effectname = "weapons/missile_launcher_dryfire";
|
||||
minDistance = 2.5;
|
||||
maxDistance = 2.5;
|
||||
};
|
||||
|
||||
datablock EffectProfile(MissileExplosionEffect)
|
||||
{
|
||||
effectname = "explosions/explosion.xpl23";
|
||||
minDistance = 10;
|
||||
maxDistance = 30;
|
||||
};
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Sounds
|
||||
//--------------------------------------
|
||||
|
|
@ -10,6 +41,7 @@ datablock AudioProfile(MissileSwitchSound)
|
|||
filename = "fx/weapons/missile_launcher_activate.wav";
|
||||
description = AudioClosest3d;
|
||||
preload = true;
|
||||
effect = MissileSwitchEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MissileFireSound)
|
||||
|
|
@ -17,6 +49,7 @@ datablock AudioProfile(MissileFireSound)
|
|||
filename = "fx/weapons/missile_fire.WAV";
|
||||
description = AudioDefault3d;
|
||||
preload = true;
|
||||
effect = MissileFireEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MissileProjectileSound)
|
||||
|
|
@ -45,6 +78,7 @@ datablock AudioProfile(MissileExplosionSound)
|
|||
filename = "fx/explosions/explosion.xpl23.wav";
|
||||
description = AudioBIGExplosion3d;
|
||||
preload = true;
|
||||
effect = MissileExplosionEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MissileDryFireSound)
|
||||
|
|
@ -52,6 +86,7 @@ datablock AudioProfile(MissileDryFireSound)
|
|||
filename = "fx/weapons/missile_launcher_dryfire.wav";
|
||||
description = AudioClose3d;
|
||||
preload = true;
|
||||
effect = MissileDryFireEffect;
|
||||
};
|
||||
|
||||
|
||||
|
|
@ -727,9 +762,9 @@ datablock ShapeBaseImageData(MissileLauncherImage)
|
|||
stateSequence[0] = "Activate";
|
||||
stateSound[0] = MissileSwitchSound;
|
||||
|
||||
stateName[1] = "ActivateReady";
|
||||
stateTransitionOnAmmo[1] = "Ready";
|
||||
stateTransitionOnNoAmmo[1] = "FirstLoad";
|
||||
stateName[1] = "ActivateReady";
|
||||
stateTransitionOnLoaded[1] = "Ready";
|
||||
stateTransitionOnNoAmmo[1] = "NoAmmo";
|
||||
|
||||
stateName[2] = "Ready";
|
||||
stateTransitionOnNoAmmo[2] = "NoAmmo";
|
||||
|
|
@ -792,9 +827,6 @@ datablock ShapeBaseImageData(MissileLauncherImage)
|
|||
stateSequence[10] = "Fire";
|
||||
stateScript[10] = "onDumbFire";
|
||||
stateSound[10] = MissileFireSound;
|
||||
|
||||
stateName[11] = "FirstLoad";
|
||||
stateTransitionOnAmmo[11] = "Ready";
|
||||
};
|
||||
|
||||
function MissileLauncherImage::onDumbFire(%data,%obj,%slot)
|
||||
|
|
@ -815,42 +847,3 @@ function MissileLauncherImage::onDumbFire(%data,%obj,%slot)
|
|||
%obj.decInventory(%data.ammo, 1);
|
||||
return %p;
|
||||
}
|
||||
function MissileLauncherImage::onUnmount(%this,%obj,%slot){
|
||||
parent::onUnmount(%this,%obj,%slot);
|
||||
if(isEventPending(%obj.reloadDelaySch))
|
||||
cancel(%obj.reloadDelaySch);
|
||||
}
|
||||
function MissileLauncherImage::onMount(%this,%obj,%slot){
|
||||
|
||||
if(%obj.getClassName() !$= "Player")
|
||||
return;
|
||||
|
||||
if (%this.armthread $= "")
|
||||
%obj.setArmThread(look);
|
||||
else
|
||||
%obj.setArmThread(%this.armThread);
|
||||
|
||||
if(%obj.getMountedImage($WeaponSlot).ammo !$= ""){
|
||||
if (%obj.getInventory(%this.ammo)){
|
||||
|
||||
%fireAndReloadTime = mFloor((%this.stateTimeoutValue[4] + %this.stateTimeoutValue[3]) * 1000);
|
||||
|
||||
if(%obj.lfireTime[%this.getName()] && (getSimTime() - %obj.lfireTime[%this.getName()]) < %fireAndReloadTime){
|
||||
if(isEventPending(%obj.reloadDelaySch)){
|
||||
cancel(%obj.reloadDelaySch);
|
||||
}
|
||||
%time = mFloor(%fireAndReloadTime - (getSimTime() - %obj.lfireTime[%this.getName()]));
|
||||
%obj.reloadDelaySch = schedule(%time, 0, "ammoStateDelay", %obj, %slot, true);
|
||||
}
|
||||
else{
|
||||
%obj.setImageAmmo(%slot,true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
%obj.client.setWeaponsHudActive(%this.item);
|
||||
if(%obj.getMountedImage($WeaponSlot).ammo !$= "")
|
||||
%obj.client.setAmmoHudCount(%obj.getInventory(%this.ammo));
|
||||
else
|
||||
%obj.client.setAmmoHudCount(-1);
|
||||
}
|
||||
|
|
@ -2,6 +2,44 @@
|
|||
// Mortar
|
||||
//--------------------------------------
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Force-Feedback Effects
|
||||
//--------------------------------------
|
||||
datablock EffectProfile(MortarSwitchEffect)
|
||||
{
|
||||
effectname = "weapons/mortar_activate";
|
||||
minDistance = 2.5;
|
||||
maxDistance = 2.5;
|
||||
};
|
||||
|
||||
datablock EffectProfile(MortarFireEffect)
|
||||
{
|
||||
effectname = "weapons/mortar_fire";
|
||||
minDistance = 2.5;
|
||||
maxDistance = 5.0;
|
||||
};
|
||||
|
||||
datablock EffectProfile(MortarReloadEffect)
|
||||
{
|
||||
effectname = "weapons/mortar_reload";
|
||||
minDistance = 2.5;
|
||||
maxDistance = 2.5;
|
||||
};
|
||||
|
||||
datablock EffectProfile(MortarDryFireEffect)
|
||||
{
|
||||
effectname = "weapons/mortar_dryfire";
|
||||
minDistance = 2.5;
|
||||
maxDistance = 2.5;
|
||||
};
|
||||
|
||||
datablock EffectProfile(MortarExplosionEffect)
|
||||
{
|
||||
effectname = "explosions/explosion.xpl03";
|
||||
minDistance = 30;
|
||||
maxDistance = 65;
|
||||
};
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Sounds
|
||||
//--------------------------------------
|
||||
|
|
@ -10,6 +48,7 @@ datablock AudioProfile(MortarSwitchSound)
|
|||
filename = "fx/weapons/mortar_activate.wav";
|
||||
description = AudioClosest3d;
|
||||
preload = true;
|
||||
effect = MortarSwitchEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MortarReloadSound)
|
||||
|
|
@ -17,6 +56,7 @@ datablock AudioProfile(MortarReloadSound)
|
|||
filename = "fx/weapons/mortar_reload.wav";
|
||||
description = AudioClosest3d;
|
||||
preload = true;
|
||||
effect = MortarReloadEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MortarIdleSound)
|
||||
|
|
@ -25,6 +65,7 @@ datablock AudioProfile(MortarIdleSound)
|
|||
filename = "fx/weapons/plasma_rifle_idle.wav";
|
||||
description = ClosestLooping3d;
|
||||
preload = true;
|
||||
effect = PlasmaIdleEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MortarFireSound)
|
||||
|
|
@ -32,6 +73,7 @@ datablock AudioProfile(MortarFireSound)
|
|||
filename = "fx/weapons/mortar_fire.wav";
|
||||
description = AudioDefault3d;
|
||||
preload = true;
|
||||
effect = MortarFireEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MortarProjectileSound)
|
||||
|
|
@ -46,6 +88,7 @@ datablock AudioProfile(MortarExplosionSound)
|
|||
filename = "fx/weapons/mortar_explode.wav";
|
||||
description = AudioBIGExplosion3d;
|
||||
preload = true;
|
||||
effect = MortarExplosionEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(UnderwaterMortarExplosionSound)
|
||||
|
|
@ -53,6 +96,7 @@ datablock AudioProfile(UnderwaterMortarExplosionSound)
|
|||
filename = "fx/weapons/mortar_explode_UW.wav";
|
||||
description = AudioBIGExplosion3d;
|
||||
preload = true;
|
||||
effect = MortarExplosionEffect;
|
||||
};
|
||||
|
||||
datablock AudioProfile(MortarDryFireSound)
|
||||
|
|
@ -60,6 +104,7 @@ datablock AudioProfile(MortarDryFireSound)
|
|||
filename = "fx/weapons/mortar_dryfire.wav";
|
||||
description = AudioClose3d;
|
||||
preload = true;
|
||||
effect = MortarDryFireEffect;
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
|
@ -740,8 +785,8 @@ datablock ShapeBaseImageData(MortarImage)
|
|||
stateSound[0] = MortarSwitchSound;
|
||||
|
||||
stateName[1] = "ActivateReady";
|
||||
stateTransitionOnAmmo[1] = "Ready";
|
||||
stateTransitionOnNoAmmo[1] = "FirstLoad";
|
||||
stateTransitionOnLoaded[1] = "Ready";
|
||||
stateTransitionOnNoAmmo[1] = "NoAmmo";
|
||||
|
||||
stateName[2] = "Ready";
|
||||
stateTransitionOnNoAmmo[2] = "NoAmmo";
|
||||
|
|
@ -775,50 +820,4 @@ datablock ShapeBaseImageData(MortarImage)
|
|||
stateSound[6] = MortarDryFireSound;
|
||||
stateTimeoutValue[6] = 1.5;
|
||||
stateTransitionOnTimeout[6] = "NoAmmo";
|
||||
|
||||
stateName[7] = "FirstLoad";
|
||||
stateTransitionOnAmmo[7] = "Ready";
|
||||
};
|
||||
|
||||
function MortarImage::onUnmount(%this,%obj,%slot){
|
||||
parent::onUnmount(%this,%obj,%slot);
|
||||
if(isEventPending(%obj.reloadDelaySch))
|
||||
cancel(%obj.reloadDelaySch);
|
||||
}
|
||||
function MortarImage::onMount(%this,%obj,%slot){
|
||||
|
||||
if(%obj.getClassName() !$= "Player")
|
||||
return;
|
||||
|
||||
if (%this.armthread $= "")
|
||||
%obj.setArmThread(look);
|
||||
else
|
||||
%obj.setArmThread(%this.armThread);
|
||||
|
||||
if(%obj.getMountedImage($WeaponSlot).ammo !$= ""){
|
||||
if (%obj.getInventory(%this.ammo)){
|
||||
%fireAndReloadTime = mFloor((%this.stateTimeoutValue[4] + %this.stateTimeoutValue[3]) * 1000);
|
||||
if(%obj.lfireTime[%this.getName()] && (getSimTime() - %obj.lfireTime[%this.getName()]) < %fireAndReloadTime){
|
||||
if(isEventPending(%obj.reloadDelaySch)){
|
||||
cancel(%obj.reloadDelaySch);
|
||||
}
|
||||
%time = mFloor(%fireAndReloadTime - (getSimTime() - %obj.lfireTime[%this.getName()]));
|
||||
%obj.reloadDelaySch = schedule(%time, 0, "ammoStateDelay", %obj, %slot, true);
|
||||
}
|
||||
else{
|
||||
%obj.setImageAmmo(%slot,true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
%obj.client.setWeaponsHudActive(%this.item);
|
||||
if(%obj.getMountedImage($WeaponSlot).ammo !$= "")
|
||||
%obj.client.setAmmoHudCount(%obj.getInventory(%this.ammo));
|
||||
else
|
||||
%obj.client.setAmmoHudCount(-1);
|
||||
}
|
||||
|
||||
function ammoStateDelay(%obj, %slot, %state){
|
||||
if(isObject(%obj) && %obj.getState() !$= "Dead")
|
||||
%obj.setImageAmmo(%slot, %state);
|
||||
}
|
||||
27
README.md
27
README.md
|
|
@ -1,4 +1,4 @@
|
|||

|
||||

|
||||
|
||||
# TacoServer
|
||||
## A Tribes 2 server with competitive features that is also open-source.
|
||||
|
|
@ -45,19 +45,20 @@ Discord: [Tribes 2 Discord](https://playt2.com/discord)
|
|||
---
|
||||
|
||||
### Important Gameplay Changes over stock classic
|
||||
- OG blaster buffed for Heavy Armors
|
||||
- No Vehicle Zone around flag is bigger 5 >> 15
|
||||
- Heavy Shield Nerfed (54 to block 1 DMG, is now 60)
|
||||
- OG blaster buffed against Heavy Armors (Not Tournament Mode Only)
|
||||
- Max FOV 120 >> 138 (For Wide Screens)
|
||||
- Item respawn time can be changed (default 30)
|
||||
- Cloak Sound 50m >> 55m
|
||||
- Bigger ground dust puffs (For cloak) 0.4 larger
|
||||
- Sensor Jammer jam radius is buffed to jam cloaks 30 >> 45
|
||||
- Sensor Jammer can passively see cloaker's triangle
|
||||
- Mortor reload rework (Player can throw, but must wait until reload time has passed)
|
||||
- Tank Shield Nerf (135 to block 1 DMG, is now 142)
|
||||
- Whiteout grenades are less seizurely (Due to spamming) 0.9 >> 0.78
|
||||
- All water viscosity follows a global preset
|
||||
- Item respawn time can be changed (Optional)
|
||||
- All water viscosity follows a global preset (3)
|
||||
- <del>No Vehicle Zone around flag is bigger 5 >> 15</del>
|
||||
- <del>Heavy Shield Nerfed (54 to block 1 DMG, is now 60)</del>
|
||||
- <del>Cloak Sound 50m >> 55m</del>
|
||||
- <del>Bigger ground dust puffs (For cloak) 0.4 larger</del>
|
||||
- <del>Sensor Jammer jam radius is buffed to jam cloaks 30 >> 45</del>
|
||||
- <del>Sensor Jammer can passively see cloaker's triangle</del>
|
||||
- <del>Mortor reload rework (Player can throw, but must wait until reload time has passed)</del>
|
||||
- <del>Tank Shield Nerf (135 to block 1 DMG, is now 142)</del>
|
||||
- <del>Whiteout grenades are less seizurely (Due to spamming) 0.9 >> 0.78</del>
|
||||
- <del>Spawn fade-in effect</del>
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue