Merge branch 'NoEvo'

This commit is contained in:
ChocoTaco 2021-07-17 11:42:15 -04:00
commit 417aec8302
10 changed files with 123 additions and 55 deletions

View file

@ -20,11 +20,11 @@ function loadMissionStage2()
switch$($Host::PUGpasswordAlwaysOn)
{
case 0:
if( $CurrentMissionType !$= "LakRabbit" )
if($CurrentMissionType !$= "LakRabbit")
{
if( $Host::TournamentMode && $Host::PUGautoPassword )
if($Host::TournamentMode && $Host::PUGautoPassword)
$Host::Password = $Host::PUGPassword;
else if( !$Host::TournamentMode )
else if(!$Host::TournamentMode)
{
if($Host::Password)
$Host::Password = "";
@ -35,7 +35,7 @@ function loadMissionStage2()
//Set server mode to SPEED
$Host::HiVisibility = "0";
}
else if( $CurrentMissionType $= "LakRabbit" )
else if($CurrentMissionType $= "LakRabbit")
{
if($Host::Password)
$Host::Password = "";
@ -53,7 +53,7 @@ function loadMissionStage2()
}
//Siege NoBaseRape Fix
if( $CurrentMissionType $= "Siege" )
if($CurrentMissionType $= "Siege")
$Host::NoBaseRapeEnabled = 0;
else
$Host::NoBaseRapeEnabled = 1;

View file

@ -24,18 +24,9 @@ function CreateServer( %mission, %missionType )
//Call for a GetTeamCount update
GetTeamCounts(%game);
// Set when server starts
// Used to reset timelimit (if voted) when map changes
$DefaultTimeLimit = $Host::TimeLimit;
// Prevent package from being activated if it is already
if (!isActivePackage(TeamCountsTriggers))
activatePackage(TeamCountsTriggers);
// Auto Daily Hard Server Restart at a specific time
// getTimeDif from zDarkTigerStats.cs
if($dtStats::version)
schedule(getTimeDif("10\t00\tam"),0,"quit");
}
};

View file

@ -449,10 +449,13 @@ 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
{
adminStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4);
adminLog(%client, " stopped the vote in progress.");
if(%client.isSuperAdmin || (%client.isAdmin && $Host::AllowAdminStopVote))
{
adminStartNewVote(%client, %typename, %arg1, %arg2, %arg3, %arg4);
adminLog(%client, " stopped the vote in progress.");
}
}
// LakRabbit Stuff

View file

@ -3,7 +3,7 @@
// Dont allow the match to end if a time vote is pending
// Or if the timelimit has changed
//
// Changes were also made in the Evo Admin.ovl and DefaultGame.ovl
// 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
@ -25,7 +25,7 @@ function DefaultGame::checkTimeLimit(%game, %forced)
%game.timeCheck = %game.schedule(20000, "checkTimeLimit");
return;
}
%curTimeLeftMS = ($Host::TimeLimit * 60 * 1000) + $missionStartTime - getSimTime();
if (%curTimeLeftMS <= 0)
@ -43,9 +43,9 @@ function DefaultGame::checkTimeLimit(%game, %forced)
}
case InProgress:
//Do Nothing
case TimeChanged:
case TimeChanged:
//Do Nothing
case Normal:
case Normal:
// time's up, put down your pencils
%game.timeLimitReached();
}
@ -65,7 +65,7 @@ function DefaultGame::checkTimeLimit(%game, %forced)
function DefaultGame::gameOver(%game)
{
Parent::gameOver(%game);
//Reset everything to do with Vote Overtime
ResetVOall(%game);
}
@ -95,4 +95,4 @@ function ResetVOall(%game)
// Prevent package from being activated if it is already
if (!isActivePackage(VoteOverTime))
activatePackage(VoteOverTime);
activatePackage(VoteOverTime);

View file

