Wow it has almost been a year since I last posted on this thread. Time flies fast that's for sure.
Its a long way from being done, but I figured I'd share some pics for some of the features that this mod will have available for other modders to customize content. I've set the dialogue up to be "opt-in" by adding:
"optInMorrokainExtendedDialog":true,
To the custom section of the relevant faction file. Vanilla factions will be enabled by default.
For those who want extra customization (such as enabling the dialogue as a whole but blacklisting certain entities where it doesn't make sense) I plan on accommodating things like that too but haven't gotten to it quite yet. It will likely be a separate spreadsheet containing entity ids.
So far I've managed to convert the entire portion of requesting commodities to the merging spreadsheet. There doesn't appear to be any bugs in the logic so far. Ideally the addition of dialogue using the custom tokens to do things like highlights, multiple responses for each section of the dialogue, etc, will be fairly bullet proof for ease of use. It should already do things like throw an exception and report if a modder started a highlight wrapper and then didn't use an end highlight wrapper.
Unlike rules, a modder also can use any color for highlights to their dialogue. There are set ones for those who don't want to get too technical. Currently the basic options are: story (vanilla story hl), faction (faction color), red, green, blue, purple, yellow, orange, pink, teal, gray, positive (vanilla positive hl), negative (vanilla negative hl), and default (vanilla default hl). However, for those who have something else in mind there is also the option of custom colors. After the wrappers, simply use rgba values just like you would in java.
There will also be additional replacement token options for different faction flavor options. I've included:
$lordOrLady, $LordOrLady, $lordOrLadyPlayer, $LordOrLadyPlayer, $priestOrPriestess, $PriestOrPriestess, $priestOrPriestessPlayer, $PriestOrPriestessPlayer, $SorcererOrSorceress, $sorcererOrSorceress, $SorcererOrSorceressPlayer, $sorcererOrSorceressPlayer
Example:
Syntax:
In-Game Dialogue showing all three options proccing:
If the syntax looks a little blocky, keep in mind that using $NEWLINE to create a new paragraph is optional. A modder can use enter in the spreadsheet to make your own paragraphs and that should be preserved in the dialogue string.
However, modders
must use -OR- to designate additional responses and the highlight syntax for any highlights, however.
Due to the way that I am assuming spreadsheet merges work, modders likely must also
start their dialogue with -OR- to prevent the first additional dialogue option from being merged with the last dialogue option if the modder is adding dialogue to an existing faction such as independents or the hegemony.
If a modder is just adding dialogue for their own custom faction, beginning with -OR- will cause a runtime exception. I don't think there is any way around that unless I can think up something clever.
I also wanted to mention that if anyone has additional token requests they can place them in this thread.