In this version, "error.log" is now complaining about "DIALOGS\English\FPHubMaid_dialog.h". That sort of error is difficult to track down because it usually means either a missing comma, a missing quote mark, a quote mark where it shouldn't be, or other such mistakes. And "error.log" doesn't say where in the file the error is. Looking at this one, "What do you need?" is missing the comma on the end.
About the rest of "FPHubMaid_dialog.c" and "FPHubMaid_dialog.h":
"FPHubMaid_dialog.h" is a declaration of an array of strings:
What follows is a list of strings, separated by commas. The count starts at 0 so there can be up to 41 pieces of dialog text.
"FPHubMaid_dialog.c" is mostly references to that array. "dialog.text" is what the character says. "link.l1" is what you say in reply. "link.l1.go" is the next part of "FPHubMaid_dialog.c" which will show up after you say what is in "link.l1". If you want a choice of answers, they can be "link.l2", "link.l3", etc., each with a matching "link.l2.go", "link.l3.go" etc. to lead to the code for each answer. So:
Code:
dialog.text = DLG_TEXT[0];
means the character will say what is in the first line of text - which is actually line 2 in "FPHubMaid_dialog.h" because line 1 is the initial 'string DLG_TEXT' line. (If you use Notepad to edit "FPHubMaid_dialog.h", you can go to a line of text, press Ctrl-G, and it will show the line number. The 'DLG_TEXT' number will usually be 2 less than that.)
So "FPHubMaid_dialog.c", case "First time", has this:
Code:
dialog.text = DLG_TEXT[0];
link.l1 = DLG_TEXT[1];
link.l1.go = "Exit";
link.l2 = DLG_TEXT[2];
link.l2.go = "room";
link.l3 = DLG_TEXT[10];
link.l3.go = "errands";
link.l4 = DLG_TEXT[3];
link.l4.go = "trade_1";
link.l5 = DLG_TEXT[10];
link.l5.go = "contactship";
It's fine up to the 'link.l3' part about errands. But 'link.l4' is set to DLG_TEXT[3], which is line 5 of "FPHubMaid_dialog.h", which is "For how long?" You probably want line 14, which is "Send me a list of items for purchase at the store." and which would be DLG_TEXT[12]. And 'link.l5' is set to DLG_TEXT[10], which means you'll probably have two answers saying "I need you to do certain errands for me." and one of them will actually lead to the shipyard. 'link.l5' should probably be line 15, "Contact the local shipwright.", which would be DLG_TEXT[13].
Except that the trade and shipyard parts won't work because they appear to be copied from a store owner and a shipyard owner. The maid is neither, so she probably won't have any goods or items for sale, nor will she have any ships. You'll just have to go to the store and shipyard yourself, just as you'll need to go to sea yourself if you want to use that ship and trade that cargo.