• 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.

Sheien

Second Lieutenant
49 Badges
Jun 24, 2013
123
213
  • Darkest Hour
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Age of Wonders II
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Mare Nostrum
  • Hearts of Iron IV: Cadet
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Together for Victory
  • Europa Universalis IV: Mandate of Heaven
  • Surviving Mars
  • Hearts of Iron IV: Death or Dishonor
  • Age of Wonders III
  • Age of Wonders
  • Magicka 2
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: Expansion Pass
  • Europa Universalis IV: Rule Britannia
  • Surviving Mars: Digital Deluxe Edition
  • Surviving Mars: First Colony Edition
  • Europa Universalis IV: Golden Century
  • Hearts of Iron IV: Expansion Pass
  • Surviving Mars: First Colony Edition
  • Hearts of Iron IV: La Resistance
  • Europa Universalis 4: Emperor
  • Hearts of Iron III Collection
  • Crusader Kings II
  • Europa Universalis IV
  • For the Motherland
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
  • Europa Universalis IV: Common Sense
  • Semper Fi
  • Victoria 2
  • Europa Universalis IV: El Dorado
  • Magicka: Wizard Wars Founder Wizard
  • Magicka 2 - Signup Campaign
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Res Publica
  • March of the Eagles
  • Magicka
  • Europa Universalis IV: Pre-order
  • Gettysburg
  • Europa Universalis IV: Dharma
  • For The Glory
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
  • Arsenal of Democracy
Hi,

I'm a dude who likes to mod AIs in various games. I really enjoyed playing Darkest Hour, but it didn't take very long to notice that it's not really a gameplay-focused game, which felt pretty weird. The AI is literally incapable of winning against the Player without events spawning hundreds of divisions - and even then, in some cases it's still too bad (ie Germany will almost never invade Britain successfully, much less the US), or the division spawning completely destroys the game's performance.

So I decided to take my favourite mod - Edge of Darkness, huge props to their team - https://forum.paradoxplaza.com/forum/threads/edge-of-darkness-new-version.701724/ - which itself is based, I think, on WiF and some other stuff - and make an actually decent AI for that. I have worked on this for a relatively long time, so I think the EoD dependency might not be the newest possible version (and I'm to lazy to update it), and I ended up also changing balance for various stuff, as well as adding events and AI switch sequences that I though would make the game feel more alive - for example, the UK can randomly decide do to Operation Catherine, invade Denmark and attempt to perform a massive invasion to the Baltic. Is that a good idea? No, it's terrible, and won't work most of the time - but it's added variety, and hopefully with all possible variations, it helps create unique games and experiences that are actually supported by the AI.

Does the AI still cheat with divisions? Kinda, I added some events to help AI train transports and get militia if it's getting invaded unexpectedly early - mainly to keep Germany from getting overrun if it gets a sudden second or third front before 42. I have also left most of EOD "difficulty selection" events intact, though I've removed the division spam from them and just left other bonuses intact - which the AI can actually use now, so the div spam should not be needed. The AI is also capable of using most decisions that were disabled for seemingly no reason, especially the ones that help Germany progress into the lategame - for instance, Germany will integrate Baku to amass oil before striking the US.

Download:
If you have any feedback or want to poke me about anything related to the mod, you can reach me on my Discord channel - https://discord.gg/jcKe3KYjRb
It's mainly StarCraft-related, but I'll talk about Darkest Hour anytime. On Discord and anywhere else (except on this forum), I go by "Nekron".
You can download the mod here - https://mega.nz/folder/ww5RQZ7T#8NbpTZMoGLsGretX1gJmnQ
(last updated: 2023.07.20)

There is also a repo set up for the project on GitHub - https://github.com/BoneHorror/EODAIP

How to play:
Just unpack the folder in Mods, select the mod in Darkest Hour launcher.

Difficulty settings:
Instead of Easy > Hard, difficulty settings in EODAIP go between "Very Strong Axis" through "Balanced" to "Very Strong Allies". Player modifiers are not affected by those, outside of the faction they could be in. Neutral countries receive minor compensation changes and resource maluses on Very Strong Allies (to make resources scarce for the Axis and Japan)


