Skip to content

Commit

Permalink
change 3spn to seconds per round rather than minutes per round
Browse files Browse the repository at this point in the history
reduce displacement durations
reduce Tac general recoil
adjust Coach Gun balance
adjust DTS balance
  • Loading branch information
Azarael committed Apr 23, 2023
1 parent 0c39468 commit ca7c90b
Show file tree
Hide file tree
Showing 57 changed files with 130 additions and 126 deletions.
6 changes: 3 additions & 3 deletions 3SPNv3141BW/Classes/AM_HUD.uc
Original file line number Diff line number Diff line change
Expand Up @@ -138,15 +138,15 @@ function CheckCountdown(GameReplicationInfo GRI)
local TAM_GRI G;

G = TAM_GRI(GRI);
if(G == None || G.MinsPerRound == 0 || G.RoundTime == 0 || G.RoundTime == OldRoundTime || GRI.Winner != None)
if(G == None || G.SecondsPerRound == 0 || G.RoundTime == 0 || G.RoundTime == OldRoundTime || GRI.Winner != None)
{
Super.CheckCountdown(GRI);
return;
}

OldRoundTime = G.RoundTime;

if(OldRoundTime > 30 && G.MinsPerRound < 2)
if(OldRoundTime > 30 && G.SecondsPerRound < 120)
return;

if(OldRoundTime == 60)
Expand All @@ -169,7 +169,7 @@ simulated function DrawTimer(Canvas C)
if(GRI == None)
return;

if(GRI.MinsPerRound > 0)
if(GRI.SecondsPerRound > 0)
{
Seconds = GRI.RoundTime;
if(GRI.TimeLimit > 0 && GRI.RoundTime > GRI.RemainingTime)
Expand Down
22 changes: 11 additions & 11 deletions 3SPNv3141BW/Classes/ArenaMaster.uc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ var bool bAllowBotRemoval;
/* general and misc */

/* overtime related */
var config int MinsPerRound; // the number of minutes before a round goes into OT
var config int SecondsPerRound; // the number of minutes before a round goes into OT
var int RoundTime; // number of seconds remaining before round-OT
var bool bRoundOT; // true if we're in round-OT
var int RoundOTTime; // how long we've been in round-OT
Expand Down Expand Up @@ -96,14 +96,14 @@ function InitGameReplicationInfo()
if(TAM_GRI(GameReplicationInfo) == None)
return;

TAM_GRI(GameReplicationInfo).RoundTime = MinsPerRound * 60;
TAM_GRI(GameReplicationInfo).RoundTime = SecondsPerRound;

TAM_GRI(GameReplicationInfo).StartingHealth = StartingHealth;
TAM_GRI(GameReplicationInfo).StartingArmor = StartingArmor;
TAM_GRI(GameReplicationInfo).bChallengeMode = bChallengeMode;
TAM_GRI(GameReplicationInfo).MaxHealth = MaxHealth;

TAM_GRI(GameReplicationInfo).MinsPerRound = MinsPerRound;
TAM_GRI(GameReplicationInfo).SecondsPerRound = SecondsPerRound;
TAM_GRI(GameReplicationInfo).OTDamage = OTDamage;
TAM_GRI(GameReplicationInfo).OTInterval = OTInterval;

Expand Down Expand Up @@ -144,7 +144,7 @@ static function FillPlayInfo(PlayInfo PI)
PI.AddSetting("3SPN", "MaxHealth", "Max Health", 0, 102, "Text", "8;0.0:2.0");
PI.AddSetting("3SPN", "bChallengeMode", "Challenge Mode", 0, 103, "Check");

PI.AddSetting("3SPN", "MinsPerRound", "Minutes per Round", 0, 120, "Text", "3;0:999");
PI.AddSetting("3SPN", "SecondsPerRound", "Seconds per Round", 0, 120, "Text", "3;0:999");
PI.AddSetting("3SPN", "OTDamage", "Overtime Damage", 0, 121, "Text", "3;0:999");
PI.AddSetting("3SPN", "OTInterval", "Overtime Damage Interval", 0, 122, "Text", "3;0:999");

Expand Down Expand Up @@ -182,7 +182,7 @@ static event string GetDescriptionText(string PropName)
case "StartingArmor": return "Base armor at round start.";
case "bChallengeMode": return "Round winners take a health/armor penalty.";

case "MinsPerRound": return "Round time-limit before overtime.";
case "SecondsPerRound": return "Round time-limit before overtime.";
case "OTDamage": return "The amount of damage all players while in OT.";
case "OTInterval": return "The interval at which OT damage is given.";

Expand Down Expand Up @@ -237,9 +237,9 @@ function ParseOptions(string Options)
if(InOpt != "")
MaxHealth = float(InOpt);

InOpt = ParseOption(Options, "MinsPerRound");
InOpt = ParseOption(Options, "SecondsPerRound");
if(InOpt != "")
MinsPerRound = int(InOpt);
SecondsPerRound = int(InOpt);

InOpt = ParseOption(Options, "OTDamage");
if(InOpt != "")
Expand Down Expand Up @@ -592,7 +592,7 @@ function StartMatch()
else
{
CurrentRound = 1;
RoundTime = 60 * MinsPerRound;
RoundTime = SecondsPerRound;
}

Misc_BaseGRI(GameReplicationInfo).CurrentRound = 0; //was 1
Expand All @@ -613,7 +613,7 @@ function StartNewRound()

bRoundOT = false;
RoundOTTime = 0;
RoundTime = 60 * MinsPerRound;
RoundTime = SecondsPerRound;

bWeaponsLocked = true;
bPendingCheckLocks=False;
Expand Down Expand Up @@ -1162,7 +1162,7 @@ state MatchInProgress
{
Misc_Player(c).Spree = 0;
//Misc_Player(c).ClientEnhancedTrackAllPlayers(false, true, false);
Misc_Player(c).ClientResetClock(MinsPerRound * 60);
Misc_Player(c).ClientResetClock(SecondsPerRound);
}

if(c.PlayerReplicationInfo == None || c.PlayerReplicationInfo.bOnlySpectator)
Expand Down Expand Up @@ -1987,7 +1987,7 @@ defaultproperties
bDisableInvis=True
bChallengeMode=True
bForceRUP=True
MinsPerRound=4
SecondsPerRound=120
OTDamage=5
OTInterval=3
CampThreshold=400.000000
Expand Down
12 changes: 6 additions & 6 deletions 3SPNv3141BW/Classes/Menu_TabAMAdmin.uc
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ function InitComponent(GUIController MyController, GUIComponent MyOwner)
moCheckBox(Controls[6]).Checked(TAM_GRI(PlayerOwner().Level.GRI).bChallengeMode);
moEditBox(Controls[7]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).MaxHealth));

