kalterkrieg / Kalterkrieg-bug-reports

Issue tracker for Kalterkrieg for Hearts of Iron 4
0 stars 0 forks source link

ENG - International Loans Event Chain Issues #336

Closed Yularen2077 closed 1 month ago

Yularen2077 commented 1 month ago

OS

Windows 10

HOI4 Version

Bolivar v1.14.7.f4d3 (f03b)

Kalterkrieg Version

0.1.3

List any other mods used

TWR Music Mod

Were you using Steam?

Yes

Were you in multiplayer?

No

Which expansions do you NOT have?

N/A

Explanation of the Issue

This is a two part issue. This concerns ENG asking CAN and NEE for loans, starting with the event krg_eng.242 "Loans for Reconstruction". Funnily enough I only found that the chain could not complete while playing to get the logs for the first part!

First the easiest: the two ideas given by the chain (mutually exclusive by other tags' choices), ENG_favourable_loan_repayments and ENG_unfavourable_loan_repayments, are not named in the loc file, so the names do not show properly (you can see it in the screenshot below and shown is a search of the code showing they're not in the loc file). I know ENG is only partial, so it's more just as in fyi in case it was an oversight.

The second part is the the event chain does not seem to complete if Canada agreed to the give the loans but New England does not. Currently, if that is the case the only way to let England know (and complete the event chain) if either of the other two countries agreed or not is if Canada first denied it. You can see it in the code screenshot below, if NEE picks not to give Canada the loans, and Canada also denied it, Canada will get a follow up and agree to them, and then England will be told.

Steps to reproduce

  1. As ENG, vote in any party (majority or not) in the 1950 election, held after the last focus of the political tree is completed.
  2. Take the focus 'Secure International Loans' (the focus is shared across all three parties).
  3. Through the event chain, Canada will get the event first, followed by New England. If Canada and New England both denied a loan, it will loop back to Canada before ending back with England. If one of them agreed, after New England it will end with England.
    • if both CAN and NEE agree, ENG will end up with the idea: ENG_favourable_loan_repayments (from the event krg_eng.247)
    • if only one agrees, ENG will end up with the idea: ENG_unfavourable_loan_repayments (from the event krg_eng.246 and krg_eng.248)

The chain issues stems from Canada agreeing to the load but New England denying it. There are no game rules that can be set, and even the ai is not weighted one way or another so it's really just random if you'll get it trying it out. I kept getting Canada agree but New England deny it, and found the chain never completed actually just trying to get a game log for the loc issue. So if you load up the first save before, the chain will start and should not complete (with my two tests of it both times the AI choose the 'right' paths for the chain to not complete).

Possible Cause

For the loc, it's that the two ideas are not named in the loc file.

For the chain itself, it seems like the New England event, krg_eng.244, specifically for option B, krg_eng.244,.b, it needs an 'else_if' like option A has (but with the flag ENG_CAN_accepted), giving the event krg_eng.246 (where only CAN accepted, giving ENG_unfavourable_loan_repayments

Screenshots

No Loc Event Code

Save File

Loans Start.zip This is a day before the event chain starts. I tested it twice and got the same result, so if you use the save you'll probably end up with Canada accepting and New England denying, leading to the chain not completing. Loans End.zip This is well after the chain should have completed.

Log Files

error.log game.log These two were grabbed when I saved for Loans End, so they go to Oct, and start about a month before the Loans chain starts.

Important Files Attached

Axolotl3823 commented 1 month ago

Code side of event triggering has already been fixed, the localisation still needs doing

Axolotl3823 commented 1 month ago

Fixed