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

Zsar1

Major
52 Badges
Dec 19, 2014
659
199
  • Arsenal of Democracy
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Darkest Hour
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: Death or Dishonor
  • Age of Wonders III
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Crusader Kings II: Holy Fury
  • Battle for Bosporus
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Hearts of Iron IV: La Resistance
  • Stellaris: Federations
  • Stellaris
  • Europa Universalis IV
  • Victoria 2
  • Europa Universalis III: Collection
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Conclave
  • Crusader Kings II: Way of Life
  • Stellaris Sign-up
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Megacorp
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis III
  • Divine Wind
  • Heir to the Throne
  • Stellaris: Synthetic Dawn
  • King Arthur II
  • Stellaris - Path to Destruction bundle
The situation is as follows:

In CORE, small, very fast SAG fleets of a composition of BC+CL+DD, CA+CL+DD or CA+DD+DD when engaged by larger very slow SAG fleets ([4, 5]xBB+screens) typically start the battle at point-blank range, being instantly obliterated within the first two hours of combat.
This is undesirable.

At the second hour of combat, engagement distance increases, so the smaller fleet actively tries to disengage as it should (and as can be seen with more survivable submarine fleets).

While the unit values between CORE and vanilla do not have much in common, there is no obvious cause for this issue.

Mission type for the small fleet does not seem to play any role.
The small fleet is considerably faster in both least and average speed than the large fleet.

These are the questions:
  • How do asymmetrical naval engagements typically start in vanilla?
    • Is it here possible for a small fleet to outrun the larger one?
    Note that the notification for a naval engagement only appears after the first hour of combat.
  • Which of the ship values do truly participate in calculating the spawn distance?
    Are there known interactions between values, which could produce issues similar to the one observed?
 

Pang Bingxun

Field Marshal
2 Badges
Nov 22, 2011
5.596
185
  • Arsenal of Democracy
  • 500k Club
Doctrines, Detection, Visibility and (lowest) Speed should be relevant. It also seems reasonable that bigger fleets have some disadvantage.

In CORE, small, very fast SAG fleets of a composition of BC+CL+DD, CA+CL+DD or CA+DD+DD when engaged by larger very slow SAG fleets ([4, 5]xBB+screens) typically start the battle at point-blank range, being instantly obliterated within the first two hours of combat.
This is undesirable.

Is it? The ratio between the detection of fleet A and visibility of fleet B determines the chances that Fleet A will detect fleet B and visa vice. If both fleets seek battle (detection(A) x visibility(B))/(detection(B) x visibility(A)) = (detection(A)/visibility(A))/(detection(B)/visibility(B)) determines the chances to detect the enemy first and thus start the battle at hopefully favourable conditions.

If however only one fleet seeks battle things are a bit different. If the faster but inferior fleets detects the slower but superior fleet, than it will not engage in battle. As soon as the slower fleet however detects the inferior but faster fleet it may engage the enemy and destroy it if possible. Starting the battle at below optimal range serves this purpose because the faster fleet could else escape before being sunk.
 

Zsar1

Major
52 Badges
Dec 19, 2014
659
199
  • Arsenal of Democracy
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Darkest Hour
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: Death or Dishonor
  • Age of Wonders III
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Crusader Kings II: Holy Fury
  • Battle for Bosporus
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Hearts of Iron IV: La Resistance
  • Stellaris: Federations
  • Stellaris
  • Europa Universalis IV
  • Victoria 2
  • Europa Universalis III: Collection
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Conclave
  • Crusader Kings II: Way of Life
  • Stellaris Sign-up
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Megacorp
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis III
  • Divine Wind
  • Heir to the Throne
  • Stellaris: Synthetic Dawn
  • King Arthur II
  • Stellaris - Path to Destruction bundle
There is no such thing as "Doctrine" in terms of game mechanics (actually, "abandonable tech" fits, but is hardly relevant here) - do you mean Positioning? That you mention not and surely it has (Or has it not?) some kind of impact (as there is no other purpose to these two values).

I do find this behaviour highly undesirable, as it makes every encounter deadly. When fleets start below either side's minimal firing range, the different ranges of unit types also become obsolete.
... With a pure transport fleet on one side of the battle, combatants actually spawn far away and the armed fleet has to race towards the transports which it may catch before they retreat or not.

This deterministic behaviour: Armed inferior fleet spawns always at point-blank, transport-only inferior fleet spawns always at high distance; is thoroughly irritating.

The chance to actually engage, incidentally, seems to be fine enough. That is not an issue and should ideally be preserved as it currently is.
 
Last edited:

dec152000

Colonel
1 Badges
Feb 25, 2006
908
1
  • Arsenal of Democracy
Hi,

To me this formula seems to over value the Detection values of the large fleet. Realistically a large fleet will have many units that are "internal" to the formation and provide limited additional search capability. OTOH, the large formation required by these internal units still increases Visibility substantially. All in all this seems to favor a large fleet composition. To me there should be some sort of stacking penalty applied.

mm
 

Mr_B0narpte

Field Marshal
12 Badges
Mar 15, 2009
4.686
324
  • Arsenal of Democracy
  • Cities in Motion
  • Darkest Hour
  • For The Glory
  • Hearts of Iron III
  • Rome Gold
  • Victoria 2
  • Rome: Vae Victis
  • 500k Club
  • Pride of Nations
  • Rise of Prussia
  • Hearts of Iron IV Sign-up
There is no such thing as "Doctrine" in terms of game mechanics (actually, "abandonable tech" fits, but is hardly relevant here)
There is a naval doctrine tree, which in vanilla has 3 separate doctrine paths: Fleet-in-Being; Sealane Interdiction; and Base Strike Doctrine. I have no idea if CORE has removed/tweaked this.
 

