Rampant

by Veden
Improves the enemies tactics by using potential fields/pheromones allowing probing of defenses, retreats, reinforcements, counterattacking, breaching, raids, rallying death cry, and player hunting. Uses non-homing blockable biter projectiles. Adds new Enemies (disabled by default). Can completely replace the vanilla AI. Difficulty setting in mod options menu.
a month ago
0.13 - 0.17
136611

g Trounced. What happened?

- 5 months ago
(updated 5 months ago)

Pawz and I were about 80 minutes into a new game when our very first attack occurred. It was maybe 500-700 biters all at once and they ate the entire base.

What I don't understand is why the biters were so strong and numerous. There was truly no chance we could have survived. Here are some relevant screenshots.

https://i.imgur.com/o6VTGYl.png
https://i.imgur.com/nAsRLfG.png
https://i.imgur.com/vm715FP.png
https://i.imgur.com/XS7PZwf.png <--- Offending spawner producing soldier class

Why would a soldier class with thousands of hitpoints and high resistances appear in the very first attack of the game? Our turrets could not even damage it. And I'm not kidding there were several hundred. This was the kind of attack I'd expect maybe 70 hours into the game... not 1 hour.

- 5 months ago

Looks like Unit Variations ends up creating a list of spawn variations that includes much higher tier units.

- 5 months ago

Do you have a save?

- 5 months ago
(updated 5 months ago)
- 5 months ago
(updated 5 months ago)

Yeah.. a lot of mods though.

But if we reduce Unit/Spawner/Worm Variations to 1, the Soldier class biters disappear.

- 5 months ago

Thing is, shouldn't we be able to have variations? With a max of 20, I figured 4 was relatively safe.

- 5 months ago

Variations are just randomness within a tier, so it should not be causing issues.

- 5 months ago

what is lots of mods, under 30? 50? 100?

- 5 months ago
(updated 5 months ago)

This many.
https://i.imgur.com/xE55qf2.png
Just realized you won't be able to load it anyway because you don't have our hacked version of Angels Pressuretanks where we removed the hardcoded petrochem dependency

Yeah variations =4 makes soldiers show up at 10% evolution.

- 5 months ago
(updated 5 months ago)
- 5 months ago
(updated 5 months ago)

0.17.12 should do a better job of unit progression.

If you are playing with enemy levels 1-10, you do realize that the hp of a level 10 is ~30000. There is only so much I can do to slow this down.

I would recommend if you are going to play with all 10 levels then you use tier 10 as the power curve for the enemies leveling is much smoother.

As for the large number, my guess is that a bunch of groups spawned at once and merged into a single group.

- 5 months ago

I'm curious does the unit progression work on a linear scale? As in 50% Evo equals the middle of the pack?

I wonder if it would 'feel' better if it were logarithmic instead? eg level 10 at 100, 9 at 95, 8 at 90 and level 2 at 30 or so evo. (more accurate than my terrible napkin calcs obviously)

Either way the problem is that at 10%evo we are getting level 5 biters when variation is greater than 1

- 5 months ago

Agreed with Pawz here. A mathematical progression would be far better.

For example:
If you take level 10 at 30,000hp you can make the previous level 0.45x that amount.
So the table would be as follows:

10 - 30,000
9 - 13,500
8 - 6075
7 - 2734
6 - 1230
5 - 554
4 - 249
3 - 112
2 - 50
1 - 23

But yes, this is a separate issue from what we had where variation of 4 gave us Soldiers at 10% evo.

- 5 months ago
- 5 months ago

the health progression is already as follows:
{
type = "attribute",
name = "health",
[1] = 15,
[2] = 75,
[3] = 150,
[4] = 250,
[5] = 1000,
[6] = 2000,
[7] = 3500,
[8] = 7500,
[9] = 15000,
[10] = 30000
}

- 5 months ago
(updated 5 months ago)

I'll check with your latest version. It was spawning the [5] guys at 10% evo.
OK, so a little testing, looks like you've fixed it I think:

