Quest Machine Conditionals and Journal Help

Announcements, support questions, and discussion for Quest Machine.
Post Reply
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Quest Machine Conditionals and Journal Help

Post by CruttMutt »

Hi again! These requests are specific to Quest Machine and I hope you can help where I am stuck:

1) Is there an option to not send a quest to the viewable Journal at all? I have some almost store like quests that I would not like recorded. When I leave the sections blank it still leaves a space where it would be.

2) Intergrating with Inventory Engine, I have a redoable quest similar to a shop. I have an Offer Condition as "Have at least x Coin to Offer" and on success "Remove x Coin" + "Add x Item" and they work fine, except once I have gone below the "Have at least x Coin" amount, I can still keep accepting the quest so long as at some point I had "x coin". So when you keep accepting you keep getting more of "x item" for free so long as you're out of coins. Is the conditional only accounted for once?

3) The "Offer Conditions Unmet" Text section has not been displaying my text and defaults to "Offerable Quests UI Contents > Body Text", even if it's left blank. Is there an option I should have checked?

I have been looking through the tutorials and documentation as best I can but struggled to find the answer to these myself.

Thank you and sorry for all the questions!

Cheers.
User avatar
Tony Li
Posts: 22108
Joined: Thu Jul 18, 2013 1:27 pm

Re: Quest Machine Conditionals and Journal Help

Post by Tony Li »

Hi,
CruttMutt wrote: Fri Aug 28, 2020 9:21 am1) Is there an option to not send a quest to the viewable Journal at all? I have some almost store like quests that I would not like recorded. When I leave the sections blank it still leaves a space where it would be.
Quest Machine currently assumes that each quest will have some kind of journal content, so it leaves a blank if there isn't any. It's possible to make a subclass to override this behavior. However, I can make a note to add support for that in the next update. How are you marking the quest as unviewable?
CruttMutt wrote: Fri Aug 28, 2020 9:21 am2) Intergrating with Inventory Engine, I have a redoable quest similar to a shop. I have an Offer Condition as "Have at least x Coin to Offer" and on success "Remove x Coin" + "Add x Item" and they work fine, except once I have gone below the "Have at least x Coin" amount, I can still keep accepting the quest so long as at some point I had "x coin". So when you keep accepting you keep getting more of "x item" for free so long as you're out of coins. Is the conditional only accounted for once?
Once a node is true, it stays true unless you set it back to active. Add another node that checks if the number of coins have dropped below x. If so, step the quest back by reverting some nodes.

Here's an example from Inventory Pro. The same idea applies to Inventory Engine:

Image

This was auto-generated by Quest Machine's procedural quest generator, but you can do the same thing with hand-written quests. When the "Fetch 5 Apples" node becomes successful, it activates two nodes: "Talk to Villager" and "Revert Fetch 5".

The "Revert Fetch 5" node checks if the player has less than 5 apples. If so, it sets the nodes back to a state where the "Fetch 5 Apples" node is active again. Since it was auto-generated, the node IDs shown in the Actions section aren't as human-readable as they could be if you made the quest by hand. but it should convey the idea. The node whose ID is "1" is the "Fetch 5 Apples" node, BTW. In your quest, count coins instead of apples.

(Don't take that image as an endorsement of Inventory Pro. It's just a screenshot that I already had on hand. Inventory Engine is a good choice.)
CruttMutt wrote: Fri Aug 28, 2020 9:21 am3) The "Offer Conditions Unmet" Text section has not been displaying my text and defaults to "Offerable Quests UI Contents > Body Text", even if it's left blank. Is there an option I should have checked?
Currently it should show the "No Quests UI Contents". If it shows "Offerable Quests UI Contents" then it thinks at least one quest is offerable -- perhaps one of those hidden store quests?

Anyway, here's a patch:

QM_UnofferableTextPatch_2020-08-28.unitypackage

If the quest giver only has unofferable quests, and if one of those quests has unofferable text, then it will show that text instead of the "No Quests UI Contents".
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Re: Quest Machine Conditionals and Journal Help

Post by CruttMutt »

Thank you!!
I will try all of these today and get back to you. Also great news about having it noted for the update! With a little imagination, QM has so much potential to be used for so many things outsides of quests too so it would be great to be able to use it with the option of journal logging. Right now I am not marking them, just not writing anything in it and ignoring the gaps for now.

All the other things sounds perfectly reasonable too! Thanks for the great guidance and assets.
User avatar
Tony Li
Posts: 22108
Joined: Thu Jul 18, 2013 1:27 pm

Re: Quest Machine Conditionals and Journal Help

Post by Tony Li »

Hi,
CruttMutt wrote: Fri Aug 28, 2020 11:39 pmRight now I am not marking them, just not writing anything in it and ignoring the gaps for now.
Quests always have a title. And titles show up in the quest selection panel (the left panel in the example journal prefab). Are you leaving the title blank? Or do you want a title to appear for journal logs, but you don't want any details to appear in the quest details panel?
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Re: Quest Machine Conditionals and Journal Help

Post by CruttMutt »

Ideally just not to appear in the journal at all. So I have nothing in there, including the quest title at this moment as I don't want to be able to see it in the Journal at all. No name, nothing. Like it's not an officially journal logged quest.

Almost like.. if I only wanted the main quest quests to be logged in the quest journal but a small "kill this many of x" or a procedural quest does not need to be logged in the Journal at all. They just take up space and if I wanted the Journal to be used as a way to keep track of the story, these little ones just get in the way. And really a player does not need to see them. If that makes sense :D
User avatar
Tony Li
Posts: 22108
Joined: Thu Jul 18, 2013 1:27 pm

Re: Quest Machine Conditionals and Journal Help

Post by Tony Li »

Thanks for the explanation. I'll give this some thought. The best way to handle this may be to add something in the next release. You could put these types of quests in their own group, maybe named "Hidden" or something like that. Then make short subclasses of UnityUIQuestJournalUI and UnityUIQuestHUD that don't show quests in the Hidden group.
Post Reply