MagooNZ

Captain
4 Badges
May 17, 2012
467
24
  • Arsenal of Democracy
  • Hearts of Iron II: Armageddon
  • 500k Club
  • Hearts of Iron IV: Cadet
While relevant to the general forum, I suggest also or alternatively raise this matter in the CORE forum.
I played a limited amount of CORE some time ago, and came to the conclusion that even small naval errors are severely punished by the CORE mod. So I concur with your experience. A major change of approach is required for the switch from vanilla AoD naval to CORE AoD naval, otherwise there will not be success in the CORE mod.
 

Dichromate

Colonel
46 Badges
Aug 13, 2009
1.143
2
  • Darkest Hour
  • Europa Universalis III Complete
  • Divine Wind
  • Arsenal of Democracy
  • Victoria: Revolutions
  • Hearts of Iron III Collection
  • Heir to the Throne
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Mandate of Heaven
  • Stellaris - Path to Destruction bundle
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Stellaris: Galaxy Edition
  • Stellaris: Federations
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Stellaris: Megacorp
  • Europa Universalis IV: Golden Century
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Victoria 2: Heart of Darkness
  • Europa Universalis IV
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Victoria 2
  • Stellaris: Galaxy Edition
  • 500k Club
  • Europa Universalis IV: El Dorado
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
While relevant to the general forum, I suggest also or alternatively raise this matter in the CORE forum.

It's been raised here by the core Dev's because it pertains to hardcoded mechanics. Obviously units are going to have different stats, doctrines will be different, etc but the way detection, visibility, speed etc all work is hardcoded.
 

Dichromate

Colonel
46 Badges
Aug 13, 2009
1.143
2
  • Darkest Hour
  • Europa Universalis III Complete
  • Divine Wind
  • Arsenal of Democracy
  • Victoria: Revolutions
  • Hearts of Iron III Collection
  • Heir to the Throne
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Mandate of Heaven
  • Stellaris - Path to Destruction bundle
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Stellaris: Galaxy Edition
  • Stellaris: Federations
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Stellaris: Megacorp
  • Europa Universalis IV: Golden Century
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Victoria 2: Heart of Darkness
  • Europa Universalis IV
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Victoria 2
  • Stellaris: Galaxy Edition
  • 500k Club
  • Europa Universalis IV: El Dorado
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
There is a naval doctrine tree, which in vanilla has 3 separate doctrine paths: Fleet-in-Being; Sealane Interdiction; and Base Strike Doctrine. I have no idea if CORE has removed/tweaked this.

The point is that all those techs do is alter variables like positioning, mission efficiency, organization, org regain, etc.

Doctrines don't in and of themselves play any part in game mechanics. There's no hardcoded effect from sealane interdiction techs.
 

Dichromate

Colonel
46 Badges
Aug 13, 2009
1.143
2
  • Darkest Hour
  • Europa Universalis III Complete
  • Divine Wind
  • Arsenal of Democracy
  • Victoria: Revolutions
  • Hearts of Iron III Collection
  • Heir to the Throne
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Mandate of Heaven
  • Stellaris - Path to Destruction bundle
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Stellaris: Galaxy Edition
  • Stellaris: Federations
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Stellaris: Megacorp
  • Europa Universalis IV: Golden Century
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Victoria 2: Heart of Darkness
  • Europa Universalis IV
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Victoria 2
  • Stellaris: Galaxy Edition
  • 500k Club
  • Europa Universalis IV: El Dorado
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
The ratio between the detection of fleet A and visibility of fleet B determines the chances that Fleet A will detect fleet B and visa vice. If both fleets seek battle (detection(A) x visibility(B))/(detection(B) x visibility(A)) = (detection(A)/visibility(A))/(detection(B)/visibility(B)) determines the chances to detect the enemy first and thus start the battle at hopefully favourable conditions.

What determines whether a fleet seeks battle?
 

Pang Bingxun

Field Marshal
2 Badges
Nov 22, 2011
5.596
185
  • Arsenal of Democracy
  • 500k Club
The point is that all those techs do is alter variables like positioning, mission efficiency, organization, org regain, etc.

With Doctrines i mainly refer to the 2 positioning values, but modifiers for night etc. are of great importance, too.

What determines whether a fleet seeks battle?

Good question. Being awfully inferior will likely prevent it. There also is the issue that subs, that could win the battle if staying undetected, will not seek battle because advantages of low visibility are not counted in. And there is the issue of forced engagement.
 

Dichromate

Colonel
46 Badges
Aug 13, 2009
1.143
2
  • Darkest Hour
  • Europa Universalis III Complete
  • Divine Wind
  • Arsenal of Democracy
  • Victoria: Revolutions
  • Hearts of Iron III Collection
  • Heir to the Throne
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Mandate of Heaven
  • Stellaris - Path to Destruction bundle
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Stellaris: Galaxy Edition
  • Stellaris: Federations
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Stellaris: Megacorp
  • Europa Universalis IV: Golden Century
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Victoria 2: Heart of Darkness
  • Europa Universalis IV
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Victoria 2
  • Stellaris: Galaxy Edition
  • 500k Club
  • Europa Universalis IV: El Dorado
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
Good question. Being awfully inferior will likely prevent it. There also is the issue that subs, that could win the battle if staying undetected, will not seek battle because advantages of low visibility are not counted in. And there is the issue of forced engagement.

Hmm, so basically it's something hardcoded and we don't exactly know how it works?

EDIT:

Guess it doesn't matter since it's clear that the small fleets are trying to flee in these instances.
 
Last edited:

Zsar1