This first one is 10% evo, with 4 variations and levels from 1-4 (default)
https://cdn.discordapp.com/attachments/215347798533472256/560975206303137793/unknown.png

This second one is 18% evo, with 4 variations and levels from 1-10.
https://cdn.discordapp.com/attachments/215347798533472256/560977293833666591/unknown.png

Good enough to work with, although I couldn't find any Larva class spawners in the 2nd attempt that spawned workers. I had to kill a bunch before the 'worker' class spawner showed up and i could screenshot that.

- 5 months ago
(updated 5 months ago)

I do agree with Recon777, that progression was (or still is) not smooth enough as Factorio developers made gameplay to differ too much after some milestones (switching to nuclear power, crafting ArmourMK2 with fusion reactor, etc).

In my games at tier 5 (or even earlier - at evolution 41% for example) some biters had over 3000 health ('soldiers', '*lords') depending on biters faction, making game impossible in single player without tricks or weapon mods. But that was before 0.17.12 mod update.

After Factorio 0.17 release (they made coal to pollute almost three times stronger than solid fuel) I was forced to reduce pollution factor in EVO progression to survive, to make my research goes on a par with biters'.

- 5 months ago

Y'know, limiting the higher levels based on the weapon damage available would be one way to help smooth the balance. We were overrun originally not just because of a biter with 2,000 hp, but also resistances that were so high that our guns with only 1 damage upgrade weren't doing anything at all.

Something to think about :)

- 5 months ago

I had made the higher level enemies with weapon mods in mind.

I'm sure unit progression could be improved.

Comparing damage output with some combo of HP and resistance sounds reasonable.

I don't know when I will get to doing any of this.

I have been taking time from other projects for this mod and at this time want to move my time back to other projects.

- 5 months ago
(updated 5 months ago)

the health progression is already as follows:
{
type = "attribute",
name = "health",
[1] = 15,
[2] = 75,
[3] = 150,
[4] = 250,
[5] = 1000,
[6] = 2000,
[7] = 3500,
[8] = 7500,
[9] = 15000,
[10] = 30000
}

I have cleaned some spawners increasing evolution from 58% to 72%. Unit tiers and unit variations set as 10, ending enemy lvl = 10.
At 58% I met Titan biters with 9-10k health.
At 72% I see Juggernauts with 32k health - https://imgur.com/a/3HElub9
What will I meet after evolution exceeds 90% ?

- 5 months ago

Unfortunately, we've had to stop using Rampant in our current playthrough because we completely underestimated the forces we'd be up against. We were getting absolutely smashed, from all angles, by hordes far more advanced than anything we had technology to handle.

This is, sadly, a consequence of the game in that when you originally decide on your enemy settings, they are relatively meaningless numbers that you cannot really predict what they will produce as you play.

Overall, our purpose of using Rampant was because we wanted a challenge in the LATE game. But we found ourselves quickly overrun around the oil stage.

- 5 months ago
(updated 5 months ago)

My advice if you don't mind (I had to do it to survive till yellow science, because most powerful setting can't be changed till new map replay):
1. Disable RaigeAI, SiegeAI and SlaughterAI (the last option is absolutely crazy: nests produce biters so fast when under player's attack that one needs to be much more technologically advanced or know some special hints to get through defenders and destroy the nest - may be it can be easier with dynamit-based weapons, but with this option "on" I couldn't survive so far)
2. Factorio 0.17 increased pollution production -> faster evolution. Especially if one doesn't progress to more eco friendly smelters (change burners to electric drills faster, then stop burning coal, but use liquefaction). I was forced to reduce pollution evo effect considerablly in map settings to have time for tech progress.

" Overall, our purpose of using Rampant was because we wanted a challenge in the LATE game. "
This is what I looked for when installed this mod. And it really can be set, but requires some understanding of all mod options.
Anyway I find the mod very good for not only adding thickness to biters, but also make them behave really smarter.

