diff --git a/Classic/evoClassicTaco.vl2 b/Classic/evoClassicTaco.vl2 index bde462d..fc28520 100644 Binary files a/Classic/evoClassicTaco.vl2 and b/Classic/evoClassicTaco.vl2 differ diff --git a/Classic/prefs/serverPrefs.cs b/Classic/prefs/serverPrefs.cs index 9f8bfe5..6614f6b 100644 --- a/Classic/prefs/serverPrefs.cs +++ b/Classic/prefs/serverPrefs.cs @@ -83,6 +83,7 @@ $Host::EvoAdminPassVote = 0; $Host::EvoAdminReset = 0; $Host::EvoAdminServerPW = 0; $Host::EvoAdminStopVotes = 1; +$Host::EvoAdminSwitchTeams = 1; $Host::EvoAdminWhois = 0; $Host::EvoAllowAdminVoteGameType = 1; $Host::EvoAllowPlayerVoteChangeMission = 1; @@ -178,17 +179,26 @@ $Host::KickBanTime = 600; $Host::LakRabbitDuelMode = 0; $Host::LakRabbitNoSplashDamage = "1"; $Host::LakRabbitPubPro = 0; -$Host::loadingmsgcolor1 = "05edad"; -$Host::loadingmsgcolor2 = "29DEE7"; -$Host::loadingmsgcolor3 = "33CCCC"; -$Host::loadingmsgline1 = "Join Discord: "; -$Host::loadingmsgline1content = "https://t2discord.tk"; -$Host::loadingmsgline2 = "Server Github: "; -$Host::loadingmsgline2content = "https://github.com/ChocoTaco1/TacoServer"; -$Host::loadingmsgline3 = "Required Mappacks: "; -$Host::loadingmsgline3content = "S5 S8 TWL TWL2"; -$Host::loadingmsgline4 = "Hosted by: "; -$Host::loadingmsgline4content = "Branzone"; +$Host::LoadingScreenUseDebrief = 1; +$Host::LoadScreenColor1 = "05edad"; +$Host::LoadScreenColor2 = "29DEE7"; +$Host::LoadScreenColor3 = "33CCCC"; +$Host::LoadScreenLine1 = "Join Discord:"; +$Host::LoadScreenLine1_Msg = "https://discord.me/tribes2"; +$Host::LoadScreenLine2 = "Game Modes:"; +$Host::LoadScreenLine2_Msg = "LakRabbit, Capture the Flag, DeathMatch, (Light Only) Capture the Flag"; +$Host::LoadScreenLine3 = "Required Mappacks:"; +$Host::LoadScreenLine3_Msg = "S5, S8, TWL, TWL2"; +$Host::LoadScreenLine4 = "Server Provided by:"; +$Host::LoadScreenLine4_Msg = "Ravin"; +$Host::LoadScreenLine5 = "Server Hosted by:"; +$Host::LoadScreenLine5_Msg = "Branzone"; +$Host::LoadScreenLine6 = "Server Github:"; +$Host::LoadScreenLine6_Msg = "https://github.com/ChocoTaco1/TacoServer"; +$Host::LoadScreenMOTD1 = "Blaster is here to stay!"; +$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!"; $Host::Map = "VaubanLak"; $Host::MapCycleAcidRain_CTF = "0"; $Host::MapCycleAgentsOfFortune_Duel = "0"; diff --git a/Classic/scripts/autoexec/zDebriefLoadingScreen.cs b/Classic/scripts/autoexec/zDebriefLoadingScreen.cs new file mode 100644 index 0000000..2ced334 --- /dev/null +++ b/Classic/scripts/autoexec/zDebriefLoadingScreen.cs @@ -0,0 +1,472 @@ +// Debrief Loading Screen Script +// +// Use Debrief screen to show more information while loading. +// Modified to work with Classic +// Originally made for DarkMod +// Edited dramatically by ChocoTaco +// +// LoadScreenLines 5 and 6 are only used in Debrief mode. +// When LoadingScreenUseDebrief is off it defaults to the server's default loadscreen. +// MOTD Strings can be left " " in ServerPrefs to not use. + + +// PhantomPackage +// Phantom139 +// +// Global Variables +// LOADSCREEN +// +// $version="V0.31"; +// $dtLoadingScreen::DevTag = "RK4000"; //places the developer name on the screen +// $dtLoadingScreen::CoDevTag = "DarkTiger"; //places co-devs on the screen +// $dtLoadingScreen::ThankYous = "dtLoadingScreen forum members and active players."; + +// Enable Debrief Loading Screen +// $Host::LoadingScreenUseDebrief = 0; + +// MOTD or EVENTS Messages +// $Host::LoadScreenMOTD1 = "Blaster is here to stay!"; +// $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!"; + +// Colors +// $Host::LoadScreenColor1 = "05edad"; //Light Teal +// $Host::LoadScreenColor2 = "29DEE7"; //Bright Blue Teal +// $Host::LoadScreenColor3 = "33CCCC"; //Dark Teal + +// Lines +// $Host::LoadScreenLine1 = "Join Discord:"; +// $Host::LoadScreenLine1_Msg = "https://discord.me/tribes2"; +// $Host::LoadScreenLine2 = "Game Modes:"; +// $Host::LoadScreenLine2_Msg = "LakRabbit, Capture the Flag, DeathMatch, (Light Only) Capture the Flag"; +// $Host::LoadScreenLine3 = "Required Mappacks:"; +// $Host::LoadScreenLine3_Msg = "S5, S8, TWL, TWL2"; +// $Host::LoadScreenLine4 = "Server Provided by:"; +// $Host::LoadScreenLine4_Msg = "Ravin"; +// $Host::LoadScreenLine5 = "Server Hosted by:"; +// $Host::LoadScreenLine5_Msg = "Branzone"; +// $Host::LoadScreenLine6 = "Server Github:"; +// $Host::LoadScreenLine6_Msg = "https://github.com/ChocoTaco1/TacoServer"; + +// First Screen loading time (Map Screen) +// If this is set too low the second screen wont show at all +$dtLoadingScreen::FirstScreen = 6000; +// Second Screen Delay +$dtLoadingScreen::Delay = 0; + +// Include map and game rules on the debrief screen as well +// Useful if youre looking to replace both screens +$dtLoadingScreen::ShowFullScreen = 0; +// Enable/Disable Images +$dtLoadingScreen::ShowImages = 0; + + + +// Color safetynet +// If a $Host::LoadScreenColor is "" ServerPrefs will delete and replace with serverDefaults +if( $Host::LoadScreenColor1 $= " " ) $Host::LoadScreenColor1 = "05edad"; +if( $Host::LoadScreenColor2 $= " " ) $Host::LoadScreenColor2 = "29DEE7"; +if( $Host::LoadScreenColor3 $= " " ) $Host::LoadScreenColor3 = "33CCCC"; +if( $Host::Info !$= " " ) $Host::Info = " "; + + +// Keep it in a package to be neat and organized! +package LoadScreenPackage +{ + function sendLoadInfoToClient( %client ) + { + //error( "** SENDING LOAD INFO TO CLIENT " @ %client @ "! **" ); + %singlePlayer = $CurrentMissionType $= "SinglePlayer"; + messageClient( %client, 'MsgLoadInfo', "", $CurrentMission, $MissionDisplayName, $MissionTypeDisplayName ); + + // Send map quote: + for ( %line = 0; %line < $LoadQuoteLineCount; %line++ ) + { + if($LoadQuoteLine[%line] !$= "") + messageClient( %client, 'MsgLoadQuoteLine', "", $LoadQuoteLine[%line] ); + } + + // Send map objectives: + if ( %singlePlayer ) + { + switch ( $pref::TrainingDifficulty ) + { + case 2: %diff = "Medium"; + case 3: %diff = "Hard"; + default: %diff = "Easy"; + } + messageClient( %client, 'MsgLoadObjectiveLine', "", "DIFFICULTY: " @ %diff ); + } + + for ( %line = 0; %line < $LoadObjLineCount; %line++ ) + { + if ( $LoadObjLine[%line] !$= "" ) + messageClient( %client, 'MsgLoadObjectiveLine', "", $LoadObjLine[%line], !%singlePlayer ); + } + + // Send rules of engagement: + if ( !%singlePlayer ) + messageClient( %client, 'MsgLoadRulesLine', "", "RULES OF ENGAGEMENT:", false ); + + for ( %line = 0; %line < $LoadRuleLineCount; %line++ ) + { + if ( $LoadRuleLine[%line] !$= "" ) + messageClient( %client, 'MsgLoadRulesLine', "", $LoadRuleLine[%line], !%singlePlayer ); + } + + messageClient( %client, 'MsgLoadInfoDone' ); + + // ---------------------------------------------------------------------------------------------- + // z0dd - ZOD, 5/12/02. Send the mod info screen if this isn't the second showing of mission info + if(!%second) + schedule($dtLoadingScreen::FirstScreen, 0, "ALTsendModInfoToClient", %client); + // ---------------------------------------------------------------------------------------------- + } +}; + + +// Prevent package from being activated if it is already +if (!isActivePackage(LoadScreenPackage) && $Host::LoadingScreenUseDebrief) + activatePackage(LoadScreenPackage); + + + +// Dont even try to override sendModInfoToClient since evo has it +// Just make our own +function ALTsendModInfoToClient(%client) +{ + if(%client.loaded) + { + schedule($dtLoadingScreen::FirstScreen, 0, "NORMALsendModInfoToClient", %client); + return; + } + + // Sound + // As the background hum will stop on the debrief page + // Breaks the abrupt stop + // LoadingScreen sounds are limited to 5 secs or you'll receive an error + %snd = '~wgui/inventory_hum.wav'; + messageClient(%client, 'MsgLoadQuoteLine', %snd, ""); + + %line1 = "" @ $Host::LoadScreenLine1 @ " " @ $Host::LoadScreenLine1_Msg; + %line2 = "" @ $Host::LoadScreenLine2 @ " " @ $Host::LoadScreenLine2_Msg; + %line3 = "" @ $Host::LoadScreenLine3 @ " " @ $Host::LoadScreenLine3_Msg; + %line4 = "" @ $Host::LoadScreenLine4 @ " " @ $Host::LoadScreenLine4_Msg; + %line5 = "" @ $Host::LoadScreenLine5 @ " " @ $Host::LoadScreenLine5_Msg; + %line6 = "" @ $Host::LoadScreenLine6 @ " " @ $Host::LoadScreenLine6_Msg; + + if($Host::TimeLimit $= "999" || $Host::TimeLimit $= "unlimited") %timeloadingvar = "Unlimited"; else %timeloadingvar = $Host::TimeLimit; + + %time = "Time limit: " @ %timeloadingvar; + %max = "Max players: " @ $Host::MaxPlayers; + %net = "Packets Rate / Size: " @ $pref::Net::PacketRateToClient @ " / " @ $pref::Net::PacketSize; + %smurf = "Refuse smurfs: " @ ($Host::NoSmurfs ? "On" : "Off"); + + //%random = "Random teams: " @ ($RandomTeams ? "On" : "Off"); + //%fair = "Fair teams: " @ ($Host::ClassicFairTeams ? "On" : "Off"); + //%rape = "No Base Rape: " @ ($Host::EvoNoBaseRapeEnabled ? "On" : "Off"); + //%td = "Team damage: " @ ($Host::TeamDamageOn ? "On" : "Off"); + //%crc = "CRC checking: " @ ($Host::CRCTextures ? "On" : "Off"); + //%pure = "Pure server: " @ ($Host::PureServer ? "On" : "Off"); + + if($Host::EvoNoBaseRapeEnabled) + %rapeppl = "Min No Base Rape: " @ $Host::EvoNoBaseRapeClassicPlayerCount; + + %turrets = "Min Turrets: " @ $Host::EnableTurretPlayerCount; + + if($Host::EvoStats && (!$Host::TournamentMode || ($Host::TournamentMode && $Host::EvoStatsTourney)) && $Host::EvoStatsType != 0) + %stats = "Stats based on: " @ ($Host::EvoStatsType == 1 ? "Kills" : "Damage"); + + if($Evo::ETMMode && $ETMmode::CurrentMap <= $ETMmode::Counter) + { + %nmis = "Next mission: " @ $ETMmode::MapDisplayName[$ETMmode::CurrentMap]; + } + else + { + %nmis = "Next mission: " @ findNextCycleMission(); + if ( $Host::ClassicRandomMissions ) + { + %nmis = %nmis SPC "(Random)"; + } + if($Host::EvoTourneySameMap && $Host::TournamentMode) + { + %nmis = "Next mission: " @ $CurrentMission @ " (Same)"; + } + } + + %currentmis = "Current mission: " @ $MissionDisplayName @ " (" @ $MissionTypeDisplayName @ ")"; + + + $dmlP = 0; + + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + + // Images + // Desired pics much exist in the texticons folder on the client in some capacity + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + if($dtLoadingScreen::ShowImages) + { + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + %randompics = getRandom(1,4); + switch$(%randompics) + { + case 1: + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = ""; + case 2: + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = ""; + case 3: + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = ""; + case 4: + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = ""; + } + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = ""; + + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + } + + // Full screen things + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + if($dtLoadingScreen::ShowFullScreen) + { + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ $MissionDisplayName @ ":"; + for ( %line = 0; %line < $LoadQuoteLineCount; %line++ ) + { + if($LoadQuoteLine[%line] !$= "") + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ StripMLControlChars($LoadQuoteLine[%line]); + } + + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + for ( %line = 0; %line < $LoadObjLineCount; %line++ ) + { + if($LoadObjLine[%line] !$= "") + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ $LoadObjLine[%line]; + } + + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ $MissionTypeDisplayName @ ":"; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "RULES OF ENGAGEMENT:"; + for ( %line = 0; %line < $LoadRuleLineCount; %line++ ) + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ StripMLControlChars($LoadRuleLine[%line]); + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + } + + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "Info:"; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %line1; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %line2; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %line3; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "Please use /report or /msg, to report bugs, glitches, problems, suggestions, or just leave a message."; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + + + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ $Host::GameName @ ":"; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %line4; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %line5; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %line6; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %net; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %time; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %max; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %smurf; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %rapeppl; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %turrets; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %stats; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ %nmis; + $dtLoadingScreen::LoadScreenMessage[$dmlP++] = " "; + + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = %rape; + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = %random; + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = %fair; + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = %pure; + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = %crc; + + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = "*" @ $Host::GameName; + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = "" @ $Host::Info; + + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = "Map Info:"; + //$dtLoadingScreen::LoadScreenMessage[$dmlP++] = %currentmis; + + schedule($dtLoadingScreen::Delay, 0, "sendLoadscreen", %client); +} + +// Send debrief screen +function sendLoadscreen(%client) +{ + %client.loaded = 1; + messageClient( %client, 'MsgGameOver', ""); + messageClient( %client, 'MsgClearDebrief', "" ); + + messageClient(%client, 'MsgDebriefResult', "", "CLASSIC"); + messageClient(%client, 'MsgDebriefResult', "", ""); + messageClient(%client, 'MsgDebriefResult', "", "Version: " @ $classicVersion); + messageClient(%client, 'MsgDebriefResult', "", "Developers: z0dd and ZOD"); + + //%ServerMissionType = "" @ $MissionDisplayName @ "" @ "\n" @ $MissionTypeDisplayName @ ""; + //messageClient(%client, 'MsgDebriefAddLine', "", %ServerMissionType); + + //%Thanks = "\nThanks: "@$dtLoadingScreen::ThankYous@" "@ + //"\n"; + //messageClient(%client, 'MsgDebriefAddLine', "", %Thanks); + + for ( %a = 1; %a <= $dmlP; %a++ ) + { + %msgTag = $dtLoadingScreen::LoadScreenMessage[%a]; + messageClient(%client, 'MsgDebriefAddLine', "", %msgTag); + } + + %MOTDHeader = "Events:"; + %MOTDMsg1 = "" @ $Host::LoadScreenMOTD1; + %MOTDMsg2 = "" @ $Host::LoadScreenMOTD2; + %MOTDMsg3 = "" @ $Host::LoadScreenMOTD3; + %MOTDMsg4 = "" @ $Host::LoadScreenMOTD4; + + if($Host::LoadScreenMOTD1 !$= " ") + { + messageClient(%client, 'MsgDebriefAddLine', "", %MOTDHeader); + messageClient(%client, 'MsgDebriefAddLine', "", %MOTDMsg1); + if($Host::LoadScreenMOTD2 !$= " ") + { + messageClient(%client, 'MsgDebriefAddLine', "", %MOTDMsg2); + if($Host::LoadScreenMOTD3 !$= " ") + { + messageClient(%client, 'MsgDebriefAddLine', "", %MOTDMsg3); + if($Host::LoadScreenMOTD4 !$= " ") + messageClient(%client, 'MsgDebriefAddLine', "", %MOTDMsg4); + } + } + } + + // Normal Screen Always in the Background + // If client hits continue during debrief screen + sendLoadInfoToClient(%client); +} + +// Show normal second screen during following map loads +function NORMALsendModInfoToClient(%client) +{ + %line1 = "" @ $Host::LoadScreenLine1 @ " " @ $Host::LoadScreenLine1_Msg; + %line2 = "" @ $Host::LoadScreenLine2 @ " " @ $Host::LoadScreenLine2_Msg; + %line3 = "" @ $Host::LoadScreenLine3 @ " " @ $Host::LoadScreenLine3_Msg; + %line4 = "" @ $Host::LoadScreenLine4 @ " " @ $Host::LoadScreenLine4_Msg; + %line5 = "" @ $Host::LoadScreenLine5 @ " " @ $Host::LoadScreenLine5_Msg; + %line6 = "" @ $Host::LoadScreenLine6 @ " " @ $Host::LoadScreenLine6_Msg; + + if($Host::TimeLimit $= "999" || $Host::TimeLimit $= "unlimited") %timeloadingvar = "Unlimited"; else %timeloadingvar = $Host::TimeLimit; + + %time = "Time limit: " @ %timeloadingvar; + %max = "Max players: " @ $Host::MaxPlayers; + %net = "Packets Rate / Size: " @ $pref::Net::PacketRateToClient @ " / " @ $pref::Net::PacketSize; + %smurf = "Refuse smurfs: " @ ($Host::NoSmurfs ? "On" : "Off"); + + //%random = "Random teams: " @ ($RandomTeams ? "On" : "Off"); + //%fair = "Fair teams: " @ ($Host::ClassicFairTeams ? "On" : "Off"); + //%rape = "No Base Rape: " @ ($Host::EvoNoBaseRapeEnabled ? "On" : "Off"); + //%td = "Team damage: " @ ($Host::TeamDamageOn ? "On" : "Off"); + //%crc = "CRC checking: " @ ($Host::CRCTextures ? "On" : "Off"); + //%pure = "Pure server: " @ ($Host::PureServer ? "On" : "Off"); + + + if($Host::EvoNoBaseRapeEnabled) + %rapeppl = "Min No Base Rape: " @ $Host::EvoNoBaseRapeClassicPlayerCount; + + %turrets = "Min Turrets: " @ $Host::EnableTurretPlayerCount; + + if($Host::EvoStats && (!$Host::TournamentMode || ($Host::TournamentMode && $Host::EvoStatsTourney)) && $Host::EvoStatsType != 0) + %stats = "Stats based on: " @ ($Host::EvoStatsType == 1 ? "Kills" : "Damage"); + + if($Evo::ETMMode && $ETMmode::CurrentMap <= $ETMmode::Counter) + { + %nmis = "Next mission: " @ $ETMmode::MapDisplayName[$ETMmode::CurrentMap]; + } + else + { + %nmis = "Next mission: " @ findNextCycleMission(); + if ( $Host::ClassicRandomMissions ) + { + %nmis = %nmis SPC "(Random)"; + } + if($Host::EvoTourneySameMap && $Host::TournamentMode) + { + %nmis = "Next mission: " @ $CurrentMission @ " (Same)"; + } + } + + %currentmis = "Current mission: " @ $MissionDisplayName @ " (" @ $MissionTypeDisplayName @ ")"; + + // classic doesn't use a variable to print the version, it needs to be edited manually + %modName = ""; + //%ModLine[0] = "Classic Developers: z0dd and ZOD"; + %ModLine[0] = "CLASSIC"; + %ModLine[1] = ""; + %ModLine[1] = "Version: " @ $classicVersion @ ""; + %ModLine[3] = ""; + %ModLine[4] = "Developers: z0dd and ZOD"; + %ModLine[5] = ""; + + %ModCnt = 6; + + %SpecialCnt = 4; + %SpecialTextLine[0] = %line1; + %SpecialTextLine[1] = %line2; + %SpecialTextLine[2] = %line3; + %SpecialTextLine[3] = %line4; + + %ServerCnt = 8; + %ServerTextLine[0] = %time; + %ServerTextLine[1] = %max; + %ServerTextLine[2] = %net; + %ServerTextLine[3] = %smurf; + %ServerTextLine[4] = %rapeppl; + %ServerTextLine[5] = %turrets; + %ServerTextLine[6] = %stats; + %ServerTextLine[7] = %nmis; + + //%serverTextLine[2] = %td; + //%serverTextLine[3] = %crc; + //%ServerTextLine[4] = %pure; + //%ServerTextLine[5] = %fair; + //%ServerTextLine[6] = %random; + //%ServerTextLine[7] = %rape; + + + %singlePlayer = $CurrentMissionType $= "SinglePlayer"; + //messageClient(%client, 'MsgLoadInfo', "", $CurrentMission, %modName, $Host::GameName); + messageClient(%client, 'MsgLoadInfo', "", $CurrentMission); + + // Send mod details (non bulleted list, small text): + for(%line = 0; %line < %ModCnt; %line++) + if(%ModLine[%line] !$= "") + messageClient(%client, 'MsgLoadQuoteLine', "", %ModLine[%line]); + + // Send mod special settings (bulleted list, large text): + for(%line = 0; %line < %SpecialCnt; %line++) + if(%SpecialTextLine[%line] !$= "") + messageClient(%client, 'MsgLoadObjectiveLine', "", %SpecialTextLine[%line], !%singlePlayer); + + // Send server info: + if(!%singlePlayer) + messageClient(%client, 'MsgLoadRulesLine', "", "" @ $Host::Info, false); + + for(%line = 0; %line < %ServerCnt; %line++) + if (%ServerTextLine[%line] !$= "") + messageClient(%client, 'MsgLoadRulesLine', "", %ServerTextLine[%line], !%singlePlayer); + + messageClient(%client, 'MsgLoadInfoDone'); + + // z0dd - ZOD, 5/12/02. Send mission info again so as not to conflict with cs scripts. + schedule(10000, 0, "sendLoadInfoToClient", %client, true); +} \ No newline at end of file diff --git a/Classic/scripts/serverDefaults.cs b/Classic/scripts/serverDefaults.cs index 6cf84a2..ef5001e 100644 --- a/Classic/scripts/serverDefaults.cs +++ b/Classic/scripts/serverDefaults.cs @@ -194,17 +194,26 @@ $Host::PUGPassword = "pickup"; //PUG password, Auto or enable/disable thru $Host::EmptyServerReset = 1; //Whether or not you want the server to reset when its empty $Host::DMSLOnlyMode = 0; //Shocklance Only Mode for Deathmatch $Host::SCtFProMode = 0; //Pro mode for LCTF -$Host::loadingmsgcolor1 = "05edad"; //Loading screen color 1 -$Host::loadingmsgcolor2 = "29DEE7"; //Loading screen color 2 -$Host::loadingmsgcolor3 = "33CCCC"; //Loading screen color 3 -$Host::loadingmsgline1 = "Join Discord: "; //Loading screen msg line 1 -$Host::loadingmsgline1content = "https://t2discord.tk"; //Loading screen msg content 1 -$Host::loadingmsgline2 = "Server Github: "; //Loading screen msg line 2 -$Host::loadingmsgline2content = "https://github.com/ChocoTaco1/TacoServer"; //Loading screen msg content 2 -$Host::loadingmsgline3 = "Required Mappacks: "; //Loading screen msg line 3 -$Host::loadingmsgline3content = "S5 S8 TWL TWL2"; //Loading screen msg content 3 -$Host::loadingmsgline4 = "Hosted by: "; //Loading screen msg line 4 -$Host::loadingmsgline4content = "Branzone"; //Loading screen msg content 4 +$Host::LoadingScreenUseDebrief = 0; //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 +$Host::LoadScreenColor3 = "33CCCC"; //Loading Screen color; Accents +$Host::LoadScreenLine1 = "Join Discord:"; //Loading screen Line 1 Topic +$Host::LoadScreenLine1_Msg = "https://discord.me/tribes2"; //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::LoadScreenLine3 = "Required Mappacks:"; //Loading screen Line 3 Topic +$Host::LoadScreenLine3_Msg = "S5, S8, TWL, TWL2"; //Loading Screen Line 3 Message +$Host::LoadScreenLine4 = "Server Provided by:"; //Loading screen Line 4 Topic +$Host::LoadScreenLine4_Msg = "Ravin"; //Loading Screen Line 4 Message +$Host::LoadScreenLine5 = "Server Hosted by:"; //Loading screen Line 5 Topic (Debrief LoadScreen Only) +$Host::LoadScreenLine5_Msg = "Branzone"; //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 = "Blaster is here to stay!"; //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) //LakRabbit $Host::EnableLakUnlimitedDJ = 1; //Unlimited disc-jumps if enabled $Host::LakRabbitNoSplashDamage = 0; //Splash Damage enabled or not