Major
52 Badges
Dec 19, 2014
659
199
  • Arsenal of Democracy
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Darkest Hour
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: Death or Dishonor
  • Age of Wonders III
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Crusader Kings II: Holy Fury
  • Battle for Bosporus
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Hearts of Iron IV: La Resistance
  • Stellaris: Federations
  • Stellaris
  • Europa Universalis IV
  • Victoria 2
  • Europa Universalis III: Collection
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Conclave
  • Crusader Kings II: Way of Life
  • Stellaris Sign-up
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Megacorp
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis III
  • Divine Wind
  • Heir to the Throne
  • Stellaris: Synthetic Dawn
  • King Arthur II
  • Stellaris - Path to Destruction bundle
I was able to isolate two very nice naval battles, one of which shows the behaviour described, while the other one works much more desirable. Main difference is that the "good" one starts at day (at a distance of 26.6 km) while the "bad" one starts at night (and at a distance of 4.3 km).
As may be expected, in the "bad" example, the small fleet disintegrates in the first hour of daylight, whereas in the "good" example, the large slow fleet sometimes manages to close during nighttime, sometimes does not. It may still poach one or two of the smaller fleet's ships, but as well may it lose a ship itself.

"good" example
Start distance: 26.6 km (within firing range of defender's BC, out of range of all others)

Attacker ENG

Units involved:
Code:
navalunit = { 
  id = { type = 4712 id = 488091 } 
  name = "Force Y" 
  location = 2593 
  prevprov = 2302 
  home = 906 
  base = 348 
  mission = { 
    type = none 
    target = 2454 
    missionscope = 0 
    percentage = 0.0000 
    night = yes 
    day = yes 
    task = 1 
    location = 2453 
  } 
  date = { 
    year = 1939 
    month = july 
    day = 10 
    hour = 13 
  } 
  development = no 
  morale = 0.5000 
  leader = { 
    id = { type = 6 id = 1330 } 
    name = "Burrogh" 
    picture = "gfx\interface\pics\L1330.bmp" 
    category = admiral 
    rank = 2 
    rank_year = 1937 
    rank_year = 1943 
    rank_year = 1990 
    rank_year = 1990 
    max_skill = 6 
    startyear = 1937 
    endyear = 1960 
    skill = 2 
    experience = 33.5828 
    trait = superior_tactician 
    changed = yes 
  } 
  movetime = { 
    year = 1939 
    month = november 
    day = 16 
    hour = 10 
  } 
  movement = { 2428 2427 2426 2425 2420 2597 2408 2407 2405 2404 2403 2402 2471 2398 2397 2396 13 } 
  division = { 
    id = { type = 4712 id = 185284 } 
    name = "Destroyer Division 37" 
    model = 7 
    type = destroyer 
    extra1 = naval_torpedoes_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 4 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 87.1721 
    organisation = 42.8600 
    morale = 67.0000 
    experience = 0.7795 
    defaultorganisation = 51.0000 
    redep_unit_name = "" 
    supplies = 13.3000 
    oil = 11.8000 
    max_supply_stock = 13.3000 
    max_oil_stock = 11.8000 
    maxspeed = 23.0000 
    supplyconsumption = 0.3300 
    fuelconsumption = 0.8400 
    surfacedetectioncapability = 5.5000 
    airdetectioncapability = 2.0000 
    subdetectioncapability = 1.7500 
    visibility = 25.0000 
    seadefence = 7.7500 
    airdefence = 10.5000 
    seaattack = 17.7500 
    subattack = 15.5000 
    convoyattack = 4.2500 
    shorebombardment = 2.7500 
    airattack = 9.2500 
    transportcapability = 0.0000 
    range = 2125.0000 
    distance = 0.1400 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3013 } 
    name = "Destroyer Division 2" 
    model = 7 
    type = destroyer 
    extra1 = naval_torpedoes_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 4 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.9680 
    organisation = 49.9800 
    morale = 67.0000 
    experience = 0.2999 
    defaultorganisation = 51.0000 
    redep_unit_name = "" 
    supplies = 13.3000 
    oil = 11.8000 
    max_supply_stock = 13.3000 
    max_oil_stock = 11.8000 
    maxspeed = 23.0000 
    supplyconsumption = 0.3300 
    fuelconsumption = 0.8400 
    surfacedetectioncapability = 5.5000 
    airdetectioncapability = 2.0000 
    subdetectioncapability = 1.7500 
    visibility = 25.0000 
    seadefence = 7.7500 
    airdefence = 10.5000 
    seaattack = 17.7500 
    subattack = 15.5000 
    convoyattack = 4.2500 
    shorebombardment = 2.7500 
    airattack = 9.2500 
    transportcapability = 0.0000 
    range = 2125.0000 
    distance = 0.1400 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3201 } 
    name = "HMS Revenge" 
    model = 3 
    type = battleship 
    extra1 = b_u2 
    extra2 = naval_radar_l 
    extra3 = naval_sa_l 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 1 
    brigade_model2 = 3 
    brigade_model3 = 5 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.9680 
    organisation = 54.8800 
    morale = 67.0000 
    experience = 0.6998 
    defaultorganisation = 56.0000 
    brig_upgr_progress1 = 0.1819 
    redep_unit_name = "" 
    supplies = 82.9000 
    oil = 18.5000 
    max_supply_stock = 82.9000 
    max_oil_stock = 18.5000 
    maxspeed = 14.0000 
    supplyconsumption = 1.5400 
    fuelconsumption = 0.9900 
    surfacedetectioncapability = 3.0000 
    airdetectioncapability = 2.0000 
    subdetectioncapability = 0.0000 
    visibility = 25.0000 
    seadefence = 19.0000 
    airdefence = 20.7500 
    seaattack = 51.0000 
    subattack = 0.0000 
    convoyattack = 9.7500 
    shorebombardment = 11.5000 
    airattack = 11.5000 
    transportcapability = 0.0000 
    range = 2350.0000 
    distance = 0.2300 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3004 } 
    name = "HMS Royal Sovereign" 
    model = 3 
    type = battleship 
    extra1 = b_u2 
    extra2 = naval_radar_l 
    extra3 = naval_sa_l 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 2 
    brigade_model2 = 3 
    brigade_model3 = 5 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.9680 
    organisation = 57.8200 
    morale = 70.0000 
    experience = 1.6995 
    defaultorganisation = 59.0000 
    brig_upgr_progress1 = 0.1819 
    redep_unit_name = "" 
    supplies = 72.1000 
    oil = 17.6000 
    max_supply_stock = 72.1000 
    max_oil_stock = 17.6000 
    maxspeed = 14.0000 
    supplyconsumption = 1.4200 
    fuelconsumption = 0.9600 
    surfacedetectioncapability = 3.0000 
    airdetectioncapability = 2.0000 
    subdetectioncapability = 0.0000 
    visibility = 25.0000 
    seadefence = 20.0000 
    airdefence = 21.7500 
    seaattack = 51.0000 
    subattack = 0.0000 
    convoyattack = 9.7500 
    shorebombardment = 11.5000 
    airattack = 12.5000 
    transportcapability = 0.0000 
    range = 2500.0000 
    distance = 0.2300 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3069 } 
    name = "HMS Danae" 
    model = 2 
    type = light_cruiser 
    extra1 = b_u3 
    extra2 = naval_improved_hull_l 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 14 
    brigade_model2 = 4 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.9680 
    organisation = 34.3000 
    morale = 79.0000 
    experience = 1.5995 
    defaultorganisation = 35.0000 
    redep_unit_name = "" 
    supplies = 30.3000 
    oil = 5.8000 
    max_supply_stock = 30.3000 
    max_oil_stock = 5.8000 
    maxspeed = 18.0000 
    supplyconsumption = 0.4500 
    fuelconsumption = 0.3200 
    surfacedetectioncapability = 3.7500 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 0.0000 
    visibility = 12.0000 
    seadefence = 5.0000 
    airdefence = 7.7500 
    seaattack = 14.0000 
    subattack = 0.0000 
    convoyattack = 3.5000 
    shorebombardment = 2.0000 
    airattack = 5.2500 
    transportcapability = 0.0000 
    range = 2500.0000 
    distance = 0.1800 
    travelled = 0.0000 
  } 
}