- 5 months ago

I do like the smarter behavior. Liked that in .16 as well as we used Rampant then but didn't get overrun like is happening now.

Will probably see if we can find some settings to switch off certain AI features, as you said. Thanks for the tips.

- 4 months ago

After all I came to conclusion that enemies with last three levels made me to play cheat strategy of Bob's mods (setting up tanks/wagons with plasma cannons to exterminate any biters instead of real defence turrets - almost all turrets become crap after Evo exceeds 50%, all those Rampant Arsenal bullets, rockets look unuseful. The way of cheat only works). Thus I want to try playing with only first 6 levels.
I wonder, why I got final evolution biters at 72% (https://imgur.com/a/3HElub9) with setting 10/10/1..10 - unit tiers, variations, start..end level. Shouldn't they appear after evo 90%? Is it caused by unit variations per tier = 10?

If I set min..max enemy level 1..6, variations = 3, tiers =5, will I get enemies of level 6 somewhere around Evo 90% or I'll get them already at evolution 60%?

- 4 months ago
(updated 4 months ago)

Have you tried the Rampant Arsenal bullets and rockets or skipped them because there damage numbers weren't high enough?

Without a save to look at what you are experiencing it is hard for me to say why. Higher level nests spawn higher level biters.

- 4 months ago

Pawz you had mentioned something about damage output and resistances, care to elaborate more on how that would work for the different tech levels vs biter evolution.

Are you expecting that the highest tier is going to be some % under the max damage output and each lower level tier being some smaller % of damage output?

What about resistances vs weaknesses on the biters, any thoughts to how those skew the numbers?

- 4 months ago

Have you tried the Rampant Arsenal bullets and rockets or skipped them because there damage numbers weren't high enough?

Yes, at first weapons were very efficient, but after evolution exceeded 70% and leviathans/juggernauts replaced everything else the lightning and advanced flamethrower + advanced laser became the only easily controlled protection turrets. 25 magazines and 10 seconds to kill just one biter looks very inefficient when such 30k biters come up in masses. I don't say that Rampant Arsenal weapons are bad! I say, that a lot of juggernaut biters spoiled a game for me, so I decided, that it's better to stop on overlord biters and enjoy how your mod gave biters a chance to break through.

- 4 months ago

I didn't think you were saying anything was bad, I don't have time to test everything myself and getting feedback is something that I don't get much of, I mostly get bug reports.

I appreciate you taking the time to give feedback at all.

Gun turrets may need a balance pass in relation to the biters or it could be the new enemies need the balance pass more than the weapons.

- 4 months ago

One thing we noticed in our game was that aggravating a nest caused our entire base to be attacked from all angles simultaneously. It's like they were saving up biters to throw at us upon a certain trigger.

What we're hoping for is a more steady pressure rather than getting hit with literally thousands of large biters all at once.

Currently, we've got Rampant removed, and there have been NO attacks or expansion for a long, long time. So we've taken the opportunity to expand and tech up ourselves. Soon, when we're finally ready to start building a proper large scale operation, the plan is to put Rampant back and see if we can successfully defend ourselves and push against them while working toward a megabase.

- 4 months ago

Pawz you had mentioned something about damage output and resistances, care to elaborate more on how that would work for the different tech levels vs biter evolution.

Are you expecting that the highest tier is going to be some % under the max damage output and each lower level tier being some smaller % of damage output?

What about resistances vs weaknesses on the biters, any thoughts to how those skew the numbers?

The danger with resistances is if you happen to fall behind the evolution level in terms of your damage, you have zero options to defend. I personally would do resistances to special damage types (fire, poison, explosion) but not physical, so that your bullets will always do some damage. So some biters can shrug off your fire turrets and get through, that sort of thing.

As for basing it on unlocked technology, that would be a bit of a different topic, but yeah it'd be cool if you could only spawn biters with higher resistance based on what's available.

Like -
T1 = regular bullets do full damage
T2 = Piercing bullets do full damage, regular do 75%
T3 = Next level (? depending on if you're using Arsenal / Bob's warfare ) , Piercing does 75%, Regular does 25%

.. And so on.

- 4 months ago

I see the mod additional difficulty comes from 3 things:
1. smart AI: walls traps and corridors don't work anymore (excellent!), merging attack swarms, more complex attack paths (may be looks easier after player gets AOE weapons with 40+ range with other mods - not sure).
2. evolution. Real pain so far. I see some disbalance here when setting 10/10/10, and I asked in this thread if lowering variations can help to slow it down (because Factorio Vanilla does really lack 30k health monsters on 95..99% evo for those players who invest in evolution after its progression slows down at 85..90%).
I hope setting 5/3/1..7 will help - checking it now...
3. Crazy AI options (may be a little AI cheating, but without it game ending in Factorio is very-very boring and disappointing for militaristic players). These options can be turned off/on any time - nice!

- 4 months ago
(updated 4 months ago)

The problem is one can't fix incorrect settings after evo reaches some point and monster level outperform player's research and automation progress. May be some table like NE mod owner made could help here.

- 4 months ago

I truly wish the game had a better way of spawning enemies that used pollution as a resource.

Like every spawner absorbs pollution, and then can produce biters based on what they have stored. The 'spawn wave after wave endlessly because the base is being attacked' functionality is really broken.
But then, combat in general needs an overhaul. :D

- 4 months ago

No argument here.

Is the spawn wave after wave something in relation to Rampant or just the fact the spawner endlessly spew biters?

Is the new tiering working for you?

- 4 months ago

Spawn waves = default factorio behaviour. A bit crazy when the waves are full of insane guys.

Haven't really had a chance to test out the new tiering.

- 4 months ago
(updated 4 months ago)

Soon. We'll be setting up our defenses pretty soon and then switch Rampant back on to see how it holds up.

Since disabling it, the enemies have done literally nothing. I assume having Rampant enabled for a while and then disabled somehow left the default behavior switched off?

- 4 months ago

When you disable rampant you want to re-enable the vanilla AI before you remove or disable Rampant.

- 4 months ago

I played with 6 biters levels, 5 tiers, 3 variations for some time - till blue science so far and with last update levelling of biters slowed down very much - goes strictly according to changelog note. Unfortunately (or maybe it's luck) I had to clean up a lot of nests from very beginning and so many nests in every cluster (about 5 nests average in the nearest to starting point; may be it's Bob's enemies mod new feature) and got over 40% evo fast enough. Nests and worms rise in levels faster than in note, but nests produce biters according to note (2nd level only after 40.0% was exceeded).
Also turned on MigrationAI option gives a serious effect - many big new clusters, even with new enemies in early game.
I feel a good challenge with Rampant mod - attacking worms or nests attracts 50-100 biters from other nests clusters wave after wave till attacked nests/worms cluster is completely destroyed. Thus despite my considerable technical advantage I have to fight a lot.

- 4 months ago

Today, Pawz and I have been discussing pollution and its effects on spawning quite a bit. One thought I had during the discussion was that it almost seems like evolution factor is actually an entirely unnecessary thing.

The idea here was that spawners will generate an enemy after time intervals IF they have enough pollution stored up to do it. The minimum amount would be whatever it takes to make a small enemy. However, if it has stored enough pollution to make a bigger enemy when it is time to make one, then it does so. What this does is it puts the SIZE of enemies in the hands of your pollution output, and thus, your advancement. Naturally, it'd have to be balanced and the player given a lot of settings to tweak in case it ends up being too easy or too hard. But rather than having evolution control enemy size, pollution could do it. And if there's just too much pollution which would result in a crazy number of small enemies, the spawners might "upgrade" themselves and get tougher as well as start spawning bigger enemies with all that pollution it is collecting.

- 4 months ago

I don't quite understand what you mean by not necessary Evo factor. Under attack nest produce strongest possible biters from time to time without pollution absorbed at all.
It is very weird for player to keep a nest in polluted area - it is very expensive (unless endgame with redundant resources) and dangerous even in Vanilla.

I have just wasted 2000 bullets with RampantArsenal turrets mk2 to clean one base with over 15 nests. Biters kept coming wave after wave, produced every 1-2 seconds (and this is with turned off Onslaught AI). I'll take a break :)

- 4 months ago

I suppose this is exactly what needs to be discussed. How much should a nest be able to produce defense-only biters without spending pollution? And how is this balanced with the fact that you can go far outside your pollution cloud to clear land?

So perhaps a refined statement would be that evolution factor is unnecessary when it comes to producing raid-capable biters which do not stick around the nest in its defense. But EVO which is caused solely by your total generated pollution over time could be the determining factor for defense enemies.

Really, I'm less concerned about defense biters because once you've got a proper power suit filled with goodies (especially in bob's) you can just walk straight into any nest and obliterate them. The challenge becomes the threat to your whole base, rather than you personally. You can only be in one spot at a time.

- 4 months ago

What is the problem you are trying to solve by changing the biter spawner mechanic?

- 4 months ago

Vanilla nests also produce defender biters endlessly without pollution, but a little slower and other nests clusters do not produce and send help - may be if mod would have an option for neighbours to send help only once and only part of their own defence without new waves like in classic series (https://www.youtube.com/watch?v=srzvG7enSd0)...

- 4 months ago

Veden - problem? not so much a problem as a topic worth experimentation.

I find Evolution factor to be a hidden magic number that isn't very clear to the player, plus guessing at evolution numbers at the start really is impossible. If spawning truly was centered around pollution alone, the player would have a much better idea of why attacks happen / where they would be coming from, and how powerful they would be, based on their pollution map.

Right now the pollution map is only a 'this may trigger something soon' indicator, and Rampant underscores that by triggering attacks from all over, even from nests not in pollution areas.

It's not something you need to change for Rampant, but I'm at the very least hoping to make something to experiment with that plays nicely with Rampant.

- 4 months ago
(updated 4 months ago)

Yep, this.

And I think the sentiment behind this is to solve the problem of initial game settings being far too arbitrary and not a good predictor of your difficulty progression. The game has a wildly varying pace, sometimes stalling entirely while you work out what to do with your fading resources and how to get the next level of technology and weapons.

Because of this, it would be preferred if the enemies scaled more naturally with the player's game pace. And from what I can tell, the best indicator of player progression is the amount of pollution they are generating. Then, evolution factor doesn't have to be this thing you are always racing against. Because if you get behind the Evo curve, you're screwed. The enemies are too difficult for your current tech suite of weapons to handle, and there's not a damn thing you can do about it.

The goal, then, would be to make it so that the enemies provided a consistent level of pressure on the player, scaled by whatever startup setting indicates difficulty level.

- 4 months ago

What I meant was what game mechanic are you trying to improve upon.

It sounds like, you are attempting to improve the responsiveness of the enemy strength to the player actions.

Other attempts I've seen are using negative evolution and limiting based on player tech.

You could also do a limitation on player buildings.

I'm interested in seeing your approach as it will have a localized effect.

- 4 months ago

I want to vastly strengthen the interaction between player actions and enemy response. Pollution is a very visible, easily understood concept for players, I'm reworking biter spawning so it reacts to pollution only.

Currently putting together a mod where spawners directly eat pollution to produce biters, and killing enemy base units creates pollution.

Wouldn't mind some tips if you have any on how to create groups of units to do the different things in your mod, plus defaults like go create a new colony. I've managed to make groups of units and called your interop registerUnitGroup, but I'm not sure if I will need to do more.

- 4 months ago

in the registerUnitGroup if you pass a true in the registerUnitGroup as the second parameter it will make a squad that will be settlers.

If you want me to expose other functionality to you, please let me know.