If you encounter a crash - that's probably just Darkest Hour. It randomly crashes sometimes, and can crash mid-save which makes the save broken - you need to go back to OldAutosave in that case. But I've went through all EOD and my errors and warnings (there is a lot of them) and there should be none left on the mod-end of things. I've also removed unused or broken dependencies from the cold war tech, stuff like tech components that just were not used in any techs etc.

The campaign is balanced in a way where almost everyone can win - rarely, the Axis breaks through the Soviets and resist Allies long enough to get Bitter Peace. Then, it can assault the isles, and attempt an US invasion. In very rare cases, the Axis can overrun the British early, but that will prompt the US to join the war sooner. The Allies can try to invade Balkans to create another front early on into the war. There are lots of options and permutations, and I'm always interested in creating more of them as I get new ideas over time :)

Some screenshots:

eodaip_dday_3.png
eodaip_norway_2.png

eodaip_kaukasus-pocket.png
 
Last edited:
  • 20Like
  • 4Love
Reactions:
Could this ai be used for other mods, for example if i want to use it for grand campaign to enjoy the longer timeline of that mod? How hard would it be to make it usable for other mods? (I have no clue about ai modding so far)
 
If you hook up switches with AI events I think you can probably use almost everything in other mods - as long as you use the standard 1.5 DH provinces (because AI switches can target specific province IDs with priority, naval actions etc) and the balance seems alright. Some AI stuff might also depend on AI multipliers applied with misc.txt - this section in particular sometimes is setup in a way that prevents AI from building anything in some mods (the paste below is from EODAIP)

