Playing with fewer, but statistically more powerful, armies feels much better as you dont have to spam so many.

  • We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Pancakelord

Lord of Pancakes
43 Badges
Apr 7, 2018
3.374
12.268
  • Cities: Skylines - Green Cities
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Natural Disasters
  • Hearts of Iron IV: Together for Victory
  • Stellaris: Ancient Relics
  • Cities: Skylines - Mass Transit
  • Surviving Mars
  • Hearts of Iron IV: Death or Dishonor
  • Imperator: Rome
  • Stellaris: Digital Anniversary Edition
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Cities: Skylines - Parklife
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Cities: Skylines Industries
  • Imperator: Rome Deluxe Edition
  • Cities: Skylines - After Dark
  • Stellaris: Nemesis
  • Europa Universalis IV
  • Stellaris: Necroids
  • Crusader Kings III
  • War of the Roses
  • Cities: Skylines
  • Stellaris: Federations
  • Magicka: Wizard Wars Founder Wizard
  • Cities: Skylines - Snowfall
  • Stellaris: Lithoids
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris - Path to Destruction bundle
  • Stellaris: Megacorp
  • Stellaris: Synthetic Dawn
  • Crusader Kings II
  • Stellaris
  • Cities: Skylines Deluxe Edition
  • Sword of the Stars II
  • March of the Eagles
  • Darkest Hour
So I've been testing a tiny mod that makes the below scaling changes, essentially all armies have 5-10x their vanilla stats, costs and 2x build times. This means that on average you'll only be building 1-5 armies rather than 10-50 armies for various invasions. So, less clicks. And, to me, it feels quite nice - particularly when I got hold of clone armies and no longer had to build nearly as many to get the job done.
Defense Armies (xX vanilla values)
# HP-DMG/Morale-DMG = x 15 NOTE: Organic Morale dmg auto calculated, may need to manually define if weird scaling.
# Health_pts/Morale_pts = x 10
# Other stats (collateral dmg, War Exhaustion on death) = x 3
# Build time / Build cost / Upkeep cost = N/A

Occupation Armies (xX vanilla values)
# HP-DMG/Morale-DMG = x 10 NOTE: Organic Morale dmg auto calculated, may need to manually define if weird scaling.
# Health_pts/Morale_pts = x 10
# Other stats (collateral dmg, War Exhaustion on death) = x 3
# Build time / Build cost / Upkeep cost = N/A

Assault Armies (xX vanilla values)
# HP-DMG/Morale-DMG = x 10
# Health_pts/Morale_pts = x 10
# Other stats (collateral dmg, War Exhaustion on death) = x 3
# Build time = x 2
# Build cost = x 5
# Upkeep cost ("produced" for some event armies) = x 5

Event Armies (xX vanilla values)
# HP-DMG/Morale-DMG = x 10
# Health_pts/Morale_pts = x 10
# Other stats (collateral dmg, War Exhaustion on death) = x 3
# Build time = x 2
# Build cost = x 5
# Upkeep cost ("produced" for some event armies) = x 5
Defines changes made
Code:
WAR_EXHAUSTION_ARMY_KILLED_MULT = 1.25 #0.25 # Multiplier of war exhaustion gained from land battles (armies)

Still need to play to late game to see what late-wars are like, and how the AI handles it, as there are a few ways it tries to control its num armies, but not click-spamming 100 times feels a lot nicer already.

1616869210806.png
1616868628333.png
1616868710704.png
1616868674052.png


Define changes to make next
Code:
ARMY_MILITARY_POWER_SCALE = 0.25 #### CHANGE TO 0.025 TO KEEP VANILLA(ISH) ARMY FP VALUES.
ARMY_MILITARY_POWER_EXPONENT = 0.65 # math: power = ( ( effective_health * damage_per_day ) ^ exponent ) * scale

