Closed phreic closed 9 years ago
Looks good, thanks. I'm not sure if I'll have time to verify this and release it this weekend, but I'll try.
Question: are there round time limits for Obliteration and Squad Obliteration? Is the max round 30 minutes if vars.roundTimeLimit and/or vars.gameModeCounter is 100%? Refers to this block of code:
// Special handling for CTF & Carrier Assault modes
bool isCTF = IsCTF();
bool isCarrierAssault = IsCarrierAssault();
bool isObliteration = IsObliteration();
if (isCTF || isCarrierAssault || isObliteration) {
if (fRoundStartTimestamp == DateTime.MinValue) return Phase.Early;
double earlyMinutes = earlyTickets;
double lateMinutes = lateTickets;
// TBD - assume max round time is 20 minutes for CTF at 100%
// TBD - assume max round time is 30 minutes for CRL/CRS at 100%
double maxMinutes = ((isCTF) ? 20 : 30) * fRoundTimeLimit;
Default round times on CTF and Obliteration have changed with some patches.
I've just tested the default round time with vars.roundTimeLimit 100:
Squad Obliteration ("SquadObliteration0"): 20 min Obliteration ("Obliteration" and "vars.isCompetitive false"): 20 min Obliteration Competitive ("Obliteration" and "vars.isCompetitive true"): 20 min CTF (CaptureTheFlag0): 20 min
vars.gameModeCounter has no effect on round time and Obliteration at all but It changes the flags which need to be captured to win a round in CaptureTheFlag0:
vars.gameModeCounter 100 3 Flags vars.gameModeCounter 100 6 Flags
Great detail, makes updating the code easy. Thanks.
Added Squad Obliteration and Obliteration (Competitive) support. Obliteration is handled in the same way as NS Carrier Assault and CTF