Jump to content
Game-Labs Forum

AI Ship design needs to prioritize accuracy & stability above almost all other concerns


Recommended Posts

Right now, the AI frequently builds great-looking ships on paper that can't hit a damn thing. It's not uncommon at all for me to be attacking them with 70% or higher chance to hit in 1914 while they've got 3%... or 1%. This of course goes out the window because I'll land that first hit & then their accuracy further plummets. (also further compounded by the AI somehow still having cadet crews long into the campaign, which makes it even worse.) My ships simply don't get hit, even over the course of a long campaign. This can't do.


If I were to redesign the AI ship logic it'd go something like this:

1. Depending on year & ship class, determine the minimum viable speed & armament. Example: it is 1915 and we are building a CA. The absolute minimum speed is 25 kts & the absolute minimum armament is 8x7" guns. Another example. It is 1920 and we are building a DD. Minimum speed is 33 kts & the minimum armament is 3x4" guns & 4 torpedoes of some disposition.

2. Place superstructure, funnels, barbettes, and main guns. Move/change these components around until the ship is as well-balanced as possible.

3. Add defensive modules (anti-flood, barbette, citadel, torpedo bulges, etc) & minimum armor to resist own gunfire.

4. Add some random secondary armament. In placement, prioritize NOT obstructing main guns' fire arcs.

5. With remaining displacement (should be substantial) undergo various iterations of upping main armament (number of guns, caliber of guns, character of shells/explosives/propellent), defensive measures (armor, defensive modules), and speed/mobility (rudder, beam, draft, etc). (maybe, if you really want too, once or twice you could improve secondary armament if you've got remaining displacement).

6. After each iteration, take time to move things around until ship is well-balanced, and then:

7. For a given "this range is the range I'm probably going to fight at with guns" (determined by ship class & year, so for our 1915 CA, 4-5 km & for our 1920s DD, 2-3 km), calculate if we can penetrate max DD armor (so 3-4" of effective armor) at that range with HE & if we can penetrate some target value (again based on year & class) at that range with AP. If not, raise shell type to be more punchy.

8. Finally, calculate (rate of fire) x (accuracy at that range) x (damage of AP explosion) & see if it's better than last iteration. If not, reject it & try again.

gonna say that again

8. FINALLY, CALCULATE (RATE OF FIRE) x (ACCURACY AT THAT RANGE) x (DAMAGE OF AP EXPLOSION) & only proceed with the design modification if it's better!

...And then repeat 5-8 until you run out of displacement or time to design the ship.


Ideally, the AI would do this process on a few different hulls of the same class & then judge efficacy against cost & choose one design to build from that selection, but that might be prohibitively time-consuming... unless you multi-thread that process (one thread per hull) in which case it's an O(1) cost until you run out of cores. :)


Edited by neph
Link to comment
Share on other sites

Obviously there's a lot more involved than this & you can tell the devs have made great efforts to let there be national flavor in ship design. This is just a jumping off point, but I think it's important that style, secondary armament, everything else isn't increased at the expense of accuracy. You can have the best ship on paper but it's just a shiny expensive, possibly even well-armored target if it can't hit a dang thing.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...