Page 1 of 3

New Quest actions - enhancing classic

Posted: Fri May 18, 2018 3:13 pm
by Hazelnut
Before going AWOL I was working on a new quest action to test a skill level intended to give quest authors a way to have quests react to character skills. In fact I completed the code for the action but didn't know where it should go. I'd like to discuss where enhancement quest actions should go. As I see it there are 2 options:
  • Add them to main DFU codebase so they can be used by any quest authors.
  • Require them to be added in mods to keep DFU 'pure', some quests will require action mod to be present.
Are there any other ways to go here? Interkarma, you had any thoughts re this?

EDIT: I actually thought I had lost this code somehow... but just found it on my laptop. :)

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 5:32 pm
by Al-Khwarizmi
I like this idea, as it would allow creating quests that make language skills more useful.

For example, maybe if you know harpy language you can bribe harpies to give you something that otherwise would require a hard dungeon crawl.

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 5:37 pm
by Jay_H
Yes, this will be extremely cool. I can see the plans unfolding right now. I'll let everyone else talk now :D

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 6:41 pm
by Hazelnut
Jay_H wrote: Fri May 18, 2018 5:37 pm Yes, this will be extremely cool. I can see the plans unfolding right now. I'll let everyone else talk now :D
You knew I'd get to this though right? After we discussed stuff... :)

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 6:54 pm
by Jay_H
I hold no one to any expectation, myself being the prime example :) I'm very happy this can be a part of the system but I don't want anyone to put DFU as a higher priority than real-life matters.

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 7:22 pm
by Interkarma
If you want to make it part of a mod, there's an event in QuestMachine when actions are to be registered. Capture that event and register your action like the others. Custom effects for the EntityEffectBroker will work in a similar way when I'm ready to open this up.

If a quest action has universal use (as this one would), I don't mind if you want to add it to core either. Just send me a PR when ready. :)

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 7:40 pm
by Hazelnut
Interkarma wrote: Fri May 18, 2018 7:22 pm If a quest action has universal use (as this one would), I don't mind if you want to add it to core either. Just send me a PR when ready. :)
Excellent I was hoping you would say that.

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 9:17 pm
by Hazelnut
Jay_H wrote: Fri May 18, 2018 6:54 pm I hold no one to any expectation, myself being the prime example :) I'm very happy this can be a part of the system but I don't want anyone to put DFU as a higher priority than real-life matters.
Nah, I'm good. Just doing little piddly tasks for DFU as I feel like it.

Anyway, are you sitting down Jay?

PR submitted. :D

BTW I've tested it using ARCH001 quest, you can see the changes in teh repo. Once you've had time to wrap your head and start to play I'd like to know if I used it in the optimal way. Maybe feels clumsy to a programmer because there's no if and you seem to need to create tasks for each condition. Actually it's quite like some modern event/action driven programming in that respect.

Re: New Quest actions - enhancing classic

Posted: Fri May 18, 2018 9:42 pm
by Jay_H
EXCELLENT! I'm not already dancing because I can't clone DFU from git; Linux Unity is sort of hobbled for me :lol: I'll have to wait for new builds. I already have a few ideas in mind on how to use this.

This'll open up a looot of new doors! I know you also had some ideas on the backburner for the Archaeologists, so feel free to write them out when you have a chance.

EDIT: Good heavens, the parsing for this is wonderful. I'm going to see how much of this weekend I can dedicate to this.

I'm wondering if (later on down the road!) a random roll can be made for quest purposes; for example, a roll between 25 and 35 running skill, and if your character exceeds the roll amount, the event flag is triggered. That's future engineering though, if it's a good idea at all.

EDIT2: Now I'm wondering. Can this only be used once per quest event, or multiple times? Here's what I mean. In DFU, if you have a "killed [monster]" condition, like so:

_victory_ task:
killed _rogue_
killed _imp_
killed _bear_

The Victory condition is triggered for any of the three deaths rather than all. Would the same be true with skill check conditions, or if I put multiple skill checks, would they all have to be satisfied before the event fires?

Re: New Quest actions - enhancing classic

Posted: Sat May 19, 2018 10:10 am
by Hazelnut
Interkarma has suggested the syntax should change to:

Code: Select all

when skill Medical is at least 40
so I will change it to this.