I know that the Soviets can declare war to Poland to gain access to Germany, in case Poland has not been annexed before. According to the LUA files in can happen in 1942:
You can notice the second "true" in GoodToWarCheck, which means they will attack Poland even if it is in a faction. It would of course apply to a puppeted Axis Poland, but it would also apply to an Allied Poland which would have managed to survive this far.
Imagine that through an epic effort you've managed to have the German offensive in Poland stopped but the war in 1942 is still indecise, with fluctuating borders. Then suddenly the Comintern declares war to the Allies, so that the Allies are at war with everyone else and Hitler doesn't have to worry about the Red Army any more (the script is s crystal clear: the Soviets will not consider any attack against the Axis before being finished with their war with the Allies). It would be an absolute disaster for the Allies, and in some sense a disaster due to their performance being too good, which is weird. I think it could be called a bug. Has this already happen to somebody? Maybe somebody playing Poland as a human player.
Code:
function P.ForeignMinister_ProposeWar(voForeignMinisterData)
-- If we are pat of the Comintern then process this
if not(voForeignMinisterData.Strategy:IsPreparingWar()) then
if voForeignMinisterData.FactionName == "comintern" then
-- We will not consider DOWing Germany if we are in a war already
if not(voForeignMinisterData.IsAtWar) then
-- Make sure we control Moscow
if CCurrentGameState.GetProvince(1409):GetController() == voForeignMinisterData.ministerTag then
local loAxisFaction = CCurrentGameState.GetFaction("axis")
local loAxisTag = loAxisFaction:GetFactionLeader()
local loAxisCountry = loAxisTag:GetCountry()
-- Make sure we never surrendered in the past
if not(loAxisCountry:GetFlags():IsFlagSet("su_signs_peace")) then
local loAlliesTag = CCurrentGameState.GetFaction("allies"):GetFactionLeader()
local loAxisAlliesRelation = loAxisCountry:GetRelation(loAlliesTag)
local lbSealion = P.SealionCheck(loAxisAlliesRelation, loAxisFaction)
-- Can we DOW the Axis Leader
if lbSealion then
if math.random(100) < 40 then
voForeignMinisterData.Strategy:PrepareLimitedWar(loAxisTag, 100)
end
else
local lbDOW = Support.GoodToWarCheck(loAxisTag, loAxisCountry, voForeignMinisterData, false, true, true)
if lbDOW then
if voForeignMinisterData.Year >= 1942 then
if math.random(100) < 10 then
voForeignMinisterData.Strategy:PrepareLimitedWar(loAxisTag, 100)
end
end
elseif voForeignMinisterData.Year >= 1942 then
-- Poland Check if we can go through them
local loPOLTag = CCountryDataBase.GetTag("POL")
local loPolandCountry = loPOLTag:GetCountry()
lbDOW = Support.GoodToWarCheck(loPOLTag, loPolandCountry, voForeignMinisterData, false, true, true)
if lbDOW then
if math.random(100) < 30 then
voForeignMinisterData.Strategy:PrepareLimitedWar(loPOLTag, 100)
end
end
end
end
end
end
end
end
end
end
Imagine that through an epic effort you've managed to have the German offensive in Poland stopped but the war in 1942 is still indecise, with fluctuating borders. Then suddenly the Comintern declares war to the Allies, so that the Allies are at war with everyone else and Hitler doesn't have to worry about the Red Army any more (the script is s crystal clear: the Soviets will not consider any attack against the Axis before being finished with their war with the Allies). It would be an absolute disaster for the Allies, and in some sense a disaster due to their performance being too good, which is weird. I think it could be called a bug. Has this already happen to somebody? Maybe somebody playing Poland as a human player.
- 1