navalunit = { 
  id = { type = 4712 id = 509972 } 
  name = "Force O" 
  location = 2593 
  prevprov = 2428 
  home = 13 
  base = 13 
  mission = { 
    type = asw 
    target = 2303 
    missionscope = 1 
    percentage = 0.6000 
    night = yes 
    day = yes 
    enddate = { year = 9999 month = january day = 0 hour = 0 } 
    task = 1 
    location = 2593 
  } 
  date = { 
    year = 1939 
    month = august 
    day = 27 
    hour = 13 
  } 
  development = no 
  morale = 0.5000 
  leader = { 
    id = { type = 6 id = 1402 } 
    name = "Walwyn" 
    picture = "gfx\interface\pics\L1402.bmp" 
    category = admiral 
    rank = 2 
    rank_year = 1938 
    rank_year = 1941 
    rank_year = 1990 
    rank_year = 1990 
    max_skill = 5 
    startyear = 1938 
    endyear = 1946 
    skill = 2 
    experience = 20.1848 
    changed = yes 
  } 
  division = { 
    id = { type = 12074 id = 3232 } 
    name = "Destroyer Division 30" 
    model = 5 
    type = destroyer 
    extra1 = naval_improved_hull_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 3 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.5914 
    organisation = 45.0800 
    morale = 63.0000 
    experience = 0.0000 
    defaultorganisation = 46.0000 
    brig_upgr_progress = 0.6329 
    redep_unit_name = "" 
    supplies = 9.8000 
    oil = 11.5000 
    max_supply_stock = 9.8000 
    max_oil_stock = 11.5000 
    maxspeed = 22.0000 
    supplyconsumption = 0.2800 
    fuelconsumption = 0.9700 
    surfacedetectioncapability = 5.0000 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 2.0000 
    visibility = 27.0000 
    seadefence = 6.0000 
    airdefence = 7.0000 
    seaattack = 9.7500 
    subattack = 13.0000 
    convoyattack = 2.2500 
    shorebombardment = 1.2500 
    airattack = 7.7500 
    transportcapability = 0.0000 
    range = 1675.0000 
    distance = 0.1200 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3231 } 
    name = "Destroyer Division 29" 
    model = 5 
    type = destroyer 
    extra1 = naval_improved_hull_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 3 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.5914 
    organisation = 45.0800 
    morale = 63.0000 
    experience = 0.0000 
    defaultorganisation = 46.0000 
    brig_upgr_progress = 0.6329 
    redep_unit_name = "" 
    supplies = 9.8000 
    oil = 11.5000 
    max_supply_stock = 9.8000 
    max_oil_stock = 11.5000 
    maxspeed = 22.0000 
    supplyconsumption = 0.2800 
    fuelconsumption = 0.9700 
    surfacedetectioncapability = 5.0000 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 2.0000 
    visibility = 27.0000 
    seadefence = 6.0000 
    airdefence = 7.0000 
    seaattack = 9.7500 
    subattack = 13.0000 
    convoyattack = 2.2500 
    shorebombardment = 1.2500 
    airattack = 7.7500 
    transportcapability = 0.0000 
    range = 1675.0000 
    distance = 0.1200 
    travelled = 0.0000 
  } 
}
Global modifiers:
Code:
max_positioning = { 
  battleship = 0.5400 
  light_cruiser = 0.6300 
  destroyer = 0.4600 
} 
min_positioning = { 
  battleship = 0.5600 
  light_cruiser = 0.3500 
  destroyer = 0.4400 
} 