It's worth noting an interesting side-effect of increasing army HP/DMG across the board, based upon the below defines (unchanged) my armies (above pics) after a single battle against a handful of enemy armies are "experienced". Army %modifiers also have a larger impact as they work off a larger mathematical base now.
ARMY_EXP_GAIN_DAMAGE_DEALT = 2.0 # Gained each time army deals damage
ARMY_EXP_GAIN_DAMAGE_TAKEN = 1.0 # Gained each time army takes damage
ARMY_EXP_EXPERIENCED = 100 # Amount of exp to reach experienced rank
ARMY_EXP_VETERAN = 1000 # Amount of exp to reach veteran rank
ARMY_EXP_ELITE = 10000 # Amount of exp to reach elite rank
It normally takes a good bit longer than that to get them ranked up (not that most people notice, or care, about army-unit ranks, tbf). Generals still rank slowly. Not sure if i should tweak these defines or leave them as is, I kind of like having faster army XP, and only using handfuls of armies in general means I might (occasionally) pay attention to such stats.
General XP could do with a buff though. Maybe Passive XP for generals set on planets ("drilling Defence armies") should be a thing - doubled rate if a military academy is present.

One other thing that might be nice for flavour is auto-spawning a rank 1 general at the start of a battle for defending worlds under attack, making this a rank 2 general if any fortresses present / if it's a stronghold world and rank 3 if a military academy is present, and then removing them again at the end of the battle.

Also trying to see if I can cut off 100% of resource output, trade generated, pop upkeep, district upkeep & building upkeep from occupied worlds.
Code:
occupation = {
    pop_happiness = -0.50 #-0.10
    planet_jobs_produces_mult = -1.0 #-0.5
    planet_jobs_upkeep_mult = -1.0 #-0.5
    planet_pops_upkeep_mult = -1.0 #-0.5
    pop_growth_speed_reduction = 0.5
    planet_immigration_pull_mult = -1.0 #-0.5
    planet_stability_add = -10 #Subtract 10 stab.
    planet_crime_mult = 0.5 #50% more crime
    planet_crime_no_happiness_mult = 0.5 #50% more crime ##"No happiness" is for Gestalts I think.
}
However altering the static modifier for occupation doesn't actually seem to do anything. May need to write up an event that adds my own "occupation" modifier - though this is more effort and is starting towards adding occupation levels, like using decisions to control how brutal/cooperative your occupied armies are on a world vs the locals (and possibly adding partisans/resistance fighters on occupied worlds, maybe influenced by occupier/local ethics - could be cool with 3.0/espionage).

And thats pretty much all that you can do with modding armies right now, it seems, without getting into bigger changes like
  • moving them over to also being a ship component(destroyer only? so they have a reason to exist besides PD?), and trying to coax the AI into using them decently.
  • Giving army ships a guided weapon that fires assault pods (basically missiles) at enemy ships, triggering a "boarding" script when the ship is knocked out.
  • adding "back-line troops" (defence troops with huge damage and 0 morale that instantly "break" in invasions, but keep firing from the back line of combat - like "fortress artillery", giving defence armies an interesting twist without straight-buffing them).
  • Adding extra, situational general traits or army modifiers - [planet-type: continental/gaia etc OR "Urban world"/"Industrial world"] invader/defender +damage/devastation.
  • tweaking #armies permitted per species (currently 1 army per pop, but this could be reduced, or even be based on base value + #soldier jobs rather than #pops_of_speciesX directly).
  • or weird effects like temples damaging undead armies, converting armies to fight for you mid-battle/raising them as husks, or bio-weapons (as planet modifiers or scripts) that damage all enemy armies simultaneously over time -- this would make invading a hive-world truly difficult, when the fleshy world itself fights back.
 
Last edited:
  • 9Like
  • 2
Reactions:
I've tried the ship number rebalance mod in the past and, while it didn't feel perfect, it was a similar experience. Less spamming makes individual units feel more important and unique.

I think this especially important for armies, since most of the time, the biggest interactions with armies throughout the game is queuing up a bunch of them on core planets before a war and having to wrangle them into a group.
 
  • 1Like
  • 1
Reactions:
I think this especially important for armies, since most of the time, the biggest interactions with armies throughout the game is queuing up a bunch of them on core planets before a war and having to wrangle them into a group.
Precisely what I hate about it too. Its the click-spam I loathe - I dont mind giving them orders, though I've got a few ideas about that too - like writing automation scripts that essentially put all your armies into a vassal nation, at the start of a war, that will bum-rush any worlds in systems youre occupying, handing the armies back to you (and giving them orders to fly to the nearest sector capital) at the end of the war.

