A few weeks ago I encouraged you to explore Modern Algebra’s Quest Journal to its fullest. We had a demo quest:
Piper has asked Peter Player to pack a peck of peppered pickles, but he’ll have to pick them from a pickle tree first. Piper estimates that a peck could hold ten pickles, so he’s asked Peter to go into the pickle forest and pick 10 pickles.
I issued two challenges. They were:
1) When Peter Player arrives at the pickle forest, he finds a sentient pickle tree that offers him a deal. Pick no pickles, and take instead 10 rotten pickles back to Piper. Tell her they are freshly picked and she’ll get sick, but it will save the pickle tree’s pickles. How might you change the description of Objective in our quest log to reflect this new option and change in circumstance?
2) Piper’s penchant for pickles is insatiable. While she’ll give you a potion for 10 pickles, the rewards will be much better for 20, 30, or even 40 pickles. How might we display all of the possibilities in the Quest Log?
Let’s see what we can do!
Particularly with the likes of Fable, Mass Effect, and Skyrim, the “choose your own adventure” style of playing has all but replaced Go Here, Do That. While we can’t talk about making an open world and ethics system all in one post, we can certainly get an element of that – giving players a moral dilemma in one quest. Here, does the player help Piper or the Pickle Tree?
Once receiving the Pickle Tree’s plea, we don’t want to complete the objective “get 10 pickles” because, well, you haven’t. We also don’t want to fail it – you can still do it. So what? Let’s change the objectivewith a simple script call. In addition to revealing, failing, and all that jazz, we can change a quest dynamically, like so:
quest(1).objectives= “Pick \\V pickles or bring the rotten pickles to Piper”
We might also change a few other things at this point, so that the journal better reflects what’s going on.
Where a game designer can get 1 hour out of a quest, he should aim to get 10,000, right? We may not be making an MMO, but that’s no reason to prevent our player from picking and peppering as many pickles Piper can peck. This script allows us to use strings in the reward section, and that’s exactly what we’ll need to make this work. For each reward, type the following:
[:string, ICONID, “objective”, “reward”]
In that, replace ICONID with the icon you’d like to use, objective with what you’d like the player to do for that tier, and reward with the reward. Something like this:
When we play the game, we’ll get a quest journal that looks like this:
While Modern Algebra’s script can handle distribution of quest rewards, in complicated circumstances like these it’s always best to distribute them manually yourself. Happy pickling!