Jay_H's quest writing tutorial

For all talk about quest development - creation, testing, and quest system.
Post Reply
User avatar
Nystul
Posts: 1501
Joined: Mon Mar 23, 2015 8:31 am

Re: Jay_H's quest writing tutorial

Post by Nystul »

I am writing some demo quests now - should be finished soon. I want to show off:
  • dialog link with add dialog which reveals anyinfo message (sometimes used in vanilla df, just want a streamlined demo quest for demonstration reasons)
  • dialog linked resources that are linked together and anyinfo messages used to reveal on use (sometimes used in vanilla daggerfall)
  • rumors injected by optional rumors property for resource with dialog linked resource (sometimes used in vanilla daggerfall)
  • rumor mill in conjunction with dialog link (player must ask for news and get the right rumor to start investigating on topic) - extends vanilla df I think - similar use case than case above
  • rumors during quest (/ aftersuccess / afterfailure) with dialog link - similar use case than cases above
  • dialog with directional hint for dungeon that doesn't need to be revealed (broken in vanilla df, working in dfunity), could think of a nice cartographer quest, where you are asked to find a dungeon that is known to exist but not clear where it is. Player will have to travel to different towns to ask for rough compass direction to pin down location and find it by restricting the area and use the increased view distance of dfunity to finally find it. Will take long, but may be a pro cartographer quest
edit:
I have issued a pull request with these demo quests (__DEMO14 - __DEMO19) together with some minor fixes, improvements. Take a look if you are interested.

demo quests are pretty minimal. Just want to show the core element. most of them run infinite and there are no timers involved

the cartographer-type quest is now set up as a test for your pathfinding skills - still not very realistic since why would peasants know about the place at all... and it would take ages to find the dungeon without cheating - but it is for demonstrational purposes anyway
better use case would be probably to use it to add to the game's atmosphere when asking ppl and getting more detailed answers (like in the missing prince story quest).

Be aware that currently dialog options for resources are only generated in the "tell me about" section. The generic "Where is" mechanism still needs to be implemented (implementation in vanilla daggerfall is very rudimentary anyway - place resources yes, person resources partly and item resources not at all).

User avatar
Mosin Nagant
Posts: 40
Joined: Thu Nov 16, 2017 2:06 am
Location: Land of the Free, Home of the Brave

Re: Jay_H's quest writing tutorial

Post by Mosin Nagant »

Jay_H wrote: Thu Aug 17, 2017 1:54 am Placing the Quest File

First, name your quest file something. Right now we're going to name it the following:

TESTING1.txt

Save it in the folder /DaggerfallUnity_Data/StreamingAssets/Quests.

In a separate text editor, open the folder where you installed Daggerfall Unity, and then go to /DaggerfallUnity_Data/StreamingAssets/Tables and open the Temp-FightersQuests.txt file. You'll see some instructions at the start and a ton of file names below. Put a hyphen before each file name. Then on the last line, put exactly this:

TESTING1,

The comma must be there, or you'll get an index error from DFU when you try to run the quest. You can close this text editor now and return to just DFU and your custom quest. You'll need to do this every time you add a new quest.
...
Post if you have questions or if things go horribly, horribly wrong.
Decided to give quest writing a try, and things have gone horribly, horribly wrong (okay, I'm exaggerating a little :lol: .) I've saved my Quest file as TESTING1.txt, added TESTING1, to Temp-FightersQuests.txt, and placed hyphens on all of the other file names, but for some reason, the fighters guild quest giver is still only giving Daggerfall's default quests, and not my quest. Have I missed something?
Previously known as LordMordecai on DXL forums

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Jay_H's quest writing tutorial

Post by Interkarma »

The old temp quest tables have been deprecated very recently. Jay probably hasn't had time to update docs.

Available quests are now read from tables "QuestList-Classic" and "QuestList-DFU".

One tip: be careful using commas in the Notes field as that can break table schema (it's a comma separated list basically).

User avatar
Jay_H
Posts: 4061
Joined: Tue Aug 25, 2015 1:54 am
Contact:

Re: Jay_H's quest writing tutorial

Post by Jay_H »

Yes, that whole section is going to need a thorough re-write... after I get my head around it myself :D

User avatar
Hazelnut
Posts: 3015
Joined: Sat Aug 26, 2017 2:46 pm
Contact:

Re: Jay_H's quest writing tutorial

Post by Hazelnut »

Would you like me to update it Jay? Since I am the reason it's out of date. Happy to do this or leave to you if you would prefer.
See my mod code for examples of how to change various aspects of DFU: https://github.com/ajrb/dfunity-mods

User avatar
Jay_H
Posts: 4061
Joined: Tue Aug 25, 2015 1:54 am
Contact:

Re: Jay_H's quest writing tutorial

Post by Jay_H »

Only if you have time for it. I don't right now, but I will maybe tomorrow. Whoever gets to it first, I guess :)

User avatar
Hazelnut
Posts: 3015
Joined: Sat Aug 26, 2017 2:46 pm
Contact:

Re: Jay_H's quest writing tutorial

Post by Hazelnut »

Done, please can someone verify that the instructions work.
See my mod code for examples of how to change various aspects of DFU: https://github.com/ajrb/dfunity-mods

User avatar
Jay_H
Posts: 4061
Joined: Tue Aug 25, 2015 1:54 am
Contact:

Re: Jay_H's quest writing tutorial

Post by Jay_H »

Thank you. I'll be busy for the next few hours but I expect to test it afterwards.

User avatar
RH666
Posts: 48
Joined: Mon Feb 12, 2018 6:07 am
Location: Koegria

Re: Jay_H's quest writing tutorial

Post by RH666 »

And just to clarify, in this version enter key bad, right? To make quests work I gotta delete the linebreaks from my code?

Like instead of:


QuestorOffer: [1000]
<ce> RH HOUSE OF DIBELLA QUEST
<ce>
<ce> Greetings and blessings apon you, %pcf,
<ce> We have a request from the local nobility.
<ce> One of the nobles at _tavern_ wishes
<ce> tutelage in the arts of Love.
<ce> Will you be our teacher in the silken way?

RefuseQuest: [1001]
<ce> You are worthy of this task, but I understand
<ce> if you do not wish to take on this task.


Have:

QuestorOffer: [1000]<ce> RH HOUSE OF DIBELLA QUEST<ce><ce> Greetings and blessings apon you, %pcf,<ce> We have a request from the local nobility.<ce> One of the nobles at _tavern_ wishes <ce> tutelage in the arts of Love.<ce> Will you be our teacher in the silken way?RefuseQuest: [1001]<ce> You are worthy of this task, but I understand <ce> if you do not wish to take on this task.

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Jay_H's quest writing tutorial

Post by Interkarma »

You can use line breaks and write new quests in notepad, but line endings might change by the time it comes down to build which Notepad might have trouble with.

Recommend a better text editor like Notepad++ and it should all appear OK.

Post Reply