Skip to content

Commit

Permalink
Scav fixes (beyond-all-reason#3117)
Browse files Browse the repository at this point in the history
- Immobile scav builder should now get their buildpower bonus applied properly,
- Early game scav resurrector groups made smaller,
- Extended the grace period a little bit.
  • Loading branch information
Damgam authored Jun 7, 2024
1 parent c9ff523 commit 9eba23b
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 33 deletions.
12 changes: 6 additions & 6 deletions gamedata/scavengers/unitdef_post.lua
Original file line number Diff line number Diff line change
Expand Up @@ -124,13 +124,13 @@ local function scavUnitDef_Post(name, uDef)
if uDef.maxdec then
uDef.maxdec = uDef.maxdec * 1.5
end
if uDef.builddistance then
uDef.builddistance = uDef.builddistance * 1.25
end
if uDef.workertime then
uDef.workertime = uDef.workertime * 4
end
end
if uDef.builddistance then
uDef.builddistance = uDef.builddistance * 1.25
end
if uDef.workertime then
uDef.workertime = uDef.workertime * 4
end
end

-- Remove commander customparams from _scav commanders
Expand Down
64 changes: 37 additions & 27 deletions luarules/configs/scav_spawn_defs.lua
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ economyScale = (economyScale*0.5)+0.5
local difficultyParameters = {

[difficulties.veryeasy] = {
gracePeriod = 3 * 60,
gracePeriod = 180,
bossTime = 65 * Spring.GetModOptions().scav_bosstimemult * 60, -- time at which the boss appears, seconds
scavSpawnRate = 240 / Spring.GetModOptions().scav_spawntimemult / economyScale,
burrowSpawnRate = 240 / Spring.GetModOptions().scav_spawntimemult / economyScale,
Expand All @@ -40,7 +40,7 @@ local difficultyParameters = {
},

[difficulties.easy] = {
gracePeriod = 2 * 60,
gracePeriod = 120,
bossTime = 60 * Spring.GetModOptions().scav_bosstimemult * 60, -- time at which the boss appears, seconds
scavSpawnRate = 200 / Spring.GetModOptions().scav_spawntimemult / economyScale,
burrowSpawnRate = 210 / Spring.GetModOptions().scav_spawntimemult / economyScale,
Expand All @@ -58,7 +58,7 @@ local difficultyParameters = {
bossResistanceMult = 1.5,
},
[difficulties.normal] = {
gracePeriod = 1 * 60,
gracePeriod = 90,
bossTime = 55 * Spring.GetModOptions().scav_bosstimemult * 60, -- time at which the boss appears, seconds
scavSpawnRate = 180 / Spring.GetModOptions().scav_spawntimemult / economyScale,
burrowSpawnRate = 180 / Spring.GetModOptions().scav_spawntimemult / economyScale,
Expand All @@ -76,7 +76,7 @@ local difficultyParameters = {
bossResistanceMult = 2,
},
[difficulties.hard] = {
gracePeriod = 1 * 60,
gracePeriod = 80,
bossTime = 50 * Spring.GetModOptions().scav_bosstimemult * 60, -- time at which the boss appears, seconds
scavSpawnRate = 160 / Spring.GetModOptions().scav_spawntimemult / economyScale,
burrowSpawnRate = 150 / Spring.GetModOptions().scav_spawntimemult / economyScale,
Expand All @@ -94,7 +94,7 @@ local difficultyParameters = {
bossResistanceMult = 2.5,
},
[difficulties.veryhard] = {
gracePeriod = 1 * 60,
gracePeriod = 70,
bossTime = 45 * Spring.GetModOptions().scav_bosstimemult * 60, -- time at which the boss appears, seconds
scavSpawnRate = 140 / Spring.GetModOptions().scav_spawntimemult / economyScale,
burrowSpawnRate = 120 / Spring.GetModOptions().scav_spawntimemult / economyScale,
Expand All @@ -112,7 +112,7 @@ local difficultyParameters = {
bossResistanceMult = 3,
},
[difficulties.epic] = {
gracePeriod = 1 * 60,
gracePeriod = 60,
bossTime = 40 * Spring.GetModOptions().scav_bosstimemult * 60, -- time at which the boss appears, seconds
scavSpawnRate = 120 / Spring.GetModOptions().scav_spawntimemult / economyScale,
burrowSpawnRate = 90 / Spring.GetModOptions().scav_spawntimemult / economyScale,
Expand Down Expand Up @@ -447,12 +447,12 @@ local LandUnitsList = {
[1] = {
--Armada
["armck_scav"] = 1,
["armrectr_scav"] = 40,
["armrectr_scav"] = 20,
["armcv_scav"] = 1,
["armch_scav"] = 1,
--Cortex
["corck_scav"] = 1,
["cornecro_scav"] = 40,
["cornecro_scav"] = 20,
["corcv_scav"] = 1,
["corch_scav"] = 1,
--Legion
Expand All @@ -464,12 +464,12 @@ local LandUnitsList = {
[2] = {
--Armada
["armck_scav"] = 1,
["armrectr_scav"] = 40,
["armrectr_scav"] = 20,
["armcv_scav"] = 1,
["armch_scav"] = 1,
--Cortex
["corck_scav"] = 1,
["cornecro_scav"] = 40,
["cornecro_scav"] = 20,
["corcv_scav"] = 1,
["corch_scav"] = 1,
--Legion
Expand All @@ -481,12 +481,12 @@ local LandUnitsList = {
[3] = {
--Armada
["armck_scav"] = 1,
["armrectr_scav"] = 40,
["armrectr_scav"] = 20,
["armcv_scav"] = 1,
["armch_scav"] = 1,
--Cortex
["corck_scav"] = 1,
["cornecro_scav"] = 40,
["cornecro_scav"] = 20,
["corcv_scav"] = 1,
["corch_scav"] = 1,
--Legion
Expand All @@ -497,14 +497,14 @@ local LandUnitsList = {
},
[4] = {
--Armada
["armrectr_scav"] = 40,
["armrectr_scav"] = 20,
["armack_scav"] = 1,
["armacv_scav"] = 1,
["armfark_scav"] = 1,
["armdecom_scav"] = 1,
["armconsul_scav"] = 1,
--Cortex
["cornecro_scav"] = 40,
["cornecro_scav"] = 20,
["corack_scav"] = 1,
["coracv_scav"] = 1,
["corfast_scav"] = 1,
Expand All @@ -518,14 +518,14 @@ local LandUnitsList = {
},
[5] = {
--Armada
["armrectr_scav"] = 40,
["armrectr_scav"] = 20,
["armack_scav"] = 1,
["armacv_scav"] = 1,
["armfark_scav"] = 1,
["armdecom_scav"] = 1,
["armconsul_scav"] = 1,
--Cortex
["cornecro_scav"] = 40,
["cornecro_scav"] = 20,
["corack_scav"] = 1,
["coracv_scav"] = 1,
["corfast_scav"] = 1,
Expand All @@ -539,14 +539,14 @@ local LandUnitsList = {
},
[6] = {
--Armada
["armrectr_scav"] = 40,
["armrectr_scav"] = 20,
["armack_scav"] = 1,
["armacv_scav"] = 1,
["armfark_scav"] = 1,
["armdecom_scav"] = 1,
["armconsul_scav"] = 1,
--Cortex
["cornecro_scav"] = 40,
["cornecro_scav"] = 20,
["corack_scav"] = 1,
["coracv_scav"] = 1,
["corfast_scav"] = 1,
Expand All @@ -560,14 +560,14 @@ local LandUnitsList = {
},
[7] = {
--Armada
["armrectr_scav"] = 40,
["armrectr_scav"] = 20,
["armack_scav"] = 1,
["armacv_scav"] = 1,
["armfark_scav"] = 1,
["armdecom_scav"] = 1,
["armconsul_scav"] = 1,
--Cortex
["cornecro_scav"] = 40,
["cornecro_scav"] = 20,
["corack_scav"] = 1,
["coracv_scav"] = 1,
["corfast_scav"] = 1,
Expand Down Expand Up @@ -754,70 +754,78 @@ local SeaUnitsList = {
[1] = {
--Armada
["armcs_scav"] = 1,
["armrecl_scav"] = 1,
["armrecl_scav"] = 20,
["armch_scav"] = 1,
--Cortex
["corcs_scav"] = 1,
["correcl_scav"] = 1,
["correcl_scav"] = 20,
["corch_scav"] = 1,
--Legion
["legch_scav"] = 1,
},
[2] = {
--Armada
["armcs_scav"] = 1,
["armrecl_scav"] = 1,
["armrecl_scav"] = 20,
["armch_scav"] = 1,
--Cortex
["corcs_scav"] = 1,
["correcl_scav"] = 1,
["correcl_scav"] = 20,
["corch_scav"] = 1,
--Legion
["legch_scav"] = 1,
},
[3] = {
--Armada
["armcs_scav"] = 1,
["armrecl_scav"] = 1,
["armrecl_scav"] = 20,
["armch_scav"] = 1,
--Cortex
["corcs_scav"] = 1,
["correcl_scav"] = 1,
["correcl_scav"] = 20,
["corch_scav"] = 1,
--Legion
["legch_scav"] = 1,
},
[4] = {
--Armada
["armacsub_scav"] = 1,
["armrecl_scav"] = 20,
["armmls_scav"] = 1,
--Cortex
["coracsub_scav"] = 1,
["correcl_scav"] = 20,
["cormls_scav"] = 1,
},
[5] = {
--Armada
["armacsub_scav"] = 1,
["armrecl_scav"] = 20,
["armmls_scav"] = 1,
--Cortex
["coracsub_scav"] = 1,
["correcl_scav"] = 20,
["cormls_scav"] = 1,
},
[6] = {
--Armada
["armacsub_scav"] = 1,
["armrecl_scav"] = 20,
["armmls_scav"] = 1,
--Cortex
["coracsub_scav"] = 1,
["correcl_scav"] = 20,
["cormls_scav"] = 1,

},
[7] = {
--Armada
["armacsub_scav"] = 1,
["armrecl_scav"] = 20,
["armmls_scav"] = 1,
--Cortex
["coracsub_scav"] = 1,
["correcl_scav"] = 20,
["cormls_scav"] = 1,
},
},
Expand Down Expand Up @@ -1483,7 +1491,9 @@ for tier, _ in pairs(AirUnitsList) do
end

------Tier 1 0-25% (Land and Air)
addNewSquad({ type = "healerLand", minAnger = tierConfiguration[2].minAnger, units = { "20 armrectr_scav","20 cornecro_scav",}, weight = 40, maxAnger = 1000}) --Rezzers/Entire Game
addNewSquad({ type = "healerLand", minAnger = tierConfiguration[2].minAnger, units = { "5 armrectr_scav","5 cornecro_scav",}, weight = 10, maxAnger = 1000}) --Rezzers
addNewSquad({ type = "healerLand", minAnger = tierConfiguration[4].minAnger, units = { "10 armrectr_scav","10 cornecro_scav",}, weight = 20, maxAnger = 1000}) --Rezzers
addNewSquad({ type = "healerLand", minAnger = tierConfiguration[6].minAnger, units = { "20 armrectr_scav","20 cornecro_scav",}, weight = 40, maxAnger = 1000}) --Rezzers
--Land
addNewSquad({ type = "specialLand", minAnger = tierConfiguration[2].minAnger, units = { "20 armfav_scav","20 corfav_scav",}, weight = 6, maxAnger = tierConfiguration[2].maxAnger}) --Rovers/Whole Tier Length
addNewSquad({ type = "specialLand", minAnger = tierConfiguration[2].minAnger, units = { "6 armflash_scav","6 corgator_scav","6 leghelios_scav",}, weight = 4, maxAnger = tierConfiguration[2].maxAnger}) --T1 Veh Raid
Expand Down

0 comments on commit 9eba23b

Please sign in to comment.