ai = {
# Overproduce of supplies when below desired supplies level (percentage of needed supplies)
0.2
# Multiplier on overproduce supplies when at war
1.5
# Do not produce supplies when current supply stockpile is greater then THIS * max supply production (all IC to supplies). This overrides all other settings.
7.0 #10000
# Max. serial line depth for production of Garrison and Militia units. Valid values: 1 - 99
10 #1
# Min. total IC threshold required to enable serial production of naval and air units.
50 #40
# Do not start producing any new units when currently available MP is less then THIS * MP required for reinforcements of existing units and the country is at war. Using 0.0 effectively disables this parameter
1.8 #0.0
# Do not start producing any new units when less then THIS MP is available in the pool
35.0 #5.0
# Do not start producing any new units when more then THIS percentage of the total IC is needed to supply existing units (0.0 to 1.0; 1.0 = 100%, disabled). Enabling this will encourage AI to build more IC when this ratio is exceeded.
0.35 #1.0
# Military Strength to Total IC ratio during Peacetime for AI countries (do not build new units if above this ratio). Use -1.0 to disable this.
1.0 #-1.0
# Military Strength to Total IC ratio during Wartime for AI countries (do not build new units if above this ratio). Use -1.0 to disable this.
4.6 #-1.0
# Military Strength to Total IC ratio for AI major countries (multiplied on the other).
2.7 #1.0
 
  • 1Like
Reactions:
I have observed this mod with hands-off Cuba, the invasion AI seems very aggressivity.
Good work.
 
  • 1Like
Reactions:
How Do I Install This? Do I Just Copy it over to the EOD folder? or do I make a separate file in the mods folder.
Separate mod, this changes more stuff than EOD does on it's own and there'd be conflicts in csv and events

On an unrelated note, if anyone plays this and notices something that seems wrong I would be really grateful for feedback - it's hard to catch everything on my own, and I admit that I have trouble fixing some parts of how divisions function in particular. I tried adding L.Arm 4 and it (mostly) works, but L.Arm 3 doesn't get upgraded up even though it's obsolete... I guess it might have something to do with how L.Arm normally can be upgraded into Mot/Mech divisions, but I have no idea if there's a softcode for this somewhere lol

Speaking of stuff that was wrong, just uploaded a small patch (same link) that fixed Soviets docking navy in Vladivostok while at war with GER, and removed leftover saves/screenshots that I forgot to delete. I actually hoped to not update it as quickly after just showing it off, but well.. I was hoping that SOV would at least try to be competent with their navy, and that would've shattered my hopes completely if left unfixed :(

I have observed this mod with hands-off Cuba, the invasion AI seems very aggressivity.
Good work.
Sometimes I wonder if it's aggressive to a fault! If I ever end up having the bandwidth to rebalance pacific war AIs, it would probably be good to try and make invasion AI less suicidal when the enemy has a large navy.
 
  • 3Like
Reactions:
Great work of improving the ai. What are the recommanded difficult setting? I want try very hard and agressive ai on normal.
Oh, I should've probably specified in the main post -- I'll edit it in - very easy -> very hard goes from very easy for Axis/very hard for Allies to very hard for Axis/very easy for Allies. I recommend normal unless it seems too easy for whatver you're playing.

Aggressive should probably stay at 1 above normal, but it does not change much in most Darkest Hour-based mods, because 99% of war declarations are made via events, and the war parameter for AIs is set to 0.
 
  • 2Like
Reactions:
The last time I added anything from EOD was when Italian and AOI ministers were updated which completely destroyed the portrait data. I think that was back in 2019, which would make it based on EoD 2.3.
 
You weren't kidding when you said AI focused, having edited the vast majority of AI files, sparing not even the likes of Honduras. There has also been changes to tech teams of some countries, tech itself, and many units stats have been edited.* Hundreds of files, so first of all thank you for the hard work. :]

I have been looking over some of the changed files, and although I don't understand why upgrading units have had its cost lowered to 0.4 from 0.8, or why strat bombing has been nerfed (it was already weak and one could argue that air warfare as a whole is a waste of resources and can be ignored unless naval bombing or nukes are involved)
I like several of the changes to the misc and I will not look into the AI or event files right now, instead starting a brand new Germany campaign.
I'll report back my impressions after I have tried it :]
 
  • 2Like
Reactions:
Do you mind if I use your ai files in my own rework of EoD? I am trying to make a MP friendly mod with certain rebalancing for a DH MP server. If you want, I can also send an invite here.
 
You weren't kidding when you said AI focused, having edited the vast majority of AI files, sparing not even the likes of Honduras. There has also been changes to tech teams of some countries, tech itself, and many units stats have been edited.* Hundreds of files, so first of all thank you for the hard work. :]

I have been looking over some of the changed files, and although I don't understand why upgrading units have had its cost lowered to 0.4 from 0.8, or why strat bombing has been nerfed (it was already weak and one could argue that air warfare as a whole is a waste of resources and can be ignored unless naval bombing or nukes are involved)
I like several of the changes to the misc and I will not look into the AI or event files right now, instead starting a brand new Germany campaign.
I'll report back my impressions after I have tried it :]
Most of my rationale behind why something was changed is typically that it worked really really bad in some areas of the game. Upgrades could go up to like 600 ic required for GER or SOV by 1943 at one point, and I felt that that's (while arguably realistic!) pretty bad - it made some research almost irrelevant in the most "lively" part of the game, and diminished how important the various nation-specific tech events from EoD/WiF are. And since I don't particularly focus on how super historical/realistic something is (I saw some mods that already do this fairly well), I just opted for the gameplay-friendly solution of reducing upg cost, and letting the AI actually upgrade its units before the game ends.

Strat bombing and air params overall have been changed because 1. I reduced the stacking penalty to make AI planes less awful (AI doesn't know how to unstack sometimes), 2. I removed most AI nation-specific air mission softcoded maluses (GER AI would at times only deal 1% damage with their planes, which felt really silly) and 3. I made the max air stack size 8 instead of 4; this and some lighter escort fighter range changes hopefully makes air relatively attractive.

If that seems wrong however, I might have actually misunderstood something - I feel like some stuff is really hard to figure out, and even though the DH forums are massive there are still misc properties that almost noone asked about - and this applies even moreso to AI stuff :) I would be really grateful for calling me out on any changes that seem nonsensical.

Do you mind if I use your ai files in my own rework of EoD? I am trying to make a MP friendly mod with certain rebalancing for a DH MP server. If you want, I can also send an invite here.
I don't mind, though I might not be able to help much with the implementation :p Would be really interested in the mod though, especially if you have any idea how to fix common desync stuff.
 
  • 1
Reactions:
1938. Germany.
The major impressions so far are 3-fold
1. I can not get the same amount of resources as before. I must stop expanding my industrial base sooner than in EoD.
2. Poland has agreed to become my ally. Not through the event or anything they just accepted an alliance.
3. Japan has chosen "take their coast" as the option for first peace deal and China has accepted. As far as I am aware neither of those are possible in EoD.

I hadn't realized that un-railroading the historical events were a part of AI changes, but I am enjoying it so far.

I also noticed that Franco would ally me during the civil war but deemed it too gamey, just like I will not milcontrol allies or convert units. (at 0.4 upgrade cost)

As for what the future holds for Germany I shall keep her prepared for any possible scenario, and react accordingly. I have guaranteed the independence of every European nation bordering the USSR.

Considering what happened in China, I am definitively going to be prepared for war before I do anything munich agreement related.
 

Attachments

  • firstpeace.jpg
    firstpeace.jpg
    164,5 KB · Views: 0
  • polishally.jpg
    polishally.jpg
    301 KB · Views: 0
  • 3Like
Reactions:
Poland and Spain sound like an oopsie on my part. An alliance with Poland should be something you can primarily get via the GER-POL relation decision/event chain, I've probably messed up neutrality on them some time ago and didn't notice it since :S But well, that's why it's good to get some actual players lol

Japan can indeed try to take the weaker peace deals in the first peace proposal, and they have some chance of succeeding (though it's not too great)

The history is railroaded insofar that 1. Japan will always attack China (or in the future potentially SOV in accordance with the northern strike event chain) and 2. Germany always needs to start the war (or alternatively it will just be attacked by the Soviets at some point). I don't think Hearts of Iron works well as a game if those two things don't happen, or at least not with even more AI and event support - there's a communist GER event in EoD in theory, but almost none of the historical events check if it was picked, so...

Edit: Also, one question - wouldn't the lack of oil dissuade you from upgrading Inf to other divisions, or am I severely underestimating how good Mot/Mec without oil would be?
 
  • 2Like
Reactions:
Most of my rationale behind why something was changed is typically that it worked really really bad in some areas of the game. Upgrades could go up to like 600 ic required for GER or SOV by 1943 at one point, and I felt that that's (while arguably realistic!) pretty bad - it made some research almost irrelevant in the most "lively" part of the game, and diminished how important the various nation-specific tech events from EoD/WiF are. And since I don't particularly focus on how super historical/realistic something is (I saw some mods that already do this fairly well), I just opted for the gameplay-friendly solution of reducing upg cost, and letting the AI actually upgrade its units before the game ends.

Strat bombing and air params overall have been changed because 1. I reduced the stacking penalty to make AI planes less awful (AI doesn't know how to unstack sometimes), 2. I removed most AI nation-specific air mission softcoded maluses (GER AI would at times only deal 1% damage with their planes, which felt really silly) and 3. I made the max air stack size 8 instead of 4; this and some lighter escort fighter range changes hopefully makes air relatively attractive.

If that seems wrong however, I might have actually misunderstood something - I feel like some stuff is really hard to figure out, and even though the DH forums are massive there are still misc properties that almost noone asked about - and this applies even moreso to AI stuff :) I would be really grateful for calling me out on any changes that seem nonsensical.


I don't mind, though I might not be able to help much with the implementation :p Would be really interested in the mod though, especially if you have any idea how to fix common desync stuff.
Desync in multiplayer is sadly tied to two factors that can't be combatted in their entirety: constant connection and a quality LAN software. We've been having success with Radmin VPN for LAN games and we mostly go with next to no desynchs per session provided a host with decent internet. Don't fret about the implementation, it seems to be working great so far. Am in the process of uploading the initial version, but it's very much a WIP tho. thanks :)
 
  • 1Like
Reactions: