I can't wait to see more people playing this game and creating additional content for it. I think the ability of adding mods (including quests) to this game will really make it soar in popularity. Once the mod base is large enough, I feel Daggerfall Unity will almost be a "Build your own RPG" kind of game, where you can add just what you like into the game. If it reaches that state, it'll be the best.Jay_H wrote:I completely agree. I believe no fantasy RPG can possibly compare in scope with what Daggerfall is capable of, especially once we're able to break into custom quest actions and begin creating whole new quest dimensions. I like the comments people have made on the most recent ZetaPlays video, that DFU could become the "ultimate RPG."Tealy Wolf wrote:Daggerfall has the best potential of any Elder Scrolls game in my opinion. The world is massive, there are so many factions and quests to do, so many skills, and a lot of room for roleplaying. When I first played it after it became free, I fell in love with it. It nearly instantly became my favorite Elder Scrolls game, and that was back when it was buggy and had more flaws. Now that it's being improved upon with a new engine, it's only getting better and better.
Jay_H's quest writing tutorial
- Ziune Wolf
- Posts: 52
- Joined: Wed Aug 09, 2017 2:55 am
Re: Jay_H's quest writing tutorial: Vengeance build
- Midknightprince
- Posts: 1324
- Joined: Fri Aug 11, 2017 6:51 am
- Location: San Antonio TX
- Contact:
Re: Jay_H's quest writing tutorial: Vengeance build
@Jay_H
You have some of the best quests I ever did in Daggerfall.
Don't let other people do quests, just take a break, think of some cool new stuff, and throw it out there.
They're good dude, and I'm not even kissing butt here.
But I kind of am
You have some of the best quests I ever did in Daggerfall.
Don't let other people do quests, just take a break, think of some cool new stuff, and throw it out there.
They're good dude, and I'm not even kissing butt here.
But I kind of am
Check out my YouTube Channel!
- Jay_H
- Posts: 4073
- Joined: Tue Aug 25, 2015 1:54 am
- Contact:
Re: Jay_H's quest writing tutorial: Vengeance build
A good compliment should never be misunderstood Thank you for your encouragement. I'm hitting my creative limits on the current build, since all it supports are enemy creation and text messages, but I think we've done pretty well with those two elements. Soon items and people will be implemented, and that'll mean big new dimensions for quests. Once spells are added, that'll be a lot more, too.
- Interkarma
- Posts: 7251
- Joined: Sun Mar 22, 2015 1:51 am
Re: Jay_H's quest writing tutorial: Vengeance build
Jay, I wanted to let you know that Item resources are almost 100% working (excluding magic items). You can place items to a building/dungeon or stick them into a monster's inventory. You can even wire up actions to items that trigger when item is used by player. For example, you could make a bell that summons a monster or banishes an NPC once you've clicked them and read their story.
I haven't done a lot of testing with items, but they were working fairly well when I built this out. Let me know if you need any examples to get started and I'd be happy to give your creative mind some ammo.
I haven't done a lot of testing with items, but they were working fairly well when I built this out. Let me know if you need any examples to get started and I'd be happy to give your creative mind some ammo.
- Jay_H
- Posts: 4073
- Joined: Tue Aug 25, 2015 1:54 am
- Contact:
Re: Jay_H's quest writing tutorial: Vengeance build
I've excluded them up until now since I once placed an item in a building but it had no interaction. I suppose it was quite simple of me to suppose just placing it would include every other action I'll give it some testing and see what it takes to make it work. Thanks for the info.
- Jay_H
- Posts: 4073
- Joined: Tue Aug 25, 2015 1:54 am
- Contact:
Re: Jay_H's quest writing tutorial: Vengeance build
Hey, if you have ideas, that's what the quest prompt thread is for! Just hand them over and see if one of us doesn't do a good jobInterkarma wrote:Let me know if you need any examples to get started and I'd be happy to give your creative mind some ammo.
- Interkarma
- Posts: 7251
- Joined: Sun Mar 22, 2015 1:51 am
Re: Jay_H's quest writing tutorial: Vengeance build
I meant more on the tech side. I can give you some example quest scripts to show how to wire up items in various ways.
- Jay_H
- Posts: 4073
- Joined: Tue Aug 25, 2015 1:54 am
- Contact:
Re: Jay_H's quest writing tutorial: Vengeance build
You were absolutely right. I don't know what I was doing wrong with my initial testing, but "place item at," "toting," and "get item" all work, as well as clicking on an item to pick it up. I'll make a tutorial on them when I get a chance. Thanks for the tip.
- Jay_H
- Posts: 4073
- Joined: Tue Aug 25, 2015 1:54 am
- Contact:
Re: Jay_H's quest writing tutorial: Vengeance build
Part Five: Placing and Delivering Items
Now it's time to learn about putting items on monsters and making items into quest requirements.
All standard fare.
We have defined an ordinary reward of leveled gold.
We have defined another item called _clothes_, which will draw from the game's table of men's clothing. You can find other item tables in the quest element topic.
We have set our questgiver as the person to click on to end the quest.
We have set a timer of 20 minutes. As I said before, it's always a good idea to have a timer of some kind on your quest, just in case something goes wrong and it can't finish properly.
We have created, but not placed, a Giant Bat to fight.
We have told Daggerfall to choose some guild in the current town. In Aldingdale, that can only be the Fighters Guild.
We have told Daggerfall to begin the 20-minute timer we previously created.
We have told Daggerfall to place our enemy, the Giant Bat, at the guild.
We have also told Daggerfall to give the item _clothes_ to the Giant Bat. The game will decide what kind of men's clothing it'll give. There's a way to specifically determine which item it'll choose from the table, which is a more advanced step.
Now we have a new condition: toting ITEM and NPC clicked. This is a verbatim statement, except for the variables, and cannot be altered, with one minor exception which we won't go into in this tutorial.
This is a conditional statement which means, "If the player character is carrying the ITEM and clicks on the NPC," which then follows through to say, "I'll give the PC the REWARD and end the quest."
This is our usual time-out trigger.
Back in Aldingdale, Illesan Hills:
We see the game has chosen the item for us: a Formal tunic.
Just a reminder that in Daggerfall, only the specific quest object suffices. That's the one with the green background that this specific quest generated. Even if two identical objects are generated in two different instances of the quest, it'll require the item it generated this time.
We have killed our bat, and must now get its treasure.
Ordinarily, natural beasts don't hold treasure in Daggerfall, but we've put a sweater on this one. We take it out of its inventory and put it into ours.
Then we click on tunic guy, who accepts the item.
And there's our reward. If anything in your game does not work the same way as what's shown here, something's wrong with the quest file.
A few notes about how this works:
1. Always, always put the "give item ITEM to ENEMY" in the quest start-up section. It cannot accept quest conditions, so don't try a "pick one" scenario where you let the game choose between three different enemies and you give the item to one of them. It will not work.
2. "toting" is only compatible with clicking on an NPC. We may find more sophisticated ways of mixing item possession with other quest conditions, but for now, "toting" only matters in conjunction with clicking on a quest NPC.
And that's tutorial five on making quests in the Vengeance build.
If you want, you can try to experiment with trying to place an item on the ground somewhere. This inherently has quest actions built in, such that if you click on the object, it'll be put into your inventory. It's equally compatible with the "toting" condition. As an example, take a look at a section of a sample quest:
If the quest functions properly, you'll be able to find some quest-related piece of clothing in some residence in the current city. Clicking on it should take it from the ground and into your inventory.
Not all quest objects work well being placed on the ground. Some weapons are simply invisible, so if you know where they are and click on them they'll enter your inventory, but that's asking too much of an ordinary player. The mens_clothing variable will always be visible, so start with that if you want to test it.
Now it's time to learn about putting items on monsters and making items into quest requirements.
Code: Select all
Quest: TESTING4
DisplayName: Treasure Time
-- Message panels
QRC:
QuestorOffer: [1000]
<ce> Bring me one _clothes_.
RefuseQuest: [1001]
<ce> Then go away.
AcceptQuest: [1002]
<ce> But bring me the right one.
QuestFail: [1003]
<ce> ???
QuestComplete: [1004]
<ce> Good, but I'm gonna want more soon.
Code: Select all
Item _reward_ gold
Item _clothes_ mens_clothing
Person _questgiver_ group Questor male
Clock _timer_ 00:20
Foe _enemy_ is Giant_bat
Place _guild_ local magery
We have defined another item called _clothes_, which will draw from the game's table of men's clothing. You can find other item tables in the quest element topic.
We have set our questgiver as the person to click on to end the quest.
We have set a timer of 20 minutes. As I said before, it's always a good idea to have a timer of some kind on your quest, just in case something goes wrong and it can't finish properly.
We have created, but not placed, a Giant Bat to fight.
We have told Daggerfall to choose some guild in the current town. In Aldingdale, that can only be the Fighters Guild.
Code: Select all
-- Quest start-up:
start timer _timer_
place foe _enemy_ at _guild_
give item _clothes_ to _enemy_
We have told Daggerfall to place our enemy, the Giant Bat, at the guild.
We have also told Daggerfall to give the item _clothes_ to the Giant Bat. The game will decide what kind of men's clothing it'll give. There's a way to specifically determine which item it'll choose from the table, which is a more advanced step.
Code: Select all
_victory_ task:
toting _clothes_ and _questgiver_ clicked
give pc _reward_
end quest
This is a conditional statement which means, "If the player character is carrying the ITEM and clicks on the NPC," which then follows through to say, "I'll give the PC the REWARD and end the quest."
Code: Select all
_timer_ task:
end quest
Back in Aldingdale, Illesan Hills:
We see the game has chosen the item for us: a Formal tunic.
Just a reminder that in Daggerfall, only the specific quest object suffices. That's the one with the green background that this specific quest generated. Even if two identical objects are generated in two different instances of the quest, it'll require the item it generated this time.
We have killed our bat, and must now get its treasure.
Ordinarily, natural beasts don't hold treasure in Daggerfall, but we've put a sweater on this one. We take it out of its inventory and put it into ours.
Then we click on tunic guy, who accepts the item.
And there's our reward. If anything in your game does not work the same way as what's shown here, something's wrong with the quest file.
A few notes about how this works:
1. Always, always put the "give item ITEM to ENEMY" in the quest start-up section. It cannot accept quest conditions, so don't try a "pick one" scenario where you let the game choose between three different enemies and you give the item to one of them. It will not work.
2. "toting" is only compatible with clicking on an NPC. We may find more sophisticated ways of mixing item possession with other quest conditions, but for now, "toting" only matters in conjunction with clicking on a quest NPC.
And that's tutorial five on making quests in the Vengeance build.
If you want, you can try to experiment with trying to place an item on the ground somewhere. This inherently has quest actions built in, such that if you click on the object, it'll be put into your inventory. It's equally compatible with the "toting" condition. As an example, take a look at a section of a sample quest:
Code: Select all
Person _questgiver_ group Questor male
Item _clothes_ mens_clothing
Place _res_ local house2
Clock _timer_ 00:20
-- Quest start-up:
start timer _timer_
place item _clothes_ at _res_
Not all quest objects work well being placed on the ground. Some weapons are simply invisible, so if you know where they are and click on them they'll enter your inventory, but that's asking too much of an ordinary player. The mens_clothing variable will always be visible, so start with that if you want to test it.
Last edited by Jay_H on Fri Nov 24, 2017 5:33 am, edited 1 time in total.
- Interkarma
- Posts: 7251
- Joined: Sun Mar 22, 2015 1:51 am
Re: Jay_H's quest writing tutorial: Vengeance build
Great addition Jay!