@ -234,6 +234,15 @@ function CreateServer(%mission, %missionType)
// TraversalRoot Console spam fix
if($Host::ClassicSuppressTraversalRootError)
suppressTraversalRootPatch();
// Set when server starts
// Used to reset timelimit (if voted) when map changes
$DefaultTimeLimit = $Host::TimeLimit;
// Auto Daily Hard Server Restart at a specific time
// getTimeDif from zDarkTigerStats.cs
if($dtStats::version)
schedule(getTimeDif("10\t00\tam"),0,"quit"); //10AM server time
}
function initGameBots( %mission, %mType )
@ -815,7 +824,7 @@ function GameConnection::onConnect( %client, %name, %raceGender, %skin, %voice,
//Changed to allow botskins
%temp = detag( %skin );
if(%temp $= "")
%client.skin = addTaggedString( "base" );
%client.skin = addTaggedString( "base" );
else
%client.skin = addTaggedString( %skin );

View file

@ -0,0 +1,64 @@
// grenade (thrown by hand) script
// ------------------------------------------------------------------------
datablock EffectProfile(FlashGrenadeExplosionEffect)
{
effectname = "explosions/grenade_flash_explode";
minDistance = 10;
maxDistance = 30;
};
datablock AudioProfile(FlashGrenadeExplosionSound)
{
filename = "fx/explosions/grenade_flash_explode.wav";
description = AudioExplosion3d;
preload = true;
effect = FlashGrenadeExplosionEffect;
};
datablock ExplosionData(FlashGrenadeExplosion)
{
explosionShape = "disc_explosion.dts";
soundProfile = FlashGrenadeExplosionSound;
faceViewer = true;
};
datablock ItemData(FlashGrenadeThrown)
{
shapeFile = "grenade_flash.dts"; // z0dd - ZOD, 5/19/03. Was grenade.dts
mass = 0.7;
elasticity = 0.2;
friction = 1;
pickupRadius = 2;
maxDamage = 0.4;
explosion = FlashGrenadeExplosion;
indirectDamage = 0.5;
damageRadius = 10.0;
radiusDamageType = $DamageType::Grenade;
kickBackStrength = 1000;
computeCRC = true;
maxWhiteout = 0.78; // z0dd - ZOD, 9/8/02. Was 1.2 //Reduced. Was 0.9 Choco
};
datablock ItemData(FlashGrenade)
{
className = HandInventory;
catagory = "Handheld";
shapeFile = "grenade_flash.dts"; // z0dd - ZOD, 5/19/03. Was grenade.dts
mass = 0.7;
elasticity = 0.2;
friction = 1;
pickupRadius = 2;
thrownItem = FlashGrenadeThrown;
pickUpName = "some flash grenades";
isGrenade = true;
//computeCRC = true; // z0dd - ZOD, 5/19/03. Only need to check this model once.
};
//--------------------------------------------------------------------------
// Functions:
//--------------------------------------------------------------------------
function FlashGrenadeThrown::onCollision( %data, %obj, %col )
{
// Do nothing...
}

View file

@ -1,4 +1,4 @@
![Tribes 2](https://cdn.discordapp.com/attachments/521797012014759970/678460505597149214/TacoServer.png)
![Tribes 2](https://cdn.discordapp.com/attachments/521797012014759970/678460505597149214/TacoServer.png)
# TacoServer
## A Tribes 2 server with competitive features that is also open-source.
@ -10,32 +10,33 @@ Discord: [Tribes 2 Discord](https://discord.gg/Y4muNvF)
### Features
- Improved NoBaseRape Asset handling
- An Independant Team Population Counter
- Team-balance notifys
- NoBaseRape notifys
- Built Light-Weight
- Team Autobalancing
- Minimum Cloakpack Management
- Minimum Turret Management
- MortarTurret Management
- Loading screen customization options
- Vote Overtime
- Vote in Progress chimes
- Extended 3-2 minute timeleft warnings
- Show Next Map player options
- Simplified player options menu
- Observer cooldown
- Set the Next Mission options
- Map Repetition Checker
- Team-Balance and Base Rape Messages
- Pack Restrictions
- No Base Rape based on Population
- Turret Activation based on Population
- Loading screen customization
- Time warnings
- Late Time Voting
- Vote chimes
- Vote Restricting
- Bug Fixes
- Map Stats
- Full Players Stats
- In-Game Stats Viewable
- Improved Map Rotation
- PUG password Management
- Improved LakRabbit experience
- Extended LakRabbit debriefing
- Improved LCTF experience
- Improved Deathmatch experience
- Pro Mode for LCTF
- Shocklance Only Mode for Deathmatch
- Full Stats System
- PUG password options
- Ability to Lock Teams
- Disable/Enable Tournament Net Client In-Game
- LakRabbit improvements
- Various tweaks for PUBs
- Added Deathmatch, LCTF
- Support for Siege
- Shocklance Only Deathmatch Mode
- Admin Logging
- Teamkill Warnings
- General Improvments
---
@ -45,14 +46,15 @@ Discord: [Tribes 2 Discord](https://discord.gg/Y4muNvF)
### Prerequisites
- Classic 1.5.2
- TribesNext Patch
### Setup
- Meant to be installed on top of Classic 1.5.2
- If the file isnt on this github it is unmodified in Classic 1.5.2
- Place github server files in Classic folder
- If a file isnt on this github it is unmodified in Classic 1.5.2
- Extract Classic 1.5.2 to GameData folder
- Place files from this github in Classic folder (Overwriting old files)
- Run once to create Serverprefs
- Open Classic/Pref/Serverpref.cs and modify to your wishes
- Open Classic/Prefs/Serverprefs.cs in notepad and modify
- Run using Classic_dedicated_server.bat
----
@ -60,6 +62,5 @@ Discord: [Tribes 2 Discord](https://discord.gg/Y4muNvF)
### Credits & Thanks
- BattleLore for this template and help
- The T2 community for the free testing
- DarkTiger
- DarkTiger, Ravin, Krash
- The TribesNext community
- Some very specific people for all their harsh criticism