moEditBox(Controls[8]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).MinsPerRound));
moEditBox(Controls[8]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).SecondsPerRound));
moEditBox(Controls[9]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).OTDamage));
moEditBox(Controls[10]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).OTInterval));

Expand Down Expand Up @@ -84,7 +84,7 @@ function bool OnClick(GUIComponent C)
s = s$"?ChallengeMode="$moCheckBox(Controls[6]).IsChecked();
s = s$"?MaxHealth="$moEditBox(Controls[7]).GetText();
s = s$"?MinsPerRound="$moEditBox(Controls[8]).GetText();
s = s$"?SecondsPerRound="$moEditBox(Controls[8]).GetText();
s = s$"?OTDamage="$moEditBox(Controls[9]).GetText();
s = s$"?OTInterval="$moEditBox(Controls[10]).GetText();
Expand Down Expand Up @@ -233,17 +233,17 @@ defaultproperties
End Object
Controls(7)=moEditBox'3SPNv3141BW.Menu_TabAMAdmin.MaxHealthBox'
Begin Object Class=moEditBox Name=MinsBox
Begin Object Class=moEditBox Name=SecondsBox
CaptionWidth=0.600000
Caption="Minutes Per Round:"
OnCreateComponent=MinsBox.InternalOnCreateComponent
Caption="Seconds Per Round:"
OnCreateComponent=SecondsBox.InternalOnCreateComponent
WinTop=0.200000
WinLeft=0.050000
WinWidth=0.400000
WinHeight=0.060000
OnChange=Menu_TabAMAdmin.OnChange
End Object
Controls(8)=moEditBox'3SPNv3141BW.Menu_TabAMAdmin.MinsBox'
Controls(8)=moEditBox'3SPNv3141BW.Menu_TabAMAdmin.SecondsBox'
Begin Object Class=moEditBox Name=OTDamBox
CaptionWidth=0.600000
Expand Down
12 changes: 6 additions & 6 deletions 3SPNv3141BW/Classes/Menu_TabTAMAdmin.uc
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ function InitComponent(GUIController MyController, GUIComponent MyOwner)
moCheckBox(Controls[6]).Checked(TAM_GRI(PlayerOwner().Level.GRI).bChallengeMode);
moEditBox(Controls[7]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).MaxHealth));

