In Quest of the Quest System

Scripted ALFA systems & related tech discussions (ACR)

Moderators: ALFA Administrators, Staff - Technical

User avatar
Wynna
Dungeon Master
Posts: 5734
Joined: Sat Jan 03, 2004 10:09 am
Location: Seattle, WA (PST)

Post by Wynna »

Now I get it! Thank you. But doesn't that mean that if they come back after a reset but before turning in the quest, they'll get to spawn two more critters?
Enjoy the game
User avatar
indio
Ancient Red Dragon
Posts: 2810
Joined: Sat Jan 03, 2004 10:40 am

Post by indio »

AcadiusLost wrote:The upper boundry of the quest should be defined in the local integers set on the spawning triggers. For example...

//! typically defines the target state for quest assignment
ACR_QST_LOWER_STATE = 1

//! typically defines the target state for quest completion
ACR_QST_UPPER_STATE = 5

On a set of 4 scouting triggers (each trigger entry bumps the queststate, no trigger will activate more than once for a PC/party, all 4 must be found to complete the quest, no order requirements). This way none of the triggers will function unless someone has the quest (QuestState=1), but any of the triggers (1-4) are potentially activatable.

1. PC accepts the quest from an NPC (Queststate moves to "1")
2. PC finds a scouting trigger, tagged 03_scout_01 (Queststate moves to "2")
3. PC finds a scouting trigger, tagged 03_scout_04 (Queststate moves to "3")
4. PC finds a scouting trigger, tagged 03_scout_03 (Queststate moves to "4")
5. PC finds a scouting trigger, tagged 03_scout_02 (Queststate moves to "5", which matches ACR_QST_UPPER_STATE, so XP is awarded.)
6. PC returns to report in (NPC set to look for Queststate=5) and gets gold reward (Queststate moves to 6, "Completed" in the journal)

Alternatively, if we wanted to get more complex, say the triggers must be found in a particular order (say, 4,3,2,1), we'd just change the ACR_QST_LOWER_STATE on each as follows:

tag: 03_scout_01
ACR_QST_LOWER_STATE = 4
ACR_QST_UPPER_STATE = 5

tag: 03_scout_02
ACR_QST_LOWER_STATE = 3
ACR_QST_UPPER_STATE = 5

tag: 03_scout_03
ACR_QST_LOWER_STATE = 2
ACR_QST_UPPER_STATE = 5

tag: 03_scout_04
ACR_QST_LOWER_STATE = 1
ACR_QST_UPPER_STATE = 5

This way, at QuestState 1, only trigger 4 will activate for a quest advancement. Finding trigger 4 unlocks trigger 3, and so on. Theoretically we can also put a ACR_QST_MESSAGE on each in this case that nudges the player towards the next in the series, ex "You see a glint of light just up the hill" or "Next stop: High Hold Legion tower".

I would guess in your case described above, that the UpperState on those triggers is set for 5, when you'd rather it be set for 7.
Sticky this thread and rename it AL. Your explanation above will help anyone wanting to use the quest system.
Image
Locked