modifiers = { 
  battleship = { 
    blizzard_attack = -80 
    snow_attack = -25 
    rain_attack = -10 
    storm_attack = -50 
    night_attack = -55 
    blizzard_defense = -80 
    snow_defense = -25 
    rain_defense = -10 
    storm_defense = -50 
    night_defense = -55 
    blizzard_move = 0 
    snow_move = 0 
    rain_move = 0 
    storm_move = 0 
    night_move = 0 
    } 
  light_cruiser = { 
    blizzard_attack = -80 
    snow_attack = -25 
    rain_attack = -10 
    storm_attack = -50 
    night_attack = -30 
    blizzard_defense = -80 
    snow_defense = -25 
    rain_defense = -10 
    storm_defense = -50 
    night_defense = -35 
    blizzard_move = 0 
    snow_move = 0 
    rain_move = 0 
    storm_move = 0 
    night_move = 0 
  } 
  destroyer = { 
    blizzard_attack = -80 
    snow_attack = -25 
    rain_attack = -10 
    storm_attack = -50 
    night_attack = -50 
    blizzard_defense = -80 
    snow_defense = -25 
    rain_defense = -10 
    storm_defense = -50 
    night_defense = -60 
    blizzard_move = 0 
    snow_move = 0 
    rain_move = 0 
    storm_move = 0 
    night_move = 0 
  } 
}

personality = { 
  minister_position = ChiefOfNavy
  modifier = { type = attack_sea_mod modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 1 division = battleship modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 1 division = battlecruiser modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 1 division = heavy_cruiser modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 0 division = battleship modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 0 division = battlecruiser modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 0 division = heavy_cruiser modifier_effect = 0.0500 }
}
Defender GER

Units involved:
Code:
navalunit = { 
  id = { type = 12027 id = 3000 } 
  name = "Kampfgruppe Gneisenau" 
  location = 2593 
  prevprov = 2428 
  home = 32 
  base = 32 
  mission = { 
    type = convoy_raiding 
    target = 2357 
    missionscope = 2 
    percentage = 0.9000 
    night = yes 
    day = yes 
    startdate = { year = 1939 month = october day = 29 hour = 18 } 
    enddate = { year = 34463 month = january day = 0 hour = 0 } 
    task = 1 
    location = 2593 
  } 
  date = { 
    year = 1936 
    month = january 
    day = 0 
    hour = 0 
  } 
  development = no 
  morale = 0.0010 
  leader = { 
    id = { type = 6 id = 845 } 
    name = "Fanger" 
    picture = "gfx\interface\pics\L845.bmp" 
    category = admiral 
    rank = 3 
    rank_year = 1930 
    rank_year = 1940 
    rank_year = 1942 
    rank_year = 1990 
    max_skill = 6 
    startyear = 1930 
    endyear = 1943 
    skill = 3 
    experience = 56.2624 
    trait = spotter 
    changed = yes 
  } 
  division = { 
    id = { type = 4712 id = 246832 } 
    name = "Stuttgart" 
    model = 6 
    type = light_cruiser 
    extra1 = b_u3 
    extra2 = naval_improved_hull_l 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 10 
    brigade_model2 = 4 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.2896 
    organisation = 33.3720 
    morale = 67.0000 
    experience = 0.0000 
    defaultorganisation = 30.0000 
    redep_unit_name = "" 
    supplies = 21.6935 
    oil = 7.8643 
    max_supply_stock = 26.4000 
    max_oil_stock = 9.9000 
    maxspeed = 21.0000 
    supplyconsumption = 0.4800 
    fuelconsumption = 0.5100 
    surfacedetectioncapability = 4.5000 
    airdetectioncapability = 2.7500 
    subdetectioncapability = 0.0000 
    visibility = 20.0000 
    seadefence = 6.0000 
    airdefence = 9.2500 
    seaattack = 15.0000 
    subattack = 0.0000 
    convoyattack = 3.7500 
    shorebombardment = 2.7500 
    airattack = 7.2500 
    transportcapability = 0.0000 
    range = 2500.0000 
    distance = 0.2400 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12027 id = 3044 } 
    name = "Gneisenau" 
    model = 6 
    type = battlecruiser 
    extra1 = b_u2 
    extra2 = naval_fire_controll_l 
    extra3 = naval_sa_l 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 10 
    brigade_model2 = 4 
    brigade_model3 = 8 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 97.8041 
    organisation = 50.0580 
    morale = 76.0000 
    experience = 9.9845 
    defaultorganisation = 45.0000 
    redep_unit_name = "" 
    supplies = 60.2324 
    oil = 21.3687 
    max_supply_stock = 73.3000 
    max_oil_stock = 26.9000 
    maxspeed = 21.0000 
    supplyconsumption = 1.5100 
    fuelconsumption = 1.3100 
    surfacedetectioncapability = 5.2500 
    airdetectioncapability = 3.2500 
    subdetectioncapability = 0.0000 
    visibility = 36.0000 
    seadefence = 19.0000 
    airdefence = 23.5000 
    seaattack = 39.2500 
    subattack = 0.0000 
    convoyattack = 11.2500 
    shorebombardment = 7.7500 
    airattack = 14.5000 
    transportcapability = 0.0000 
    range = 3500.0000 
    distance = 0.3400 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 4712 id = 530979 } 
    name = "1. Zerstörergeschwader" 
    model = 8 
    type = destroyer 
    extra1 = naval_spotter_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 4 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.3660 
    organisation = 30.0348 
    morale = 65.0000 
    experience = 0.0000 
    defaultorganisation = 27.0000 
    redep_unit_name = "" 
    supplies = 9.8607 
    oil = 8.0232 
    max_supply_stock = 12.0000 
    max_oil_stock = 10.1000 
    maxspeed = 23.0000 
    supplyconsumption = 0.3900 
    fuelconsumption = 0.7800 
    surfacedetectioncapability = 4.0000 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 4.0000 
    visibility = 30.0000 
    seadefence = 11.0000 
    airdefence = 14.2500 
    seaattack = 17.5000 
    subattack = 21.0000 
    convoyattack = 4.5000 
    shorebombardment = 3.2500 
    airattack = 12.0000 
    transportcapability = 0.0000 
    range = 2575.0000 
    distance = 0.1600 
    travelled = 0.0000 
  } 
}
Global modifiers:
Code:
max_positioning = { 
  light_cruiser = 0.4900 
  battlecruiser = 0.4900 
  destroyer = 0.4500 
} 
min_positioning = { 
  light_cruiser = 0.4000 
  battlecruiser = 0.3800 
  destroyer = 0.3700 
} 