I've tried the ship number rebalance mod in the past and, while it didn't feel perfect, it was a similar experience. Less spamming makes individual units feel more important and unique.
I came to the same conclusion when I tried it too. However with 3.0 I realised that its possible to impose dynamic ship caps per ship class, thanks to how numerical values can now be read, manipulated and applied as variables (in this case, levvied as a limit on the UI preventing extra ships being built - or triggering sanctions/debuffs if over a certain #battleships, for example).
That, combined with a general reduction in #ships may well lead to this feeling "good enough" for navies.
 
  • 1Like
  • 1
Reactions:
This means that on average you'll only be building 1-5 armies rather than 10-50 armies for various invasions.
I must be missing something, because I don't see how this conclusion follows from the changes you've made. You haven't changed the relative power of assault and defense armies, so why would the number of assault armies needed to defeat a given number of defense armies change?
 
I wish they would remove the army system and make it a subslot on ships so you are always carrying around some troops. It just doesn't feel engaging to build out armies, and I think it would make the AI better at conquest.
 
I’ve always been tempted to try and add new unit types to ground combat. Stuff like infiltrator units which deal damage against units which are in reserve or assassin units which increase General fatality rates.

Then I look at the limited scope to do anything with an army entry and move on.
 
  • 1
Reactions:
I must be missing something, because I don't see how this conclusion follows from the changes you've made. You haven't changed the relative power of assault and defense armies, so why would the number of assault armies needed to defeat a given number of defense armies change?
Truth be told it isnt 100% clear why to me just yet, but having played a century or so I've been using fewer armies generally and so has the AI, and its been more of a breeze to manage them, when I need to "top up" it's just a few clicks and I'm Gucci, with another 5k armies.
Whilst I'm not totally sure on what the root cause for this "better feeling" is, I've come up with a theory that boils it down to 2 main factors (with #2 being the biggest factor IMO):
  1. Maths
    • Modifier scaling +10% here, +5% there, a general perk etc, these all have 10x the relative impact - combine this with even a moderate level of a human's min-maxing of modifiers, and armies start to punch quite a bit harder, relative to vanilla, relative to their base stats.
    • In addition to the above, armies don't have a single damage value, they have a range, and that range grows wider as damage rises, leading to greater deviation in damage - combine this with how damage is non-linear for an even slightly larger (+1 army) force and you start to get a more pronounced quadratic damage increases when running at maximum combat width- theoretically at least, I'm not about to fire up excel to model this.
    • There are also some scalar damage modifiers that are applied vs attacking and defending armies based upon planet devastation, which I didnt completely look in to, so this is going to have an outsized effect too, if more or less bombing is involved.
  2. Army FP shenanigans & AI budgeting
    • So if armies cost more, and the AI is coded to target just having enough to invade a world - or just a bit more than its enemy, under vanilla values this might force it to build 2-3 extra armies to meet the 1.x:1 relative army power required to kick-start an invasion (it might decide that it needs 8 clone armies, for example)
      • now, for me to counter that I need to build 9 clone armies, at least - lets make it 12 for good measure.
    • But under modded army values, because the "fleetpower" of the armies is so large the AI says, well, shit, I only need 1 morearmy to be 1k ahead of them, lets invade! (e.g. only taking 3 armies in and not doing as a human does and piling even more spares on - so this makes the AI more "allocatively efficient" in a way, with its army creation)
      • and then for me to counter him I only need 1-2 more on top, again: 4-5 in all.
    • Increasing army costs and build times also ensures that the AI doesn't go army-nuts spamming them out, as this seems to be rolled into its budgeting.
So scaling everything up doesn't reduce or change the relative balance of the armies, it essentially reduces the ... resolution of army fleet power you are working with, when everything is 1k "blocks" of army power, 1-2 extra armies (1-2k extra FP) is all you need, that's just 1-2 clicks more, rather than the, potentially dozens more you might need to buy to get to a comfortable 10/20/30% increase over enemy Army FP.
This is why, despite mentioning making defines changes to the army calculation in my OP, I'm not going to de-scale army FP calculation anymore, as I think this has a pretty big impact on AI decisions - and in truth, unless I'm specifically trying to crack an FE world or some modded fortress world, I usually am reactionary with my army building, just seeing what the AI has and pumping out, say, 20% more FP to guarantee a win (with 20% more just being 1-2 more armies/clicks in most cases now, rather than 20+ sometimes).​

I wish they would remove the army system and make it a subslot on ships so you are always carrying around some troops. It just doesn't feel engaging to build out armies, and I think it would make the AI better at conquest.
I Agree that it could be much more convenient.
But people tend to overlook the fact that - unless this is a free slot on ships (either just Destroyers or everything corvettes to BBs, say), You will need to surrender some fighting power (a weapons slot, a shield/armor component, an AUX slot etc) - and then you'll essentially realise you're better off running 2 separate designs - one that actually fights ships, and one that just carries your troops - and then you realise your troop carrier isnt fighting anything, so you might as well just get rid of guns and armor etc.... and now we have army ships lol.

Alternatively, if every ship can carry armies without compromising fighting power, you get 2 things happen:
  1. You realise you'll be better off having a "invasion fleet" that can do invasions whilst you're busy using your main force (assuming youve not been blocked by a planet's FTL inhibitor), otherwise your fleets will be parking up every 5 mins to invade all the little rocks along the way, and leaving orbit might screw with invasions somehow. So you're still managing 2 distinct fleets in most situations (as we do now with naval fleets and army fleets)
  2. You realise there is no point in armies or ground invasions, at all, and instead they should just make taking the central starbase harder, as if all ships carry armies, and your fleet was big enough to beat their fleet, youve probably got enough armies to beat their armies, too. So this is just adding an invisible timer on to the end of taking the star system.
    • The alternative - going back to 'pre 2.0' and basically wiping out the central starbase/de-centralising and focusing more on planets isn't an option, really.
And, perhaps worst of all, it would have to be made to work reliably with the ship designer - for the AI, otherwise it'll never capture worlds at all (at least now, it can be told go build X army ships with clearly defined costs and roles) - when these are relegated to components and different sections and fleet AIs all get mixed in, I dont have much hope that it'll end well, in practice.

So yeah it would be better, for the player to use, but it probably still wouldn't be as good as everyone's hoping.

assassin units which increase General fatality rates.
I agree, there are so few hooks for ground wars stuff.
on_planet_zero_health_ground_combat = { events = {} }
on_planet_occupied = {} # A planets controller becomes a country not the same as the owner.
on_planet_conquer = {} #Fired whenever a new owner is set for a planet, and the planet was aggressively conquered
on_planet_attackers_win = {}
on_planet_attackers_lose = {}
on_planet_defenders_win = {}
on_planet_defenders_lose = {}

Though, this one could actually be done if you really want to crack your head on the problem and use a "master" war event to listen for ground battles.

Fire a one-off event on the start of a war (on_war_beginning = {})
that then fires an event which re-triggers every - say - 10 days,
it immediately aborts if it sees no occupied planets in the war-space with has_ground_combat = yes,​
if it does see one, it fires a sub-event that fires each day (or every 2 days) that runs:
trigger - does "assassin" exist (either an actual army unit, a planet modifier, or - hell - some kind of intelligence operation in 3.0)?​
No? abort.​
Yes?, roll a dice 1-20. if you roll a 20 (either like this as a 1-off, or with lower odds every 2 days till that combat ends - emulating the assassin killing them in combat)​
play that event popup​
general dies.​
damage morale of all remaining planet-side attackers (scope to the attacker country and cycle through all armies on that world from the dead general's country, applying whatever modifiers you fancy, clearing them on combat end)​
1616884564958.png
play corresponding popup for attacker nation​

This is pretty similar to how I wrote my "Crisis Purge Fasta" mod, though that one was checking for an occupied rather than in-progress-combat flag, to kill off pops for the crisis.
But yeah, it's a messy headache to do anything with armies.
 
Last edited:
This seems pretty reasonable. Kinda wish it was like this in vanilla.

When it comes to these armies you just want to have the minimum you can use to take every world. Often that can get into the hundreds. Seems fruitless for no reason and they're so cheap you're just gonna spam that button.

And combat width bottlenecks you forever after a point.