Character Quest Motives?

I think I finally figured out what was missing with my procedural quest generator. Now I’d like to ask for your help.

The quest generator produces very mechanical quests: Rats in the Innkeeper’s cellar? “Kill 5 Rats.” Painting in the public museum and not in the Corrupt Art Collector’s vault? “Steal the Painting.” Black Knight killed the Mayor’s son? “Kill the Black Knight.”

It also uses a planner to chain actions – “Collect hemlock and mandrake. Craft them into poison. Acquire a guard uniform. Infiltrate the castle. Poison the king.” – more interesting, but still mechanical.

Dynamic text templates based on the quest-giver’s traits and the target add some variety:

  • Template: “{Hello}! {Kill} {TargetCount} {TargetDescriptor} {Target}”
  • Inkeeper: “Hi! Exterminate 5 annoying rats.”
  • Pirate: “Ahoy! Gut 5 scurvy mutineers.”

…a little more interesting, but still mechanical – do this, do that, receive a reward.

I spent far too long trying to devise more-interesting actions before realizing that all stories break down into nothing but mechanical actions (for the most part*).

It’s the motive for the actions that make a quest interesting. (If you disagree, please let me know why!)

(FWIW, I did prototype fully hand-written Mad Libs-style quest templates. They let the author convey motives and carefully hand craft sequences of actions, but they’re too cookie-cutter unless you write a gazillion of them.)

Instead, I think the happy medium is to preface the steps with a hand-written motive template. Instead of “Kill the Black Knight,” the quest would be “I’m wracked with grief! The foul Black Knight murdered my beloved son. I won’t rest until his death is avenged. Will you help? + Kill the Black Knight.”

The preface (“I’m wracked with grief… Will you help?”) is chosen from a library of templates based on how well it matches certain qualities (in this case: Quest-giver accepts Violence; Quest-giver is Vindictive; Quest-giver knows Target killed Victim; Quest-giver loves Victim).

It will still be a lot of work for the author to write a library of motive templates. But since motive templates can pair with different action chains, the quests should have adequate variety.

What are interesting motive templates?

Here are some I’ve come up with:

  • Protect the Helpless: (Quest-giver abhors Violence; Quest-giver likes Target; Quest-giver is more powerful than Target; Target is threatened)

  • Eye for an Eye: (Quest-giver is Vindictive; Target did deed that harmed Victim; Quest-giver likes Victim)

  • Revenge for Murder: (Same qualities as above, plus Target killed Victim; this template has more-specific text referencing murder)

  • Uphold the Law: (Quest-giver values Order; Target did deed that defies or threatens Order)

  • Woo an Unrequited Lover: (Quest-giver loves Target; Target dislikes Quest-giver)

  • Frame a Political Rival: (Quest-giver is Political; Quest-Giver is Devious; Quest-Giver dislikes Target)

Any other ideas come to mind?


  • Dialogue-based quests (e.g., talk a suicidal jumper off a ledge) are beyond the current scope of this generator.
6 Likes

This is really insightful.

Don’t have any suggestions atm, but I’m really interested to see where you take this.

Also interested in how you generate out the conditions such that they make sense (if you’ve gotten to this point).

1 Like

The conditions are all implemented.

Most of them just use Love/Hate. “Abhors Violence”, “Is Vindictive”, “Values Order” are personality traits. “Target killed Victim” is a deed memory. “Quest-giver is more powerful than Target” is a simple power level function. For the quest generator plugin, I’ve also written a rudimentary stand-in for Love/Hate so it isn’t required.

The rest are built into the generator in the form of “quest areas” and “happiness influences”. Rats can be in the Innkeeper’s Cellar quest area. Each rat has a happiness influence that makes quest area observers (such as the Innkeeper) unhappy. If they reduce happiness and are more powerful than the Innkeeper (e.g., an Ogre), they’re a threat. If there’s grain in the cellar, the grain can have a lower power level than the rats, thus they’re threatened by the rats.

To go along with some of the things we talked about and the possibility of integration with other products:

Companion to Emerald Animal AI:
Cull the predators: The [predator name] population has grown to an unacceptable number threatening not only our forests but also our livestock, families, and crops. Please help us thin these numbers by slaying and delivering [whatever harvested item from predators - pelts, meat, etc] to [whatever village crafter would use those items]

Protect the forests: (similar to above but just a kill x number of predators)

Grow the herd: Due to recent growth in numbers of [predator], the [prey] population has dwindled. We were able to capture some healthy males and females so we could help protect and increase their numbers. Please take these [number] [prey] and safely release them into the wild. You may have to watch once you release them to ensure they go safely on their way.

Other things might be more specific village support type collection quests. Herbs, meats, etc for the village cook. Raise livestock for the butcher. Raise crops for the cook. Mine ore for the blacksmith. Collect skins/pelts for the leatherworker. Harvest trees for the carpenter. Collect artifacts for the historian. etc.

I think for a lot of things, it will be difficult to come up with a generic motive since a lot of what can make a quest interesting is backstory. Generally the back story is going to be game and lore specific. I think mainly if you give us the tool that we can plug in our own backstories/motives, that will be the key thing. Give us the tool and examples and we should be able to build a library off of that based off of our world’s history, factions that are in friction with each other, characters or clans that are troublesome that exhibit certain behaviors, etc.

