• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Fixed Managing Colony Governor Dialog Error Log

Levis

Find(Rum) = false;
Staff member
Administrator
Creative Support
Programmer
Storm Modder
Code:
RUNTIME ERROR - file: dialogs\governor.c; line: 430
Global variable not found
RUNTIME ERROR - file: dialogs\governor.c; line: 430
Unknown data type
RUNTIME ERROR - file: dialogs\governor.c; line: 431
Global variable not found
RUNTIME ERROR - file: dialogs\governor.c; line: 431
Unknown data type
RUNTIME ERROR - file: dialogs\governor.c; line: 433
Global variable not found
RUNTIME ERROR - file: dialogs\governor.c; line: 433
Unknown data type
RUNTIME ERROR - file: dialogs\governor.c; line: 435
Global variable not found
RUNTIME ERROR - file: dialogs\governor.c; line: 435
Unknown data type

When managing a colony and trying to change the taxation level
 
Last edited:
Code:
            Preprocessor_Add("addr", GetCharacterAddressForm(NPChar, ADDR_CIVIL, false, false));
            dialog.text = DLG_TEXT[70];
            link.a1 = DLG_TEXT[71];
            link.a1.go = "Colony_management";
            link.l2 = DLG_TEXT[72];
            link.l2.go = "quests";
            link.l3 = DLG_TEXT[73];
            link.l3.go = "exit";

For some reasons its these lines. The ones with the DLG_TEXT

from governor.h
Code:
"What are your orders, #saddr#?",
"I must manage this colony.",
"Do you need any assistance, #saddr#?",
"There are things I have to do.",

Seems the problem lies in the saddr one...
 
Whatever is link 'a1'??? Shouldn't that be 'l1' to match with the others?
 
Whatever is link 'a1'??? Shouldn't that be 'l1' to match with the others?
from dialog.c:
Code:
//If action is l this is a normal link and it should be added. Options from added files should be placed above default options.
//If action is a then it should overwrite the link in place, or be placed at that absolute spot
 
Right.... So that isn't wrong then?

'saddr' should work as it is being defined right above.
Do you have a savegame affected by this one?

Also, note that in some cases if you make changes that require a new game but don't actually start one,
you can get bizarre error logs about "variables missing" in place that aren't even remotely related.
 
way to replicate:
Start a new game on assassin
Use console switch 2 and set to god mode
Pillage kralendijk and decide to take the colony for yourself.
exit governor mansion, and enter again
Talk to your apointed govenor.
Say you want to manage the colony
 
Does provide the opportunity to also check assigning those female governors. I'd still want to see that one fixed too....
 
This code:
Code:
    case "Colony_management":
       DialogExit();
       Dialog.TempNode = "First time";
       Dialog.CurrentNode = Dialog.TempNode;

       LaunchCaptureColony(PChar, GetCurrentTownID());
     break;
Should be this:
Code:
    case "Colony_management":
       DialogExit();
       NextDiag.CurrentNode = NextDiag.TempNode;

       LaunchCaptureColony(PChar, GetCurrentTownID());
     break;
That fixes it. It has absolutely NOTHING to do with the lines that error.log points to.

We've had confusion with this before. Some dialogs have this at the top:
Code:
makearef(NextDiag, NPChar.Dialog);
And some have:
Code:
makearef(Dialog, NPChar.Dialog);
Depending on which of the two it is, the code in the dialog file needs to refer to something else.
Similar to the one million ways to refer to the player (PChar, pc, MainChar, mc, the list goes on).
 
Back
Top