Strife's Dialog System - UDMF Flavor
Moderators: GZDoom Developers, Raze Developers
Forum rules
Please don't start threads here asking for help. This forum is not for requesting guides, only for posting them. If you need help, the Editing forum is for you.
Please don't start threads here asking for help. This forum is not for requesting guides, only for posting them. If you need help, the Editing forum is for you.
-
- Posts: 1562
- Joined: Tue Oct 20, 2015 12:50 pm
- Graphics Processor: nVidia with Vulkan support
- Location: Kozolupy, Bohemia
Re: Strife's Dialog System - UDMF Flavor
Assign conversation to actor class?? Heresy, I say!
Since we have the conversation ID, there is absolutely no reason to assign the conversation to actor class...
Since we have the conversation ID, there is absolutely no reason to assign the conversation to actor class...
-
- Posts: 62
- Joined: Sun Feb 12, 2017 3:30 pm
- Location: Dark side of Bavaria
Re: Strife's Dialog System - UDMF Flavor
Thanks for the pointer Dexter!
Adding the conversation id got it to work!
Adding the conversation id got it to work!
Spoiler:
-
- Posts: 912
- Joined: Sun Aug 16, 2015 11:52 pm
Re: Strife's Dialog System - UDMF Flavor
Okay, I have no idea what I'm doing I guess. I'm doing everything as you instructed, and yesterday it worked without a hitch. Today it refuses to run.
If I put the code in a Decorate lump, it says "expected {, got =" regarding the namespace line, and aborts the map. If I put it in a regular text lump, it doesn't execute any dialogues. What am I doing wrong? Am I supposed to compile this somehow? I thought the whole point was to avoid having to compile anything.
It's driving me CRAZY because it was all working just fine only yesterday, and now it's refusing to even execute, even if I revert to all the stuff I did the day before that actually worked. It outright refuses to run anything one way or the other.
I'm not doing this in UDMF, by the way, but in Heretic In Hexen Format. Like I said, it worked yesterday, and even if i remove everything but what was working yesterday, it still refuses to work.
If I put the code in a Decorate lump, it says "expected {, got =" regarding the namespace line, and aborts the map. If I put it in a regular text lump, it doesn't execute any dialogues. What am I doing wrong? Am I supposed to compile this somehow? I thought the whole point was to avoid having to compile anything.
It's driving me CRAZY because it was all working just fine only yesterday, and now it's refusing to even execute, even if I revert to all the stuff I did the day before that actually worked. It outright refuses to run anything one way or the other.
I'm not doing this in UDMF, by the way, but in Heretic In Hexen Format. Like I said, it worked yesterday, and even if i remove everything but what was working yesterday, it still refuses to work.
Spoiler:
-
- Posts: 108
- Joined: Tue Aug 31, 2010 7:19 am
- Location: Sweden
Re: Strife's Dialog System - UDMF Flavor
If you check the main post they're supposed to be stored in DIALOG lumps, either as DIALOGxx, e.g. DIALOG01 for MAP01, or just as DIALOG and then placed between map markers in Slade.
Usually if there's a problem with the conversation scripts the map will still run, but no conversation can be engaged. From what I can see you're specifying a "Generic_Stairs" in a Professor Mengler's dialog block. I'm not sure if it's allowed to do that, I would use the ZDoom wiki to find out what the special id for Generic Stairs is and use the "special" and "args" fields to pass the information. You can see an example in the Q&A section.
Usually if there's a problem with the conversation scripts the map will still run, but no conversation can be engaged. From what I can see you're specifying a "Generic_Stairs" in a Professor Mengler's dialog block. I'm not sure if it's allowed to do that, I would use the ZDoom wiki to find out what the special id for Generic Stairs is and use the "special" and "args" fields to pass the information. You can see an example in the Q&A section.
-
- Posts: 912
- Joined: Sun Aug 16, 2015 11:52 pm
Re: Strife's Dialog System - UDMF Flavor
The lump is called DIALOG01, and it's for dialog on map01. Do I have to convert it to a dialogue lump somehow? I never could figure out how to do that with slade.Zergeant wrote:If you check the main post they're supposed to be stored in DIALOG lumps, either as DIALOGxx, e.g. DIALOG01 for MAP01, or just as DIALOG and then placed between map markers in Slade.
Usually if there's a problem with the conversation scripts the map will still run, but no conversation can be engaged. From what I can see you're specifying a "Generic_Stairs" in a Professor Mengler's dialog block. I'm not sure if it's allowed to do that, I would use the ZDoom wiki to find out what the special id for Generic Stairs is and use the "special" and "args" fields to pass the information. You can see an example in the Q&A section.
I fixed the code for specials just as you described in the q and a section, and still no dice, so it can't be that. I tried moving the dialogue stuff under the map marker itself and that made no difference either.
-
- Posts: 108
- Joined: Tue Aug 31, 2010 7:19 am
- Location: Sweden
Re: Strife's Dialog System - UDMF Flavor
Well after looking at your wad I see a number of problems, most of them shows up when starting GZDoom with the wad.
First off, change 'namespace ZDoom' into 'namespace = "ZDoom"'.
Secondly, you have a row of missing actors defined in Decorate, first error appearing when one actor refers to another actor called "ZombieTeen" not existing. Also a "FireGuy". This doesn't concern the dialogues though.
The third error/errors is in the dialogue because you try to give items that do not exist. Try defining them first even if it's just a test item, before attempting to give.
Fixing those errors should make it work.
First off, change 'namespace ZDoom' into 'namespace = "ZDoom"'.
Secondly, you have a row of missing actors defined in Decorate, first error appearing when one actor refers to another actor called "ZombieTeen" not existing. Also a "FireGuy". This doesn't concern the dialogues though.
The third error/errors is in the dialogue because you try to give items that do not exist. Try defining them first even if it's just a test item, before attempting to give.
Fixing those errors should make it work.
-
- Posts: 912
- Joined: Sun Aug 16, 2015 11:52 pm
Re: Strife's Dialog System - UDMF Flavor
Sorry, most of that stuff exists in other wads I haven't assembled into a pk3 yet. I sent you the one with the dialogue code so you could look at it yourself. Probably shoulda just sent you everything, but I only sent the part that seemed relevant. I'll try to send the entire thing slapped together into a pk3 so you can see exactly what it's doing.Zergeant wrote:Well after looking at your wad I see a number of problems, most of them shows up when starting GZDoom with the wad.
First off, change 'namespace ZDoom' into 'namespace = "ZDoom"'.
Secondly, you have a row of missing actors defined in Decorate, first error appearing when one actor refers to another actor called "ZombieTeen" not existing. Also a "FireGuy". This doesn't concern the dialogues though.
The third error/errors is in the dialogue because you try to give items that do not exist. Try defining them first even if it's just a test item, before attempting to give.
Fixing those errors should make it work.
Adding the = didn't make a difference: still no dialogue interactions.
-
- Posts: 21
- Joined: Sun Nov 17, 2013 5:25 pm
Re: Strife's Dialog System - UDMF Flavor
I can walk up to my ShotgunGuy, press USE and initiate conversation.
However, when I try to do this with each Revenant, I'm not successful.
I've taken a screenshot of my Slade build. Am I missing anything?
I've made sure my MAP01, DIALOG01 and SCRIPT01 match, numbers-wise. I've verified IDs have been placed (via GZDoom Builder) in the Revenant's things.
[img]http://i.imgur.com/FQJHxyY.png[/img]
I've made sure that the Revenants have a Conversation Script ID assigned to them, by using an Action Special #79 on each of them:
[img]http://i.imgur.com/w5sk5Ee.jpg[/img]