moEditBox(Controls[8]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).MinsPerRound));
moEditBox(Controls[8]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).SecondsPerRound));
moEditBox(Controls[9]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).OTDamage));
moEditBox(Controls[10]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).OTInterval));
moEditBox(Controls[20]).SetText(string(TAM_GRI(PlayerOwner().Level.GRI).Timeouts));
Expand Down Expand Up @@ -86,7 +86,7 @@ function bool OnClick(GUIComponent C)
s = s$"?ChallengeMode="$moCheckBox(Controls[6]).IsChecked();
s = s$"?MaxHealth="$moEditBox(Controls[7]).GetText();
s = s$"?MinsPerRound="$moEditBox(Controls[8]).GetText();
s = s$"?SecondsPerRound="$moEditBox(Controls[8]).GetText();
s = s$"?OTDamage="$moEditBox(Controls[9]).GetText();
s = s$"?OTInterval="$moEditBox(Controls[10]).GetText();
s = s$"?Timeouts="$moEditBox(Controls[20]).GetText();
Expand Down Expand Up @@ -239,17 +239,17 @@ defaultproperties
End Object
Controls(7)=moEditBox'3SPNv3141BW.Menu_TabTAMAdmin.MaxHealthBox'
Begin Object Class=moEditBox Name=MinsBox
Begin Object Class=moEditBox Name=SecondsBox
CaptionWidth=0.600000
Caption="Minutes Per Round:"
OnCreateComponent=MinsBox.InternalOnCreateComponent
Caption="Seconds Per Round:"
OnCreateComponent=SecondsBox.InternalOnCreateComponent
WinTop=0.200000
WinLeft=0.050000
WinWidth=0.400000
WinHeight=0.060000
OnChange=Menu_TabTAMAdmin.OnChange
End Object
Controls(8)=moEditBox'3SPNv3141BW.Menu_TabTAMAdmin.MinsBox'
Controls(8)=moEditBox'3SPNv3141BW.Menu_TabTAMAdmin.SecondsBox'
Begin Object Class=moEditBox Name=OTDamBox
CaptionWidth=0.600000
Expand Down
4 changes: 2 additions & 2 deletions 3SPNv3141BW/Classes/Misc_BaseGRI.uc
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ var int RoundMinute;
var int CurrentRound;
var bool bEndOfRound;

var int MinsPerRound;
var int SecondsPerRound;
var int OTDamage;
var int OTInterval;

