Additive ZSDF dialogs

Fri Apr 06, 2018 7:59 pm

Currently it's impossible to load multiple script00s from different archives; the last one will always win.

This setup is a replica of my intended idea. BaseGame is my imaginary standalone project, and UserMod is a mod someone would create to add new characters into the game. Load BaseGame and UserMod in that order, and the zombieman will no longer talk.

This severely limits the modding capabilities for my users, as there's simple no way to "plug and play" custom NPCs into their preferred mod setup (let's say users want to load several mods - more than 2 - all containing different new NPCs).

UPDATE post-added 29/05/2021:

Working example file: ... -850339707
Last edited by Nash on Fri May 28, 2021 1:49 pm, edited 2 times in total.

Re: Additive ZSDF dialogs

Sat Apr 07, 2018 3:57 am

With the ability to use full paths to dialog files I don't think that this is needed.
I attached modified base game and mod .pk3s that utilize this feature to load dialogues from both files.
You do not have the required permissions to view the files attached to this post.

Re: Additive ZSDF dialogs

Sat Apr 07, 2018 12:35 pm

Thanks, this is already a huge improvement, but unfortunately it still does not solve the original concern of stacking multiple NPC mods together... try this load order: BaseGame, UserMod, AnotherMod. The demon and revenant will not talk.

The problem is that it's not possible for a mod to list every mod to be included... AnotherMod doesn't know the existence of UserMod.

[off topic info: in my first post, I erroneously left behind a DIALOGUE lump inside the map WADs which weren't actually meant to be there... that technique is considered obsolete to me ever since the GameInfo method. The map files were from some old files before the GameInfo method existed. I have since removed all DIALOGUE lumps from these 3 new files]
Last edited by Nash on Fri May 28, 2021 1:47 pm, edited 1 time in total.

Re: Additive ZSDF dialogs

Sun Apr 08, 2018 9:05 am

OK, I missed that point indeed.

For compatibility reason GAMEINFO's Dialogue should remain the same.
It should reference only one file and its actual value should depend on loading order.

Additive dialogs can be implemented via separate GAMEINFO key, like AddDialogues for example.
The thing is this approach doesn't work quite well if both definitions are mixed.
Dialogue key overrides the first script while AddDialogues inserts them at the end of the list.

Re: Additive ZSDF dialogs

Sun Apr 08, 2018 11:35 am

Yes, I am in agreement with new AddDialogues key (that's like AddEventHandlers, right?! =D) and for my project, I will exclusively use AddDialogues instead of Dialogue.

Re: Additive ZSDF dialogs

Fri May 28, 2021 1:47 pm


I have removed all previous file attachments as they are obsolete and do not work. I have added a link to a working example file as of 29/05/2021 that properly demonstrates the new feature