modifiers = { 
  light_cruiser = { 
    blizzard_attack = -80 
    snow_attack = -25 
    rain_attack = -10 
    storm_attack = -50 
    night_attack = -45 
    blizzard_defense = -80 
    snow_defense = -25 
    rain_defense = -10 
    storm_defense = -50 
    night_defense = -50 
    blizzard_move = 0 
    snow_move = 0 
    rain_move = 0 
    storm_move = 0 
    night_move = 0 
  } 
  battlecruiser = { 
    blizzard_attack = -80 
    snow_attack = -25 
    rain_attack = -10 
    storm_attack = -50 
    night_attack = -45 
    blizzard_defense = -80 
    snow_defense = -25 
    rain_defense = -10 
    storm_defense = -50 
    night_defense = -50 
    blizzard_move = 0 
    snow_move = 0 
    rain_move = 0 
    storm_move = 0 
    night_move = 0 
  } 
  destroyer = { 
    blizzard_attack = -80 
    snow_attack = -25 
    rain_attack = -10 
    storm_attack = -50 
    night_attack = -45 
    blizzard_defense = -80 
    snow_defense = -25 
    rain_defense = -10 
    storm_defense = -50 
    night_defense = -50 
    blizzard_move = 0 
    snow_move = 0 
    rain_move = 0 
    storm_move = 0 
    night_move = 0 
  } 
}

personality = { 
  minister_position = ChiefOfNavy
  modifier = { type = defend_sea_mod modifier_effect = 0.0500 }
  modifier = { type = detect_fleet_mod modifier_effect = 0.2000 }
  modifier = { type = combat_mod option1 = 0 division = carrier modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 0 division = escort_carrier modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 0 division = light_cruiser modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 0 division = destroyer modifier_effect = 0.0500 }
  modifier = { type = combat_mod option1 = 1 division = naval_bomber modifier_effect = 0.0500 }
}
Possible outcomes:
  • no units lost
  • ENG CL lost
  • ENG DD lost
  • GER BC & CL lost
  • GER BC lost
  • GER CL lost
"bad" example
Start distance: 4.3 km (smallest firing distances involved are 13 km ENG and 16 km GER)

Attacker ENG

