Content Suggestion Lock out Alternative wars after one has been triggered

Content Suggestions will be reviewed by Content Team weekly, please allow time as not everything can be reviewed at once.
Today there were very few conquest wars. Personally, and I believe many others agree, Capture the Flag (CTF) and Search & Destroy (S&D) modes tend to be less engaging as regular war types. While they can be enjoyable occasionally, they currently trigger too frequently. Hot Paths is another mode worth mentioning—though I find it somewhat better than CTF and S&D, please share your opinions about Hot Paths as well.

I propose two potential solutions to balance the frequency of war modes:

  1. After an alternative war mode (such as CTF or S&D) is triggered, no alternative mode should appear for the next 2-3 wars.
    For instance, if an S&D war is activated, the following two wars would exclusively be conquest.
  2. After an alternative war mode is triggered, only that specific mode is temporarily disabled for 2-3 wars.
    For example, if an S&D war occurs, it would be unavailable for the subsequent two wars, although other alternative modes like CTF could still be selected.
This is all my own opinion, but I am curious to see what you guys think.

Edit: Just realised i didn't format this properly. Keeping it here anyway because I made this quickly
 
Last edited:
+support

i hope this not require much devwork otherwise it aint happening
local recentWars = {}
local lockoutDuration = 2

function triggerWar(warType)
if isLockedOut(warType) then
print(warType .. " is currently locked out.")
return false
end

table.insert(recentWars, 1, {type = warType, countdown = lockoutDuration})

-- Option 1: Lock all alternative wars
if warType ~= "Conquest" then
lockAllAlternativeWars()
end

-- Option 2: Lock only specific alternative war
-- (Uncomment below line if using option 2)
-- lockSpecificWar(warType)

updateWarLocks()
return true
end

function isLockedOut(warType)
for _, war in ipairs(recentWars) do
if war.type == warType or (warType ~= "Conquest" and war.type == "AllAlternatives") then
return true
end
end
return false
end

function lockAllAlternativeWars()
table.insert(recentWars, 1, {type = "AllAlternatives", countdown = lockoutDuration})
end

function lockSpecificWar(warType)
table.insert(recentWars, 1, {type = warType, countdown = lockoutDuration})
end

function updateWarLocks()
for i = #recentWars, 1, -1 do
recentWars.countdown = recentWars.countdown - 1
if recentWars.countdown <= 0 then
table.remove(recentWars, i)
end
end
 
Sep 15, 2023
184
20
61
We got a expert over here
local recentWars = {}
local lockoutDuration = 2

function triggerWar(warType)
if isLockedOut(warType) then
print(warType .. " is currently locked out.")
return false
end

table.insert(recentWars, 1, {type = warType, countdown = lockoutDuration})

-- Option 1: Lock all alternative wars
if warType ~= "Conquest" then
lockAllAlternativeWars()
end

-- Option 2: Lock only specific alternative war
-- (Uncomment below line if using option 2)
-- lockSpecificWar(warType)

updateWarLocks()
return true
end

function isLockedOut(warType)
for _, war in ipairs(recentWars) do
if war.type == warType or (warType ~= "Conquest" and war.type == "AllAlternatives") then
return true
end
end
return false
end

function lockAllAlternativeWars()
table.insert(recentWars, 1, {type = "AllAlternatives", countdown = lockoutDuration})
end

function lockSpecificWar(warType)
table.insert(recentWars, 1, {type = warType, countdown = lockoutDuration})
end

function updateWarLocks()
for i = #recentWars, 1, -1 do
recentWars.countdown = recentWars.countdown - 1
if recentWars.countdown <= 0 then
table.remove(recentWars, i)
end
end
 

shaun11103

MRP War Veteran
Mar 13, 2022
276
72
111
local recentWars = {}
local lockoutDuration = 2

function triggerWar(warType)
if isLockedOut(warType) then
print(warType .. " is currently locked out.")
return false
end

table.insert(recentWars, 1, {type = warType, countdown = lockoutDuration})

-- Option 1: Lock all alternative wars
if warType ~= "Conquest" then
lockAllAlternativeWars()
end

-- Option 2: Lock only specific alternative war
-- (Uncomment below line if using option 2)
-- lockSpecificWar(warType)

updateWarLocks()
return true
end

function isLockedOut(warType)
for _, war in ipairs(recentWars) do
if war.type == warType or (warType ~= "Conquest" and war.type == "AllAlternatives") then
return true
end
end
return false
end

function lockAllAlternativeWars()
table.insert(recentWars, 1, {type = "AllAlternatives", countdown = lockoutDuration})
end

function lockSpecificWar(warType)
table.insert(recentWars, 1, {type = warType, countdown = lockoutDuration})
end

function updateWarLocks()
for i = #recentWars, 1, -1 do
recentWars.countdown = recentWars.countdown - 1
if recentWars.countdown <= 0 then
table.remove(recentWars, i)
end
end
thinks that giving them the code matters 😂