Custom quest support

For all talk about quests. Creating, testing, bugs, and development progress.
User avatar
Interkarma
Posts: 3625
Joined: Sun Mar 22, 2015 1:51 am

Re: Custom quest support

Post by Interkarma » Thu Aug 16, 2018 1:42 am

It might be a parser error based on something unexpected/unhandled in the source. Can you please provide full source of the quest and I'll take a look.

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

Re: Custom quest support

Post by Jay_H » Thu Aug 16, 2018 1:56 am

Try over 130 all-new quests in the first Daggerfall Unity Quest Pack.

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

Re: Custom quest support

Post by Interkarma » Thu Aug 16, 2018 2:15 am

Problem here is a leading space before the CRLF on line 61 (at the end of message 1030). The parser isn't trimming the start of lines when detecting end of message block. You can fix now by just removing leading space on line 61 (tested).

Unfortunately this isn't as easy one to fix in the parser, as the sequence of "<space><crlf>" is an expected part of a continuing message block. The use of this sequence is used when injecting an empty line part-way through a message block.

In this case, the absence of an empty line causes the message block to overflow as message 1030 is the last message block in the QRC section. What I'll do instead is add another end of stream check when reading message blocks, which should also catch this issue.

Edit: Fix for this is on git now using a simple bounds check to make sure a leading space can't overflow lines array when missing at empty line at end of final message block in QRC section.

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

Re: Custom quest support

Post by Jay_H » Thu Aug 16, 2018 4:30 am

Ah, well. I was happy to alter the quest file instead, but you beat me. Thanks Interkarma.
Try over 130 all-new quests in the first Daggerfall Unity Quest Pack.

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

Re: Custom quest support

Post by Interkarma » Thu Aug 16, 2018 4:44 am

No worries. :) Still edit the quest file for now though, as this change might not land in Live Builds until the release after the next one. I was running new builds when I fixed this, so change wouldn't have made it.

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

Re: Custom quest support

Post by Jay_H » Tue Aug 21, 2018 10:32 pm

I tried troubleshooting this one myself, but to no avail. Quest log says this, and Player log doesn't expound on it:

Code: Select all

Parsing quest JHTP005.txt
Parsing quest JHTP005.txt FAILED!
SplitField() encountered invalid number of results.
Here's the quest text. Any idea what's causing this error?
Try over 130 all-new quests in the first Daggerfall Unity Quest Pack.

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

Re: Custom quest support

Post by Interkarma » Tue Aug 21, 2018 11:49 pm

This was a fun one to track down. The problem is this line:

Code: Select all

QuestorPostFailure:  [1009]
The static message tag is case-sensitive and should be "QuestorPostfailure" instead. I used this casing as that is what's output by TEMPLATE.

I've now added some alternate casings to table so that "QuestorPostFailure" will be accepted in future also, and added a more helpful error message. For now, you should be able to fix by just changing casing.

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

Re: Custom quest support

Post by Jay_H » Wed Aug 22, 2018 12:18 am

Yes, it's running now with that fix. Thanks Interkarma.
Try over 130 all-new quests in the first Daggerfall Unity Quest Pack.

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

Re: Custom quest support

Post by Jay_H » Sat Sep 08, 2018 8:32 pm

I'm trying to make a multiquest campaign for the Thieves Guild, and the first three steps are going just fine. It's a sequence of quests named JHTG0#X.txt, going 0, 1 and 2 and so on. For some reason I can't get JHTG03X to start, and no log provides information why.

Here's the relevant quest trigger:

Code: Select all

_victory_ task:
    when _close_ and _talk_
    give pc _reward_
    start quest JHTG03X
    end quest
This is my Thieves Guild quest list:

Code: Select all

schema: *name, group, membership, minRep, notes

JHTG00X, GeneralPopulace, M, 0,
JHTG01X, GeneralPopulace, P, 0, offered via JHTG00X
JHTG02X, GeneralPopulace, P, 0, offered via JHTG01X
JHTG03X, GeneralPopulace, P, 0, offered via JHTG02X
I've attached a save at the time the change should happen.
Attachments
SAVE7.zip
No Advance
(103.07 KiB) Downloaded 10 times
Last edited by Jay_H on Sat Sep 08, 2018 9:59 pm, edited 1 time in total.
Try over 130 all-new quests in the first Daggerfall Unity Quest Pack.

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

Re: Custom quest support

Post by Interkarma » Sat Sep 08, 2018 9:10 pm

Does JHTG03X start if you click an NPC then use "startquest JHTG03X" from console directly?

Post Reply