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 blockable biter projectiles. Adds new Enemies which can be disabled in mod settings. Difficulty setting in mod options menu.

Content
6 months ago
0.13 - 1.1
112K
Enemies

i Some parts of AI behavior needs to rework

5 years ago

One part of AI - creating configurable attack waves is nice (when rampant says in chat about "ground shaking"), but their usual behavior is so silly and suck. I am talking about this strange moves when they "retreating" and also trying to "Probing Behavior Against Defenses". This, i think, make them even worse than vanilla AI, cause all what they do is just 1) getting near the perimeter 2) start taking damage/some minor casualties 3)and instantly retreat 4) repeat and so on untill they all die without deal any damage, they also can walk back and forth by fire puddles aswell which makes situation even worse, its horrble, they just die for nothing. Please change it.

5 years ago

What level is your evolution at?

5 years ago

All. I test it in multiplayer and my friend just tired of endless stupidity of enemies somewhere around 0.28 evolution, before this i test rampant in my single player world where i reach 0.78 - still same behavior, but i also use command
/c game.forces["enemy"].evolution_factor=X to simply set it around 0.95 +- 0.05
It seems to me, the higher your evolution, there is more chance to form attack wave (with "shaking ground" message) and i think it's just only caused by 2 other mod settings: player contribution (i used default 20 to 0), but thats all influence of evolution factor. So i guess it is "retreating" part of their behavior or "Probing Behavior Against Defenses" or both.

5 years ago

what do you recommend I do to solve the problem?

5 years ago
(updated 5 years ago)

I recommend just remove retreating part/significantly increase death thereshold(up to 90% of group members/hp). Also make "Probing Behavior Against Defenses" smarter. Because now, all they do is make sure that they get damage in a particular place, check in another(sometimes few tiles away or even in same place), get hurt again, suffer serious losses, and after losing half of the group finally decide to attack and most importantly, the place what they choose not necessarily will be the weakest point in the defense. So it seems they pretending to make smart moves, but they do not actually commit them. Let them check players defence DPS output and if DPS=>Summ of group health/X - this means all group will die in less than X seconds, so it is not worth to attack here at all. But most important part, AI must save this DPS value to prevent another tries in this area(couple chunks) until he can collect a large enough group, or just trigger "shaking ground" swarm allert and change state of all swarm members to "frenzy". I think most complecated part is calculating dps, cause there is a lot of factors, like upgrades, resistances, rear line defence what can catch attackers.

5 years ago

UPD hell no, AI can just check how quick he loses troops(group hp) regardless of players defence parameters and calculate estimated time untill defeat (losing 90% of group hp) and if this time < X sec then instant retreat and prevent taking another attempt to attack untill group hp will be doubled or even tripled. But please, don't spawn them from air, there is a plenty aliens sitting afk on their nests, let them mobilize and join attack forces (but make sure they will avoid players turrets reach)

5 years ago

This sounds good in theory.

Currently all unit groups share layers that are similar to pollution that control targeting, pathing, and group coordination. All groups use a basic hill-climbing heuristic to single step into the next chunk using the four shared layers player, base, resource, and movement.

When units die they add a negative value to the movement layer, which causes other units to move around the chunk. Information is transmitted between chunks (i.e. the values of layer per chunk) by using a gas dispensation equation.
Because the information is transmitted to the surrounding chunks around the death chunk are also avoided.

I haven't thought through how to effectively calculate DPS. The counting unit loss will work, but still needs to be implemented.

After calculating the DPS and making a unit not attack the chunk is fine, but the hill-climbing algorithm currently in use will most likely cause units to stand around waiting for reinforcements that may or may not be coming.

I'm not actively working on Rampant at this time, so I can't say when this will get implemented.

5 years ago

I found solution, first of all i change player contribution(and chunk contribution) from 20 - 0 to 0 - 0. Second I installed the mod "Swarm". At any time any vanilla biter or spitter die they will spawn two units of the same type, but 1tier lower. For example 1 behemot biter spawn 2 big biters, they will spawn 4 medium biters in total (2 each) etc.

So now after this tweaks alien forces create much more attack groups and most importantly this additional forces partially compensate for their group members loss from repeated retreats. And it seems sometimes that these reinforcements allow AI to believe that it can continue the attack and not retreating, so again it makes them more aggressive as i like to see.

btw i am not use "enable new units" option and just install another mod called "explosive biters, this mod instead of adding a lot of types of units pretending to be original and necessary, adds only those two that are really needed - suiciders who ram the walls and make holes and fire spitters whicht easily burn your active defence (and their giant analogs for super late game)

nevertheless, if you ever return to the development of this mod I hope I gave you food for thought on what could be improved in their behavior, constant retreats and probing the defense make them only weaker but not smarter

5 years ago

Ohh, i already feel the difference since last update, thanks!

New response