Units involved:
Code:
navalunit = { 
  id = { type = 12074 id = 3080 } 
  name = "Portsmouth Division" 
  location = 2426 
  prevprov = 2427 
  home = 348 
  base = 21 
  mission = { 
    type = none 
    target = 2405 
    missionscope = 0 
    percentage = 0.0000 
    night = yes 
    day = yes 
    task = 1 
    location = 2429 
  } 
  date = { 
    year = 1936 
    month = january 
    day = 0 
    hour = 0 
  } 
  development = no 
  morale = 0.0010 
  leader = { 
    id = { type = 6 id = 1359 } 
    name = "James" 
    picture = "gfx\interface\pics\L1359.bmp" 
    category = admiral 
    rank = 2 
    rank_year = 1930 
    rank_year = 1941 
    rank_year = 1944 
    rank_year = 1990 
    max_skill = 7 
    startyear = 1930 
    endyear = 1946 
    skill = 3 
    experience = 57.4636 
    changed = yes 
  } 
  movetime = { 
    year = 1939 
    month = november 
    day = 23 
    hour = 7 
  } 
  movement = { 2425 2420 2597 2408 2407 2405 2404 2403 2402 2471 2398 2397 2396 13 } 
  division = { 
    id = { type = 12074 id = 3081 } 
    name = "HMS Curacoa" 
    model = 2 
    type = light_cruiser 
    extra1 = b_u3 
    extra2 = naval_improved_hull_l 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 1 
    brigade_model2 = 4 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 97.8401 
    organisation = 28.7273 
    morale = 76.0000 
    experience = 0.3979 
    defaultorganisation = 33.0000 
    redep_unit_name = "" 
    supplies = 29.4000 
    oil = 6.4000 
    max_supply_stock = 29.4000 
    max_oil_stock = 6.4000 
    maxspeed = 18.0000 
    supplyconsumption = 0.4400 
    fuelconsumption = 0.3400 
    surfacedetectioncapability = 3.7500 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 0.0000 
    visibility = 12.0000 
    seadefence = 5.0000 
    airdefence = 6.7500 
    seaattack = 12.0000 
    subattack = 0.0000 
    convoyattack = 3.0000 
    shorebombardment = 2.0000 
    airattack = 4.2500 
    transportcapability = 0.0000 
    range = 2350.0000 
    distance = 0.2000 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3082 } 
    name = "Destroyer Division 31" 
    model = 5 
    type = destroyer 
    extra1 = naval_improved_hull_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 4 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.1396 
    organisation = 46.0600 
    morale = 63.0000 
    experience = 1.1927 
    defaultorganisation = 47.0000 
    redep_unit_name = "" 
    supplies = 10.9000 
    oil = 11.5000 
    max_supply_stock = 10.9000 
    max_oil_stock = 11.5000 
    maxspeed = 22.0000 
    supplyconsumption = 0.2900 
    fuelconsumption = 0.9700 
    surfacedetectioncapability = 6.0000 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 2.0000 
    visibility = 27.0000 
    seadefence = 6.0000 
    airdefence = 7.2500 
    seaattack = 10.0000 
    subattack = 13.2500 
    convoyattack = 2.5000 
    shorebombardment = 1.2500 
    airattack = 8.0000 
    transportcapability = 0.0000 
    range = 1675.0000 
    distance = 0.1300 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3083 } 
    name = "Destroyer Division 32" 
    model = 5 
    type = destroyer 
    extra1 = naval_improved_hull_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 4 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.1396 
    organisation = 46.0600 
    morale = 63.0000 
    experience = 0.2982 
    defaultorganisation = 47.0000 
    redep_unit_name = "" 
    supplies = 10.9000 
    oil = 11.5000 
    max_supply_stock = 10.9000 
    max_oil_stock = 11.5000 
    maxspeed = 22.0000 
    supplyconsumption = 0.2900 
    fuelconsumption = 0.9700 
    surfacedetectioncapability = 6.0000 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 2.0000 
    visibility = 27.0000 
    seadefence = 6.0000 
    airdefence = 7.2500 
    seaattack = 10.0000 
    subattack = 13.2500 
    convoyattack = 2.5000 
    shorebombardment = 1.2500 
    airattack = 8.0000 
    transportcapability = 0.0000 
    range = 1675.0000 
    distance = 0.1300 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3006 } 
    name = "HMS Resolution" 
    model = 3 
    type = battleship 
    extra1 = b_u2 
    extra2 = naval_radar_l 
    extra3 = naval_sa_l 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 2 
    brigade_model2 = 3 
    brigade_model3 = 5 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 87.5689 
    organisation = 51.6707 
    morale = 70.0000 
    experience = 1.4956 
    defaultorganisation = 59.0000 
    brig_upgr_progress1 = 0.2826 
    redep_unit_name = "" 
    supplies = 72.1000 
    oil = 17.6000 
    max_supply_stock = 72.1000 
    max_oil_stock = 17.6000 
    maxspeed = 14.0000 
    supplyconsumption = 1.4200 
    fuelconsumption = 0.9600 
    surfacedetectioncapability = 3.0000 
    airdetectioncapability = 2.0000 
    subdetectioncapability = 0.0000 
    visibility = 25.0000 
    seadefence = 20.0000 
    airdefence = 21.7500 
    seaattack = 51.0000 
    subattack = 0.0000 
    convoyattack = 9.7500 
    shorebombardment = 11.5000 
    airattack = 12.5000 
    transportcapability = 0.0000 
    range = 2500.0000 
    distance = 0.2300 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3007 } 
    name = "HMS Ramillies" 
    model = 3 
    type = battleship 
    extra1 = b_u2 
    extra2 = naval_radar_l 
    extra3 = naval_sa_l 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 2 
    brigade_model2 = 3 
    brigade_model3 = 5 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 98.7950 
    organisation = 57.8200 
    morale = 70.0000 
    experience = 0.8976 
    defaultorganisation = 59.0000 
    brig_upgr_progress1 = 0.2301 
    redep_unit_name = "" 
    supplies = 72.1000 
    oil = 17.6000 
    max_supply_stock = 72.1000 
    max_oil_stock = 17.6000 
    maxspeed = 14.0000 
    supplyconsumption = 1.4200 
    fuelconsumption = 0.9600 
    surfacedetectioncapability = 3.0000 
    airdetectioncapability = 2.0000 
    subdetectioncapability = 0.0000 
    visibility = 25.0000 
    seadefence = 20.0000 
    airdefence = 21.7500 
    seaattack = 51.0000 
    subattack = 0.0000 
    convoyattack = 9.7500 
    shorebombardment = 11.5000 
    airattack = 12.5000 
    transportcapability = 0.0000 
    range = 2500.0000 
    distance = 0.2300 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12074 id = 3199 } 
    name = "HMS Warspite" 
    model = 4 
    type = battleship 
    extra1 = b_u2 
    extra2 = naval_radar_l 
    extra3 = naval_sa_l 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 10 
    brigade_model2 = 4 
    brigade_model3 = 5 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 99.7970 
    organisation = 62.7200 
    morale = 75.0000 
    experience = 0.0000 
    defaultorganisation = 64.0000 
    redep_unit_name = "" 
    supplies = 94.7000 
    oil = 30.9000 
    max_supply_stock = 94.7000 
    max_oil_stock = 30.9000 
    maxspeed = 16.0000 
    supplyconsumption = 1.7400 
    fuelconsumption = 1.3300 
    surfacedetectioncapability = 4.5000 
    airdetectioncapability = 3.0000 
    subdetectioncapability = 0.0000 
    visibility = 30.0000 
    seadefence = 20.0000 
    airdefence = 22.7500 
    seaattack = 53.2500 
    subattack = 0.0000 
    convoyattack = 10.2500 
    shorebombardment = 11.5000 
    airattack = 13.5000 
    transportcapability = 0.0000 
    range = 2500.0000 
    distance = 0.2400 
    travelled = 0.0000 
  } 
}
Global modifiers: like before

Defender GER

