Welcome to the Quest Hub! This new forum is for all discussion around questing in Daggerfall Unity. Please use this forum to discuss writing quests, bugs in quest system or quest scripts, development progress, and so on.
Following is a primer on the quest system in Daggerfall Unity.
Daggerfall Unity has adopted Donald Tipton's scripting format created for the Template v1.11 quest decompiler/compiler. As Bethesda never released official quest editing tools, Template has become the de facto standard for creating quests in Daggerfall. Template's scripting language is plain-text and mostly easy to understand.
Click here to to download Template v1.11.
Click here to view the Template scripting language documentation online.
Some caveats on Template as a tool:
- Template was created by a community member, it is not an official tool. As such it contains bugs and inaccuracies.
- You will need to run Template in a 16-bit command line (so DOSBox, Win9x, or 32-bit versions of Windows XP/7/etc. which still have the 16-bit command shell available.
- Template's documentation can be confusing sometimes. If you have a question about the scripting language, please create a thread and ask.
- It is theoretically possible to compile the same quest script in both Daggerfall and Daggerfall Unity to compare behaviours. But this can be problematic as Template often cannot re-compile its own decompiled scripts. This means that patience and perseverance is a must for anyone testing script behaviours in classic Daggerfall.
Fortunately, you won't need to touch Template's command-line if you don't want to! All of the quests have already been decompiled for you and are available in source code and builds. But if you want to create new quests or help test questing in Daggerfall Unity, you will need to understand the scripting language from the documentation linked above.
Quest Scripts in Daggerfall Unity
You will find all of the quest scripts already decompiled in the Assets/StreamingAssets/Quests directory. These are just .txt files containing both the QRC and QBN parts of a quest. You can also view these online (ignore .meta files) or find them in the DaggerfallUnity_Data folder of your build.
There are several data tables which link reserved quest symbols back to classic Daggerfall. These can be found in Assets/StreamingAssets/Tables, your DaggerfallUnity_Data folder, or online.
At this time, quests can be launched in one of three ways:
From the FIghters Guild
Visit any Fighters Guild across the Illiac Bay and speak to the usual quest giver. He will provide you with a random quest from a curated pool.
From the Unity Editor
If you're working with Daggerfall Unity's source project, you can set a quest to start automatically from the StartGameBehaviour component. You can even specify a save game to load so everything just starts up where you need it when you hit Play. In the example below, Daggerfall Unity will load game #24 and start quest S0000977.
From The Console
To start a quest inside a running game, open the console with ` (backquote key) and enter command "startquest questname". For example:
Quest System Progress
For a snapshot of quest system development progress, refer to the Quest System Status page.
This page will be updated over time as more actions and conditions are built. If an action or condition has not been started on this page, please do not expect it to work in Daggerfall Unity.
If an action or condition is marked as complete, and still does not function as expected, please create a thread to report this as a bug. At this time, use the Quest Hub to report bugs in quest system or scripts.