Made LCTF Gamemode

This commit is contained in:
ChocoTaco 2025-01-11 16:48:01 -05:00
parent 90bb6175dc
commit 0c3e7c9892
7 changed files with 2705 additions and 80 deletions

View file

@ -442,94 +442,94 @@ addRotationMap("Crater71Lak", "Lakrabbit",1,0,6,-1);
//In Rotation
/////////////////////////////////////////////////////////////////////
addRotationMap("DangerousCrossingLT", "sctf",1,0,-1,-1);
addRotationMap("SmallCrossingLT", "sctf",1,0,-1,12);
addRotationMap("DireLT", "sctf",1,0,-1,-1);
addRotationMap("RoundTheMountainLT", "sctf",1,1,-1,-1);
addRotationMap("CirclesEdgeLT", "sctf",1,1,-1,-1);
addRotationMap("TenebrousCTF", "sctf",1,0,-1,-1);
addRotationMap("TheFray", "sctf",1,0,-1,-1);
addRotationMap("SignalLT", "sctf",1,0,-1,-1);
addRotationMap("S5_DamnationLT", "sctf",1,0,8,-1);
addRotationMap("S5_Icedance", "sctf",1,1,-1,-1);
addRotationMap("S5_Mordacity", "sctf",1,1,10,-1);
addRotationMap("S5_SilenusLT", "sctf",1,0,-1,-1);
addRotationMap("TWL2_CanyonCrusadeDeluxeLT", "sctf",1,1,-1,-1);
addRotationMap("TWL2_HildebrandLT", "sctf",1,1,-1,-1);
addRotationMap("TWL2_SkylightLT", "sctf",1,1,-1,-1);
addRotationMap("TWL_FeignLT", "sctf",1,0,-1,-1);
addRotationMap("TWL_RollercoasterLT", "sctf",1,0,-1,-1);
addRotationMap("TWL_StonehengeLT", "sctf",1,1,-1,-1);
addRotationMap("TWL_WilderZoneLT", "sctf",1,0,-1,-1);
addRotationMap("oasisintensity", "sctf",1,1,-1,10);
addRotationMap("berlard", "sctf",1,1,-1,-1);
addRotationMap("RaindanceLT", "sctf",1,0,-1,-1);
addRotationMap("SmallTimeLT", "sctf",1,0,-1,-1);
addRotationMap("ArenaDome", "sctf",1,1,-1,10);
addRotationMap("Bulwark", "sctf",1,1,-1,-1);
addRotationMap("Discord", "sctf",1,1,-1,-1);
addRotationMap("S5_MassiveLT", "sctf",1,0,-1,-1);
addRotationMap("Blink", "sctf",1,0,-1,-1);
addRotationMap("HillSideLT", "sctf",1,1,-1,10);
addRotationMap("IcePick", "sctf",1,1,-1,16);
addRotationMap("OsIrisLT", "sctf",1,0,-1,-1);
addRotationMap("GrassyKnoll", "sctf",1,1,-1,-1);
addRotationMap("TWL2_MuddySwamp", "sctf",1,0,8,-1);
addRotationMap("SandyRunLT", "sctf",1,0,-1,12);
addRotationMap("Sentry", "sctf",1,1,-1,-1);
addRotationMap("Cinerarium", "sctf",1,1,-1,-1);
addRotationMap("Exhumed", "sctf",1,1,-1,-1);
addRotationMap("S8_ZilchLT", "sctf",1,1,-1,-1);
addRotationMap("TWL_BeachBlitzLT", "sctf",1,0,-1,-1);
addRotationMap("FrozenHopeLT", "sctf",1,1,-1,-1);
//addRotationMap("Confusco", "sctf",1,0,6,-1);
addRotationMap("TWL2_JaggedClawLT", "sctf",1,1,-1,-1);
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("GrassyKnoll", "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("Cinerarium", "LCTF",1,1,-1,-1);
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", "sctf",1,0,-1,-1);
addRotationMap("S5_WoodymyrkLT", "sctf",1,0,-1,-1);
addRotationMap("S8_Opus", "sctf",1,0,-1,-1);
addRotationMap("TWL_DangerousCrossing", "sctf",1,0,-1,-1);
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", "sctf",1,1,-1,-1);
addRotationMap("RushLT", "sctf",1,1,-1,-1);
addRotationMap("HillKingLT", "sctf",1,1,-1,-1);
addRotationMap("DMP_BastardForgeLT", "sctf",1,1,-1,-1);
addRotationMap("VanDamnedLT", "sctf",1,1,-1,-1);
addRotationMap("DMP_Paranoia", "sctf",1,0,-1,-1);
addRotationMap("DMP_Spincycle", "sctf",1,1,-1,-1);
addRotationMap("Ravine", "sctf",1,1,-1,-1);
// addRotationMap("DX_Badlands", "sctf",1,0,-1,-1);
// addRotationMap("DX_Desert", "sctf",1,0,-1,-1);
addRotationMap("DX_Ice", "sctf",1,1,-1,-1);
addRotationMap("PipeDreamLT", "sctf",1,0,-1,-1);
addRotationMap("DMP_LavaGods", "sctf",1,0,10,20);
addRotationMap("DMP_StarFallLT", "sctf",1,1,-1,-1);
addRotationMap("DMP_BunkeredLT", "sctf",1,1,-1,12);
addRotationMap("DMP_PariahLT", "sctf",1,1,-1,-1);
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_Spincycle", "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", "sctf",1,0,-1,-1);
addRotationMap("DuelersDelight", "sctf",1,0,-1,12);
addRotationMap("SmallSpit", "sctf",1,1,-1,14);
addRotationMap("BonespurLT", "sctf",1,1,-1,14);
addRotationMap("Bridgepoint", "sctf",1,1,-1,14);
addRotationMap("NarcolepsyLT", "sctf",1,1,-1,14);
addRotationMap("WhiteDwarfDeluxeLT", "sctf",1,0,-1,14);
addRotationMap("ClusterUnFuct", "sctf",1,1,8,-1);
addRotationMap("OuterWilds", "sctf",1,1,-1,12);
addRotationMap("Drafts", "sctf",1,1,-1,12);
addRotationMap("DermCrossingDeluxeLT", "sctf",1,1,-1,-1);
addRotationMap("SuperiorWaterworks", "sctf",1,0,-1,12);
addRotationMap("FrozenForgeLT", "sctf",1,1,-1,20);
addRotationMap("TWL2_CelerityLT", "sctf",1,1,-1,20);
addRotationMap("El_Fin", "sctf",1,1,-1,14);
//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("OuterWilds", "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_Fin", "LCTF",1,1,-1,14);
// _____ _ _ _ _

View file

@ -114,6 +114,7 @@ $Host::LakRabbitPubPro = 0;
$Host::LakRabbitShowFlagIcon = 1;
$Host::LakRabbitShowFlagTask = 0;
$Host::LakRabbitUnlimitedDJ = 1;
$Host::LCTFProMode = 0;
$Host::LoadingScreenUseDebrief = 1;
$Host::LoadScreenColor1 = "05edad";
$Host::LoadScreenColor2 = "29DEE7";
@ -158,7 +159,6 @@ $Host::PUGautoPassword = 0;
$Host::PUGPassword = "pickup";
$Host::PUGpasswordAlwaysOn = 0;
$Host::PureServer = 0;
$Host::SCtFProMode = 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) {";

2524
Classic/scripts/LCTFGame.cs Normal file

File diff suppressed because it is too large Load diff

99
Classic/scripts/aiLCTF.cs Normal file
View file

@ -0,0 +1,99 @@
//-----------------------------------------------
// AI functions for Spawn CtF >> LCTF
function LCTFGame::onAIRespawn(%game, %client)
{
//add the default task
if (! %client.defaultTasksAdded)
{
%client.defaultTasksAdded = true;
%client.addTask(AIEngageTask);
%client.addTask(AIPickupItemTask);
%client.addTask(AITauntCorpseTask);
%client.addtask(AIEngageTurretTask);
%client.addtask(AIDetectMineTask);
%client.addtask(AIDetectRemeqTask); // -- Lagg... ---- 1-9-2003
%client.addtask(AIPilotTask); // BotPilot: Josef "Werewolf" Jahn
}
}
function LCTFGame::AIInit(%game)
{
// load external objectives files
loadObjectives();
for (%i = 1; %i <= %game.numTeams; %i++)
{
if (!isObject($ObjectiveQ[%i]))
{
$ObjectiveQ[%i] = new AIObjectiveQ();
MissionCleanup.add($ObjectiveQ[%i]);
}
error("team " @ %i @ " objectives load...");
$ObjectiveQ[%i].clear();
AIInitObjectives(%i, %game);
}
//call the default AIInit() function
AIInit();
}
function LCTFGame::AIplayerCaptureFlipFlop(%game, %player, %flipFlop)
{
}
function LCTFGame::AIplayerTouchEnemyFlag(%game, %player, %flag)
{
}
function LCTFGame::AIplayerTouchOwnFlag(%game, %player, %flag)
{
}
function LCTFGame::AIflagCap(%game, %player, %flag)
{
//signal the flag cap event
AIRespondToEvent(%player.client, 'EnemyFlagCaptured', %player.client);
// MES - changed above line - did not pass args in correct order
}
function LCTFGame::AIplayerDroppedFlag(%game, %player, %flag)
{
}
function LCTFGame::AIflagReset(%game, %flag)
{
}
function LCTFGame::onAIDamaged(%game, %clVictim, %clAttacker, %damageType, %implement)
{
if (%clAttacker && %clAttacker != %clVictim && %clAttacker.team == %clVictim.team)
{
schedule(250, %clVictim, "AIPlayAnimSound", %clVictim, %clAttacker.player.getWorldBoxCenter(), "wrn.watchit", -1, -1, 0);
//clear the "lastDamageClient" tag so we don't turn on teammates... unless it's uberbob!
%clVictim.lastDamageClient = -1;
}
}
function LCTFGame::onAIKilledClient(%game, %clVictim, %clAttacker, %damageType, %implement)
{
if (%clVictim.team != %clAttacker.team)
DefaultGame::onAIKilledClient(%game, %clVictim, %clAttacker, %damageType, %implement);
}
function LCTFGame::onAIKilled(%game, %clVictim, %clAttacker, %damageType, %implement)
{
DefaultGame::onAIKilled(%game, %clVictim, %clAttacker, %damageType, %implement);
}
function LCTFGame::onAIFriendlyFire(%game, %clVictim, %clAttacker, %damageType, %implement)
{
if (%clAttacker && %clAttacker.team == %clVictim.team && %clAttacker != %clVictim && !%clVictim.isAIControlled())
{
// The Bot is only a little sorry:
if ( getRandom() > 0.9 )
AIMessageThread("ChatSorry", %clAttacker, %clVictim);
}
}

View file

@ -54,7 +54,7 @@ function GetTeamCounts(%game)
if(!$Host::TournamentMode)
{
if($CurrentMissionType $= "CTF") //No SCtF
if($CurrentMissionType $= "CTF") //No LCTF
NBRStatusNotify(%game); //Base Rape
if($CurrentMissionType $= "CTF" || $CurrentMissionType $= "DM")

View file

@ -145,6 +145,7 @@ function CreateServer(%mission, %missionType)
exec("scripts/defaultGame.cs");
exec("scripts/CTFGame.cs");
exec("scripts/SCtFGame.cs");
exec("scripts/LCTFGame.cs");
exec("scripts/PracticeCTFGame.cs");
exec("scripts/TeamHuntersGame.cs");
exec("scripts/SinglePlayerGame.cs");
@ -175,6 +176,7 @@ function CreateServer(%mission, %missionType)
(%type !$= PracticeCTFGame) &&
(%type !$= RabbitGame) &&
(%type !$= SCtFGame) &&
(%type !$= LCTFGame) &&
(%type !$= SiegeGame) &&
(%type !$= SinglePlayerGame) &&
(%type !$= TeamHuntersGame) &&

View file

@ -132,7 +132,7 @@ $Host::PUGautoPassword = 0; //Auto enable a password in tournament mode
$Host::PUGPassword = "pickup"; //PUG password, Auto or enable/disable thru admin menu
$Host::PUGpasswordAlwaysOn = 0; //If you want the pug password Always on
$Host::DMSLOnlyMode = 0; //Shocklance Only Mode for Deathmatch
$Host::SCtFProMode = 0; //Pro mode for LCTF
$Host::LCTFProMode = 0; //Pro mode for LCTF
$Host::LoadingScreenUseDebrief = 1; //Enable Debrief Style Loading screen; Gives you more lines and MOTD
$Host::LoadScreenColor1 = "05edad"; //Loading Screen color; First Column
$Host::LoadScreenColor2 = "29DEE7"; //Loading Screen color; Second Column