Units involved:
Code:
navalunit = { 
  id = { type = 12027 id = 3000 } 
  name = "Kampfgruppe Gneisenau" 
  location = 2426 
  prevprov = 2424 
  home = 32 
  base = 32 
  mission = { 
    type = convoy_raiding 
    target = 2357 
    missionscope = 2 
    percentage = 0.9000 
    night = yes 
    day = yes 
    startdate = { year = 1939 month = october day = 29 hour = 18 } 
    enddate = { year = 34463 month = january day = 0 hour = 0 } 
    task = 1 
    location = 32 
  } 
  date = { 
    year = 1936 
    month = january 
    day = 0 
    hour = 0 
  } 
  development = no 
  morale = 0.0010 
  leader = { 
    id = { type = 6 id = 845 } 
    name = "Fanger" 
    picture = "gfx\interface\pics\L845.bmp" 
    category = admiral 
    rank = 3 
    rank_year = 1930 
    rank_year = 1940 
    rank_year = 1942 
    rank_year = 1990 
    max_skill = 6 
    startyear = 1930 
    endyear = 1943 
    skill = 4 
    experience = 80.9706 
    trait = spotter 
    changed = yes 
  } 
  movetime = { 
    year = 1939 
    month = november 
    day = 23 
    hour = 11 
  } 
  movement = { 2425 2419 2596 2414 32 } 
  division = { 
    id = { type = 4712 id = 246832 } 
    name = "Stuttgart" 
    model = 6 
    type = light_cruiser 
    extra1 = b_u3 
    extra2 = naval_improved_hull_l 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 10 
    brigade_model2 = 4 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 98.4898 
    organisation = 33.3720 
    morale = 67.0000 
    experience = 0.0000 
    defaultorganisation = 30.0000 
    redep_unit_name = "" 
    supplies = 12.5731 
    oil = 1.0783 
    max_supply_stock = 26.4000 
    max_oil_stock = 9.9000 
    maxspeed = 21.0000 
    supplyconsumption = 0.4800 
    fuelconsumption = 0.5100 
    surfacedetectioncapability = 4.5000 
    airdetectioncapability = 2.7500 
    subdetectioncapability = 0.0000 
    visibility = 20.0000 
    seadefence = 6.0000 
    airdefence = 9.2500 
    seaattack = 15.0000 
    subattack = 0.0000 
    convoyattack = 3.7500 
    shorebombardment = 2.7500 
    airattack = 7.2500 
    transportcapability = 0.0000 
    range = 2500.0000 
    distance = 0.2400 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 12027 id = 3044 } 
    name = "Gneisenau" 
    model = 6 
    type = battlecruiser 
    extra1 = b_u2 
    extra2 = naval_fire_controll_l 
    extra3 = naval_sa_l 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 10 
    brigade_model2 = 4 
    brigade_model3 = 8 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 97.0162 
    organisation = 50.0580 
    morale = 76.0000 
    experience = 10.4245 
    defaultorganisation = 45.0000 
    redep_unit_name = "" 
    supplies = 34.9093 
    oil = 2.9299 
    max_supply_stock = 73.3000 
    max_oil_stock = 26.9000 
    maxspeed = 21.0000 
    supplyconsumption = 1.5100 
    fuelconsumption = 1.3100 
    surfacedetectioncapability = 5.2500 
    airdetectioncapability = 3.2500 
    subdetectioncapability = 0.0000 
    visibility = 36.0000 
    seadefence = 19.0000 
    airdefence = 23.5000 
    seaattack = 39.2500 
    subattack = 0.0000 
    convoyattack = 11.2500 
    shorebombardment = 7.7500 
    airattack = 14.5000 
    transportcapability = 0.0000 
    range = 3500.0000 
    distance = 0.3400 
    travelled = 0.0000 
  } 
  division = { 
    id = { type = 4712 id = 530979 } 
    name = "1. Zerstörergeschwader" 
    model = 8 
    type = destroyer 
    extra1 = naval_spotter_s 
    extra2 = none 
    extra3 = none 
    extra4 = none 
    extra5 = none 
    brigade_model1 = 4 
    brigade_model2 = 0 
    brigade_model3 = 0 
    brigade_model4 = 0 
    brigade_model5 = 0 
    strength = 98.5656 
    organisation = 30.0348 
    morale = 65.0000 
    experience = 0.0000 
    defaultorganisation = 27.0000 
    redep_unit_name = "" 
    supplies = 5.7150 
    oil = 1.1001 
    max_supply_stock = 12.0000 
    max_oil_stock = 10.1000 
    maxspeed = 23.0000 
    supplyconsumption = 0.3900 
    fuelconsumption = 0.7800 
    surfacedetectioncapability = 4.0000 
    airdetectioncapability = 2.5000 
    subdetectioncapability = 4.0000 
    visibility = 30.0000 
    seadefence = 11.0000 
    airdefence = 14.2500 
    seaattack = 17.5000 
    subattack = 21.0000 
    convoyattack = 4.5000 
    shorebombardment = 3.2500 
    airattack = 12.0000 
    transportcapability = 0.0000 
    range = 2575.0000 
    distance = 0.1600 
    travelled = 0.0000 
  } 
}
Global modifiers: like before

Possible outcomes:
  • ENG CL lost (friendly fire)
  • ENG BB lost, GER BC & DD lost
  • ENG DD lost
  • GER total loss
  • GER BC lost
Time until disengagement seems to be arbitrary; the small fleet can survive the "bad" example, when disengagement happens before sunrise.

Both battles happen almost completely during night time and I see that the distance between fleets seems to jump around randomly while no side can detect the other.
Interestingly, the "bad" battle starts with all ships of both sides invisible - it should not, I think, under such circumstances.

I find that one of two constraints should be relaxed to solve the issue: Either the small distance, at which the encounter starts, must be relaxed; or the arbitrariness of distance changes (no correlation to speed or detection visible; the behaviour does not change even when both sides see at least one unit of the other) must be reduced.
- Can this actually be done?