Daggerfall Unity 0.4.x - "DragonBreak" Update

For all talk about quest development - creation, testing, and quest system.
Post Reply
User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by Interkarma »

Jay_H wrote:I have to say I've been waiting for the teleport quest action for awhile. I have some plans for it :D
I've implemented both variants of the teleport action now. The first variant is common to dungeon traps in the classic quest scripts. It teleports player to a quest marker inside target dungeon.

Code: Select all

Place _mondung_ remote dungeon
teleport pc to _mondung_
The second variant is only used by Sx016 in classic scripts, but could be used to any dungeon. It's best used when you want to position player to a specific marker inside a specific dungeon. Just be sure to use a valid marker index.

Code: Select all

Place _shedungent_ permanent Shedungent1
transfer pc inside _shedungent_ marker 0
I've prepared a small example quest "__demo13" which teleports player to a random dungeon and harasses them with harpies.

Because the teleport actions drop player onto a quest spawn marker, it might not be wise to script a "kill the monster / find the NPC" styled quest post-teleport as player might end up on the same marker position. But kill quota quests, escape quests, item hunts, etc. won't have this limitation.

I tried to find another solution to using quest markers, but there were no other sensible, reliable markers to depend upon here. I'm fairly sure this is what classic Daggerfall is using as well, but happy to be wrong. Can always improve on this action later.

CM August
Posts: 86
Joined: Fri Jul 14, 2017 11:11 am

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by CM August »

Outstanding work putting all this together. :) Playing through it as naturally as possible.

After "Morgiah's Wedding" a courier hands me a parchment that cannot be read - an engagement letter according to the quest script. Is this already known and accounted for?

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

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by Interkarma »

The engagement invitation should be readable. It's a non-essential flavour item, fortunately.

If you still have the save game with non-functioning letter, would you be able to send it over to me? Otherwise it's not hard for me to replay that and see why it's breaking now. This definitely worked OK on my earlier tests, but I could always have done something later that broke it. :)

CM August
Posts: 86
Joined: Fri Jul 14, 2017 11:11 am

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by CM August »

Yeah, not being able to read it doesn't prevent me from continuing with the main quest, so that's good. I've sent the files along via Gmail.

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

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by Interkarma »

Thank you, will look at save in my next session.

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

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by Interkarma »

CM August wrote:Outstanding work putting all this together. :) Playing through it as naturally as possible.

After "Morgiah's Wedding" a courier hands me a parchment that cannot be read - an engagement letter according to the quest script. Is this already known and accounted for?
I've worked out why this letter breaks now, but functioned normally when I tested earlier in the process. This particular quest calls "make item permanent" on the letter. At the time I tested, this action had not been implemented. Letter worked just like any other. After implementing "make item permanent" later in the process, the letter is now stripped of quest status and no longer carries links to quest text.

What I'll need to do is upgrade item class to carry a copy of letter text so they can be made permanent. This impacts a few other systems (like inventory, save/load, etc.). My feeling right now is just to remove the script action that makes letter permanent and let it expire out like any other letter after quest tombstone period ends.

I'm not aware of any other letters that are made permanent. Is this solution acceptable for now, or do you feel it's important for players to keep this letter as a keepsake for RP purposes?

CM August
Posts: 86
Joined: Fri Jul 14, 2017 11:11 am

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by CM August »

So that's why it happened. I think your latter solution is acceptable - at least for now, as you say. At least it would still be consistent with the behaviour of other letters. The important thing is that the player has a chance to read the letter when he receives it, before it mysteriously vanishes from his inventory at a later date. :)

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

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by Interkarma »

New Daggerfall Unity Live Builds are now available for DragonBreak #89.

This is mostly a bug-fix build but does have some new features. Here's a list of changes.
  • Fixed exception in QuestMachine that can happen based on execution order of scripts.
  • Allofich : Castle guards now go hostile when entering forbidden parts of castles, opening forbidden doors, assaulting guards, or failing a pick-pocket on a guard. This means guards will now attack player when entering Mynisera's quarters as per classic, so watch out!
  • Allofich : Attempting to open a forbidden door will show attached flavour text to warn player. Door will only open on second click.
  • Pending letters are now offered when player attempts to travel or rest from a location.
  • Fixed _messenger_/_dispactcher_ mixup in Sx012 text.
  • TheLacus : ModSettings improvements.
  • Fixes to keybind interface. Should no longer suffer from blanking out keys from duplicate bindings. Note that keybind data already affected by this bug will not be fixed until you rebind affected keys or reset to defaults.
  • Implemented "teleport pc to" quest action.
  • Quest actions which throw an exception will now deactivate before throwing exception. This is to prevent endless cascade of errors in output log.
  • Quest debugger is now off by default. Use Shift+Tab to cycle display states.
  • Added support for click to attack. When enabled, just need to click weapon attack button to issue a random attack rather than hold down and drag mouse. Note you will need to wait for attack to complete before you can issue a new attack.

CM August
Posts: 86
Joined: Fri Jul 14, 2017 11:11 am

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by CM August »

Congrats on the new build. :) Looks like a lot of people are excited about the click-to-attack functionality.

I made a few other notes during my playtesting:
  • I have successfully completed the quest "Missing Prince" and received my reward, but the debugger tells me the quest is still running and the entry remains in my journal.
  • I have completed the quest "Concern for Nulfaga" by speaking with Aubk-i and found I could immediately accept the quest "Mynisera's Letters". I did not have to wait several days to receive a letter as the uesp suggests.
Are these quests both working as intended?

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

Re: Daggerfall Unity 0.4.x - "DragonBreak" Update

Post by Interkarma »

Thank you. I genuinely appreciate the time you're taking to test and give me such good feedback. :)

For Sx001 "Missing Prince", the quest should end naturally when player has returned Death Certificate and player is at least level 7. At which point it initiates Sx017 "Wayrest Painting". I'm guessing your character is not level 7 yet, which means the quest remains active until it bootstraps next in sequence. This can be considered working normally, unless you're over level 7 already (then it's probably bugged).

In Sx013 "Mynisera's Letters", this one might be a bug. Player should only be able to click Mynisera to start quest after a clock between 10-20 days has run down. There's a repeating action which clears the click state while clock is active. If you can click Mynisera prior to clock expiry, I'd say the repeating action isn't operating properly. Could I trouble you for a save from before speaking with Mynisera if possible? If you don't have one, that's OK. It doesn't take long to play through myself.

Post Reply