I've made sure my MAP01, DIALOG01 and SCRIPT01 match, numbers-wise. I've verified IDs have been placed (via GZDoom Builder) in the Revenant's things.
[img]http://i.imgur.com/FQJHxyY.png[/img]
I've made sure that the Revenants have a Conversation Script ID assigned to them, by using an Action Special #79 on each of them:
[img]http://i.imgur.com/w5sk5Ee.jpg[/img]
-
- Posts: 108
- Joined: Tue Aug 31, 2010 7:19 am
- Location: Sweden
Re: Strife's Dialog System - UDMF Flavor
You don't need an Action Special unless you intend to swap their IDs, in which case you'd only need to utilize the Conversation ID field.
What are you not successful with? Does it start the wrong conversation? Does it not work at all?
What are you not successful with? Does it start the wrong conversation? Does it not work at all?
-
- Posts: 21
- Joined: Sun Nov 17, 2013 5:25 pm
Re: Strife's Dialog System - UDMF Flavor
My problem is that I can walk up to the ShotgunGuy in your tutorial wad, press E and start a conversation. However, I cannot initiate one with either Revenant. I was using the Action Special because I supposed thats how Doom would link the conversation blocks to a specific monster. I've since removed the Action Special and returned to specifying "id" in the top of the conversation block.Zergeant wrote:You don't need an Action Special unless you intend to swap their IDs, in which case you'd only need to utilize the Conversation ID field.
What are you not successful with? Does it start the wrong conversation? Does it not work at all?
Your approach is ZSDF, right? I'm making sure I don't have any designs I accidentally incorporated from a USDF tutorial. What else am I missing?
-
- Posts: 108
- Joined: Tue Aug 31, 2010 7:19 am
- Location: Sweden
Re: Strife's Dialog System - UDMF Flavor
Hard to judge without the files, following the tutorial should give you a complete and working dialogue environment. Unless it's a very old version of GZDoom.
-
- Posts: 21
- Joined: Sun Nov 17, 2013 5:25 pm
Re: Strife's Dialog System - UDMF Flavor
I verified this behavior in the latest version of GZDoom. Here's the contents of my DIALOG01 lump. I currently have that saved as a Text lump. Should it be something different?Zergeant wrote:Hard to judge without the files, following the tutorial should give you a complete and working dialogue environment. Unless it's a very old version of GZDoom.
Code: Select all
namespace = "ZDoom";
include = "DIALOG00";
conversation
{
actor = "ShotgunGuy";
page
{
name = "Bored Shotgunner";
dialog = "RANDOM_BOREDGUY";
}
}
conversation
{
actor = Revenant;
page
{
name = "Skeleton Shoppe";
dialog = "What you need?";
choice
{
text = "A rocket launcher";
yesmessage = "Here's your bazooka";
giveitem = "Rocketlauncher";
closedialog = true;
}
choice
}
text = "A Chaingun please";
yesmessage ="Very good, one chaingun";
giveitem = "Chaingun";
closedialog = true;
}
}
}
-
- Posts: 108
- Joined: Tue Aug 31, 2010 7:19 am
- Location: Sweden
Re: Strife's Dialog System - UDMF Flavor
The starting bracket for the second choice in the Revenant's dialogue is backwards.
-
- Posts: 21
- Joined: Sun Nov 17, 2013 5:25 pm
Re: Strife's Dialog System - UDMF Flavor
Thank you for catching. Even after removing the entire two choice blocks, so the only thing left is the one line of dialog, I can't seem to initiate conversation with the Revenant. I'll keep trying things but I'm a bit lost. I don't know why it works for one monster but not the other.Zergeant wrote:The starting bracket for the second choice in the Revenant's dialogue is backwards.
-
- Posts: 108
- Joined: Tue Aug 31, 2010 7:19 am
- Location: Sweden
Re: Strife's Dialog System - UDMF Flavor
You forgot quotes around Revenant.