Loving seeing more about Quest Machine!

[Oh, the other ideas were based off of @AdamGoodrich 's Gaia. We have talked about the possibility of seed tracking when plants/trees are spawned but I think it might be something that will come down the road if he chooses to implement it. Also, guess I’m not 100% sure where @BHS stands on the tracking animal spawns yet either… Something that was suggested but not sure it has been implemented or made it to the road map… heh crosses fingers for both products :stuck_out_tongue: ]

1 Like

Thanks! I’m going to follow your suggestion and focus mainly on making it easy for authors like you to write their own game-specific motives, actions, and dialects. (I use “dialect” loosely here to mean vocabulary choices.)

Motives aren’t tied to specific actions. To take one of your suggestions, the motive would be more like this:

  • Cull the predators: The [predator name] population has grown to an unacceptable number threatening not only our forests but also our livestock, families, and crops. Please help us thin these numbers.

Depending on factors such as the quest-giver’s personality traits, the associated action(s) could be “kill [n] [predators]” or “bring back the [drop-loot] from [n] [predators]” or even “use this Polymorph-to-Chickens Wand on [n] [predators]”. (Maybe a wizard is against killing but doesn’t mind if you turn them all into chickens.)

2 Likes

lol Brilliant! I love the sound of it! And I’m assuming using a combination of Quest Machine / Love/Hate (for those who have it - although everyone should! heheh), that rewards could be different based on player popularity with the quest-giver / village faction / etc as well?

Sorry… Question was a bit off topic from the motive part. Back on-topic, so the motive is basically the problem requiring an action to be performed and not necessarily the required action to be performed, if I’m understanding correctly. Got it… Loving the sound of this system more and more with every bit of info you release!

How about Finish a Project? Quest-giver has something they’re working on (I’ll let you figure out what attributes that implies), but needs help from the player to finish it (gather ingredients or remove obstacle).

Impress the People — quest-giver desires to increase his reputation (for political gain or just because they have a big ego).

Atonement — quest-giver feels terribly guilty about something, and wants to atone (either by punishing himself in some way, or by somehow making it up to whoever they wronged before).

Good ol’ fashioned Profit — quest-giver wants to make money, and needs the player’s help (delivery jobs, ingredient-gathering, etc.).

Divine Direction — quest-giver believes a god has spoken to them directly, or otherwise given them some goal they must accomplish.

Good Prank — quest-giver thinks they’re funny, and wants to pull off a joke on someone, with the player’s help.

3 Likes

Just throwing these common quest ideas out there, to be sure they’re covered …

Steal artifact or Recover stolen artifact
Find something or Deliver something
Abduct someone or Rescue someone
Attack someone or Repel attackers
Destroy something or Protect something

As for motives, these can include:

Obtain a cure / food / other necessity for someone else (altruism)
Clear my name
Eliminate my rival
Foil my rival’s plans
Help a faction become more powerful
Act to make a faction less powerful

2 Likes

Sounds great!

I also would like to see ones that give player characters a job as well as the wonderful ones above, such as:

Gather something.
Make something
Deliver something
Do something (sing a song, dance, play the flute, cheer up, etc.)

Actually, it is best to let us make our own and give us the templates to do so. There will be so many different ideas!

2 Likes

If you are tracking relationship webs between players & npc’s you could have interlocking ones depending on if the player has met an npc, the level of relationship with them, whether they have done any quests that inter relate to this npc. You could monitor the level of attachment to people, places & things & structure/word the quests around the strength of the connections. This would let you have things like helping a neighbour do house repairs, helping the village form a militia against wolves (the trained militia can then maintain safety against smaller packs when the player isn’t there but will take losses & or injuries which means maybe the player can help do harvesting etc). As the village prospers from being safe the player might be offered militia set up opportunities in other areas. Does this lead to something akin to a standing army loyal to the player? Is that a threat to the current rulers? Do corrupt officials in the villages try to use the militia to gradually expand their rule via small objectives that seem just but add up to corruption? Does the player form a flying squad that protects the land between the villages & lead them until they are eventually able to lead themselves?..

Interesting concepts will be in this thread, I’m looking forward to reading them all.

2 Likes

A variant on the abduction / rescue theme would be to “find and recover the escaped prisoner.”

2 Likes

@tedthebug , I bet if you used this with Love/Hate, another of Tony’s assets, you could do just that. :slight_smile:

Tony has an asset called Love/Hate (https://www.assetstore.unity3d.com/en/#!/content/33063) that is a relationship system. If you had that along with this new system, the relationship tracking solution would be there to do this part. Since that system exists, you would probably need it as a companion product to deal with the relationship but I think from the way he described the interaction in past posts, this kind of stuff will be possible.

EDIT: lol… Talk about timing @Teila ! lol

1 Like

damn, I should read peoples tags. It seems more possible now than when I typed it.

2 Likes

Yup, the idea is that Love/Hate can provide the social context to help generate quests. I’ve designed it so you can still inject social data without Love/Hate if that’s the way you want to go. Same with the Dialogue System, which can provide the interface for quest conversations and quest tracking but isn’t required.

Thanks, everyone, for the fantastic motive ideas. You’re all awesome! (If any more motive ideas come to you, please post!)

To address Teila’s post, you can also define your own actions, which are the “to do” parts of a quest such as “gather something” and “make something,” whereas the motive is the reason why the quest-giver wants them done.

You can also define your own happiness influences, which specify how the presence of quest entities in certain quest areas (e.g., rats in the cellar) affect the happiness of a specific class of quest-givers (e.g., the innkeeper that owns the cellar).

BTW, I’m open to suggestions for a better term than “happiness influence.” The idea of happiness comes from utility-based AI like in The Sims. A sim’s Happiness is a function of its hunger, thirst, socialization, and other internal values. The sim chooses the “smart object” (sandwich, shower, etc.) that advertises that it can best improve the sim’s Happiness. In the quest generator, the quest-giver generates a quest involving one of the objects that most reduce its happiness according to the attributes that influence the quest-giver’s happiness. The term “happiness influence” fits, but it strikes me as kind of clunky.

1 Like

Not necessarily a disagreement, more of a personal enjoyment.
TonyLi are these quests randomly generated? I guess they can be ‘batched’ based on difficulty - type. Go kill 5 rats until reach level 2. After level 2 go kill 10 rats.

I think - for me - what makes quests more/most interesting is there uniqueness. Especially when talking about ‘go kill’ quests. Several Final Fantasy games are good for this, but the one I remember - that I could kind of follow the back end logic - was FF12.
Example: Near the beginning of the game the Cockatrice enemies were pretty common - running around being grind fodder for the player. One of the beginning quests in the game was to go into Cockatrice ‘country’ and collect the feathers or the egg from a red crested Cockatrice. I’m exaggerating a little here because I don’t remember the specifics, but the uniqueness of getting to fight and collect a red crested Cockatrice was a goal ultra pleasing because up to this point the player had not encountered a red crested Cockatrice.
So the grind required to get to the area to perform the quest was nearly invisible because I was after the red crested Cockatrice. And the red crested Cockatrice was unique in the sense it was more difficult to fight, More HP, more aggressive, and had a unique strong attack etc etc.
Additionally for me what would be cool is if the unique enemy has a different routine (set of animations) compared to the normal Cockatrice encountered up to that point.

Replace the Cockatrice above with one of your Rats, but give him green eyes and a spike tail, make it unique. Manged Green Eyed Rat. :hushed:
I’d much rather go on this quest than a quest to kill 20 regular rats. But it’s actually the same quest, to get to the Manged Green Eyed Rat I’d have to go through 20 regular rats, but the end goal is a unique enemy.

This seems out of scope - but thought I’d chime in on how FF12’s quest system and several other games have done this and it stands out to me, that these one off enemies have always made quests more interesting.

1 Like

As an old The Sims fan, I love the Happiness influence. The fact that the NPCs actually choose in order to increase their happiness is so amazing. I can’t wait to see it in action. :slight_smile:

You could use Contentment, Satisfaction, or Well-Being. I think all would work including Happiness.

1 Like

Are these quests that would work in a generator? If they were, and they might be, why not just have the unique enemy be the reward for that quest? Kill the Manged Green Eyed Rat trigger the arrival of the Unique Enemy for whatever reason you invent. :slight_smile: Not sure I see the uniqueness of this though since almost every game I have played in the past, not sure about current games, has the boss guy that you get to kill after killing all the lame minions.

I think the uniqueness of Tony’s system is that the quests are ours to customize and that they are dynamic, ever changing depending on the quest giver and if you use Love/Hate, the quest taker’s relationship with the quest giver and/or reputation in the community.

So, every quest will be slightly different and if you have 500 players, each player will have a different experience.

That is so cool. :slight_smile:

1 Like

I’m not sure Teila, I think so - because these were not part of the regular quest lines. More like grind quests, so possibly random, but with the extra level of detail with the unique enemy characters.
I guess my point was - this is neat when grinding - which is a customary game play - for this type of system imo.
I have not used Tony’s system so just ignore any non-relevant suggestions. :slight_smile:

Yes this is true, I agree. But this was not like that linear type of delivery. More like sub-mini bosses during level up grinding.

Now I might be getting off track - I seem to have had a memory spark - and remember these might have been designed monster hunter type quests within the FF universe.
Please disregard. :eyes:

1 Like

Some quests, instead of given straightforwardly, could be based around clues.

For example:

Mythic ritual: “Some villagers believe that if you jump three times under a dead tree somewhere around the village something bad will happen. But I don’t believe in those superstitions.”

Fragmented Map: “I once was excited to pursue this treasure, but the only thing I got was this teared map. Half of it is missing. It’s useless. Take it if you want, just don’t complain to me later that you lost your time.”

Person description: “I miss my old love. I always complained that she liked to wear that battered purple dress… Perhaps someday I will meet her again. Oh well.”

Hidden path: “When I was a child, my father used to tell me that if I saw a trail of small red stones, never, ever, follow it. Either way, I never found one.”

5 Likes