Expand All @@ -33,7 +33,7 @@ var bool bPracticeRound;
replication
{
reliable if(bNetInitial && Role == ROLE_Authority)
RoundTime, MinsPerRound, bDisableSpeed, bDisableBooster, bDisableInvis,
RoundTime, SecondsPerRound, bDisableSpeed, bDisableBooster, bDisableInvis,
bDisableBerserk, StartingHealth, StartingArmor, MaxHealth, OTDamage,
OTInterval, CampThreshold, bKickExcessiveCampers, bForceRUP,
TimeOuts;
Expand Down
4 changes: 2 additions & 2 deletions 3SPNv3141BW/Classes/Misc_ComboBerserk.uc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ function Timer()
ammo = class<BallisticAmmo>(heldWeapon.GetAmmoClass(0));
sec_ammo = class<BallisticAmmo>(heldWeapon.GetAmmoClass(1));

if(ammo != None && !ammo.default.bNoPackResupply && ammo.default.InitialAmount > 4)
if(ammo != None && !ammo.static.ResuppliesFromPack() && ammo.default.InitialAmount > 4)
{
add = Max(heldWeapon.GetAmmoClass(0).default.InitialAmount * 0.1, 1);
heldWeapon.AddAmmo(add, 0);
Expand All @@ -38,7 +38,7 @@ function Timer()

ammo_count = heldWeapon.AmmoAmount(1);

if(!sec_ammo.default.bNoPackResupply && sec_ammo.default.InitialAmount > 4)
if(!sec_ammo.static.ResuppliesFromPack() && sec_ammo.default.InitialAmount > 4)
{
add = Max(heldWeapon.GetAmmoClass(1).default.InitialAmount * 0.1, 1);
heldWeapon.AddAmmo(add, 1);
Expand Down
2 changes: 1 addition & 1 deletion 3SPNv3141BW/Classes/TeamArenaMaster.uc
Original file line number Diff line number Diff line change
Expand Up @@ -502,7 +502,7 @@ defaultproperties
bChallengeMode=True
StartingArmor=100
MaxHealth=1.50000
MinsPerRound=4
SecondsPerRound=105
bForceRespawn=True
SpawnProtectionTime=0.000000
GoalScore=8
Expand Down
22 changes: 11 additions & 11 deletions 3SPNv3141BW/Classes/Team_GameBase.uc
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ var bool bAllowBotRemoval;
/* general and misc */

/* overtime related */
var config int MinsPerRound; // the number of minutes before a round goes into OT
var config int SecondsPerRound; // the number of seconds before a round goes into OT
var int RoundTime; // number of seconds remaining before round-OT
var bool bRoundOT; // true if we're in round-OT
var int RoundOTTime; // how long we've been in round-OT
Expand Down Expand Up @@ -139,13 +139,13 @@ function InitGameReplicationInfo()
if(Misc_BaseGRI(GameReplicationInfo) == None)
return;

Misc_BaseGRI(GameReplicationInfo).RoundTime = MinsPerRound * 60;
Misc_BaseGRI(GameReplicationInfo).RoundTime = SecondsPerRound;

Misc_BaseGRI(GameReplicationInfo).StartingHealth = StartingHealth;
Misc_BaseGRI(GameReplicationInfo).StartingArmor = StartingArmor;
Misc_BaseGRI(GameReplicationInfo).MaxHealth = MaxHealth;

Misc_BaseGRI(GameReplicationInfo).MinsPerRound = MinsPerRound;
Misc_BaseGRI(GameReplicationInfo).SecondsPerRound = SecondsPerRound;
Misc_BaseGRI(GameReplicationInfo).OTDamage = OTDamage;
Misc_BaseGRI(GameReplicationInfo).OTInterval = OTInterval;

Expand Down Expand Up @@ -197,7 +197,7 @@ static function FillPlayInfo(PlayInfo PI)
PI.AddSetting("3SPN", "StartingArmor", "Starting Armor", 0, 101, "Text", "3;0:999");
PI.AddSetting("3SPN", "MaxHealth", "Max Health", 0, 102, "Text", "8;1.0:2.0");

PI.AddSetting("3SPN", "MinsPerRound", "Minutes per Round", 0, 120, "Text", "3;0:999");
PI.AddSetting("3SPN", "SecondsPerRound", "Seconds per Round", 0, 120, "Text", "3;0:999");
PI.AddSetting("3SPN", "OTDamage", "Overtime Damage", 0, 121, "Text", "3;0:999");
PI.AddSetting("3SPN", "OTInterval", "Overtime Damage Interval", 0, 122, "Text", "3;0:999");
PI.AddSetting("3SPN", "MaxOTDamagePlayerDiff", "Max Overtime Damage Player Diff", 0, 122, "Text", "3;0:999");
Expand Down Expand Up @@ -237,7 +237,7 @@ static event string GetDescriptionText(string PropName)
case "StartingHealth": return "Base health at round start.";
case "StartingArmor": return "Base armor at round start.";

case "MinsPerRound": return "Round time-limit before overtime.";
case "SecondsPerRound": return "Round time-limit before overtime.";
case "OTDamage": return "The amount of damage all players while in OT.";
case "OTInterval": return "The interval at which OT damage is given.";
case "MaxOTDamagePlayerDiff": return "Maximum player difference for scaling OT damage.";
Expand Down Expand Up @@ -291,9 +291,9 @@ function ParseOptions(string Options)
if(InOpt != "")
MaxHealth = float(InOpt);

InOpt = ParseOption(Options, "MinsPerRound");
InOpt = ParseOption(Options, "SecondsPerRound");
if(InOpt != "")
MinsPerRound = int(InOpt);
SecondsPerRound = int(InOpt);

InOpt = ParseOption(Options, "OTDamage");
if(InOpt != "")
Expand Down Expand Up @@ -983,7 +983,7 @@ function StartMatch()
else
{
CurrentRound = 1;
RoundTime = 60 * MinsPerRound;
RoundTime = SecondsPerRound;
}

Misc_BaseGRI(GameReplicationInfo).CurrentRound = 0;
Expand All @@ -1006,7 +1006,7 @@ function StartNewRound()

bRoundOT = false;
RoundOTTime = 0;
RoundTime = 60 * MinsPerRound;
RoundTime = SecondsPerRound;
bFirstSpawn = true;

Deaths[0] = 0;
Expand Down Expand Up @@ -1649,7 +1649,7 @@ function RespawnTimer()
{
Misc_Player(c).Spree = 0;
//Misc_Player(c).ClientEnhancedTrackAllPlayers(false, true, false);
Misc_Player(c).ClientResetClock(MinsPerRound * 60);
Misc_Player(c).ClientResetClock(SecondsPerRound);
}

if(c.PlayerReplicationInfo == None || c.PlayerReplicationInfo.bOnlySpectator)
Expand Down Expand Up @@ -2673,7 +2673,7 @@ defaultproperties
AdrenalinePerDamage=1.000000
bForceRUP=True
ForceSeconds=60
MinsPerRound=2
SecondsPerRound=105
OTDamage=2
OTInterval=3
MaxOTDamagePlayerDiff=4
Expand Down
8 changes: 3 additions & 5 deletions 3SPNv3141BW/Classes/Team_HUDBase.uc
Original file line number Diff line number Diff line change
Expand Up @@ -381,15 +381,15 @@ function CheckCountdown(GameReplicationInfo GRI)
local Misc_BaseGRI G;

G = Misc_BaseGRI(GRI);
if(G == None || G.MinsPerRound == 0 || G.RoundTime == 0 || G.RoundTime == OldRoundTime || GRI.Winner != None)
if(G == None || G.SecondsPerRound == 0 || G.RoundTime == 0 || G.RoundTime == OldRoundTime || GRI.Winner != None)
{
Super.CheckCountdown(GRI);
return;
}

OldRoundTime = G.RoundTime;

if(OldRoundTime > 30 && G.MinsPerRound < 2)
if(OldRoundTime > 30 && G.SecondsPerRound < 120)
return;

if(OldRoundTime == 60)
Expand All @@ -412,7 +412,7 @@ simulated function DrawTimer(Canvas C)
if(GRI == None)
return;

if(GRI.MinsPerRound > 0)
if(GRI.SecondsPerRound > 0)
{
Seconds = GRI.RoundTime;
if(GRI.TimeLimit > 0 && GRI.RoundTime > GRI.RemainingTime)
Expand Down Expand Up @@ -689,8 +689,6 @@ simulated function Tick(float DeltaTime)
fPulse = Abs(1.f - 4*fBlink);
}



simulated function DrawWeaponBar( Canvas C )
{
local int i, Count, Pos;
Expand Down
2 changes: 1 addition & 1 deletion BCoreProV55/Classes/BallisticDamageType.uc
Original file line number Diff line number Diff line change
Expand Up @@ -467,7 +467,7 @@ defaultproperties
ArmorHitType=255
InvasionDamageScaling=1.000000
DamageIdent="Unknown"
AimDisplacementDuration=0.600000
AimDisplacementDuration=0.500000
bSimpleDeathMessages=True
MinMotionBlurDamage=10.000000
MotionBlurDamageRange=80.000000
Expand Down
10 changes: 9 additions & 1 deletion BCoreProV55/Classes/BallisticWeapon.uc
Original file line number Diff line number Diff line change
Expand Up @@ -644,7 +644,15 @@ simulated function PostNetBeginPlay()
// Link up with sprint control
LinkSprintControl();

assert(ParamsClasses[GameStyleIndex] != None);
// assert(ParamsClasses[GameStyleIndex] != None);

if (ParamsClasses[GameStyleIndex] == None)
{
if (PlayerController(Instigator.Controller) != None)
PlayerController(Instigator.Controller).ClientMessage("NO PARAMS FOR "$Name);

return;
}

// Forced to delay initialization because of the need to wait for GameStyleIndex and LayoutIndex to be replicated
if (Level.NetMode == NM_Client)
Expand Down
Loading

0 comments on commit ca7c90b

Please sign in to comment.