Space Game Design
page 2

^ procedural quests were done in Anarchy Online to great effect. It brings a lot to the table and solves your problem of ‘but my friend found him over there’.

Ooh, I just had an idea.

Any given proceedural quest is given out to only a certain number of people (or certain time period), and can only be solved once.
(In this case, “Find target NPC”)

Anyone who has the quest is automatically shoved into a chatgroup with each other, and they can collaborate. As soon as anyone finds the guy, everyone gets the reward for finding him, but the person who found him gets a small bonus. E.g. the quest reward is 500 credits. Participating in the search gets you 500 credits. Finding him first gets you another 10%, 550 credits.

Then that NPC is arrested/whatever and that particular NPC’s name drops off the list of available “find so-and-so” quest parameters (and depending on what happens to him, might get added to a different quest parameter set, e.g. “break target NPC out of prison”).

It’d encourage teamwork, give the illusion of a persistent, ever-changing, world, and not cause quest detail collision (e.g. “I’m looking for X,” “hey so am I, oh found him on planet Q” “I was just there, no dice”) as well as letting quests get “used up” (e.g. someone completes the quest you’re on before you do) without penalizing the player who didn’t complete it (“what do you mean it’s already been completed? I just got that quest! I didn’t even have time to get there!”)

So I could just add myself to as many quests as possible, go watch a movie, and have a bunch of credits from other people solving them? Admittedly, leeches probably wouldn’t (overly) adversely affect others in an MMO world, except perhaps if there were enough that they hogged most of the open quest slots… Which actually brings up another possible problem: presumably, there is a maximum number of quests available at any given time (at some point, it is a practical issue: you only have so much computing resources) — so what if these get “zombified” by a glut of leeches all latching on to quests that no one will bother completing (as they’ll be waiting for one of the others to do it for them)? Some kind of time-out (for users who may not even be playing any more as well as quests that haven’t been worked on for a while) would be desirable: find this person within n gaming days.

Addition: Also, don’t allow users to join a quest after a certain period (once someone has initially accepted the quest), or keep users from joining the quest after someone on the quest has reached a set milestone (e.g., if items I and J and talking to person P is necessary to solve the quest, you could stop taking quest entrants once someone found one of the items or talked to the relevant person). So no one could just get a quest that is solved before they have time to solve it themselves — of course, it would take a bit of work ensuring that such a scenario is viable every time, procedurally (that once one of the milestones are reached, it is still possible for a newcomer to solve it before everyone else — not counting blind luck)…

More: This also brings up a further design consideration. Do you assume that people are going to be adding themselves to as many quests as possible and then concentrating on one (reaping the rewards from others’ work for the additional quests), or assume that whatever quests they have assigned themselves to are actively being undertaken? If levelling and purchasing items are important considerations, this directly affects what the optimal amount is for each (not only XP and currency gained, but levelling requirements and prices).

It would add a bit of a more persistent world flavor for people to for example go after a bounty only to find out that someone beat you there. If you were consistent with these kinds of things then I could see it adding more tension and excitement to taking quests because you don’t have the feeling that you can just get around to it whenever you want.

A simple way to minimise leeching is to give out quest rewards proportional to the amount of work you put into that quest.

So if you’ve just started, and have started collecting objects and solving puzzles, you still get some reward when it is solved, but if you just join then bugger off somewhere, you get no reward as you have put no effort in.

Make the reward system logarithmic, not linear so your rewards rapidly increase as you complete more of the quest, to again compel players to actually work at it if they wish to get actual rewards out.

That’s a nice idea. If you accept a quest and complete the quest it could say “You’re the x person to complete this quest”. If you come 1st, 2nd or 3rd you get an extra bonus prize? After 20 quests have been completed the game changes the quest procedurally into something else? Also add that on to what vikaTae said. However this does generate another problem: What if 1 player accepts a quest, logs out then comes back and it’s a different quest? That’d be really frustrating especially if that player was halfway through.

Make the reward system logarithmic so your rewards rapidly increase as you complete more of the quest

Ummm… if you do that, the amount of rewards you get over time will increase rapidly… and then there will be a point where the curve starts to level off, and players will not have much more incentive to do the quest if they continue helping, because they’re not getting any more money than they’re already getting. Of course, players will then try to find the balance between doing the LEAST work and still getting the MOST rewards. This would be especially possible if you allow the player to do multiple quests.

The different types of curve you could use as reward curves greatly vary. Polynomial, logistic, exponential, logarithmic, and linear. Each has its pros and cons. You might like to try different graphs to find a good reward curve; different reward curve trendlines will have different effects on players.

What if 1 player accepts a quest, logs out then comes back and it’s a different quest? That’d be really frustrating especially if that player was halfway through.

In Realm of the Mad God, quests are formed based on proximity to a “big” enemy. I’m assuming a certain threshold was incorporated though, so you have to walk a certain distance to confront the enemy. Perhaps you could do the same? Because when none of the players participating in the quest are online, the target person to find might go to another planet. You might as well discontinue the quest if the person has a chance of doing that, because goodness knows where the person may have disappeared to. (Unless you allow the players to teleport to a planet where one of their quests are taking place, and so continue where they left off.)

Or the quest could have a time limit before it refreshes and all the information on the target person’s location for example changes. You can’t expect someone who is being tracked down to hang around in the same place for very long.

That’s a good idea. I could tell the players in their quest book or something when the quest is going to end. If the quest has ended and the player is half way through maybe he/she could get a reward on what he/she had done so far.

I’d like to see the opposite be true, as well. Say you have a quest given by NPC A to capture or kill NPC B. Well, NPC B gets wind of the scheme, and starts offering players a quest to take out the forces of NPC A, including of course, the players who have accepted the quest and are now working for NPC A.

You now have two separate quests running, but they’re interlinked, and allow PvP combat between the players on the two different quests, with actual quest rewards for killing off the forces of the other quest.

Hey, do you like games? So do we — that’s what makes Kongregate the best source of free games online. We have thousands upon thousands of free online games, from both one-man indies and large studios, rated and filtered so you can play the best of the best. Read more »