Advertisement

Brainstorm help on rules for cRPG plot?

Started by April 05, 2001 07:41 PM
52 comments, last by Wavinator 23 years, 2 months ago
The cross/thief problem is not a problem, but an oversight:
it assumes there are no resources to fulfill the thief''s desires. In any properly generated setting there are some instances of each type of resource, so there is no problem. Even the lack of a resource may cause interesting behaviours, because that should lead to the NPCs needing that resource getting bolder and bolder trying to acquire some of it.

But, getting back to mechanics, because that is my forte, and staying with the seven deadly sins as inspiration. Here we go on resources...


  1. Pride(Humility)
    A tough one as far as resources go. Pride would be the belief of being better than everyone else, so a proud NPC would try to assert their superiority over other NPCs and players. Any kind of competition would be a good resource for pride. They will brag a lot too .

  2. Greed(Generosity)
    Greed is the easiest for resources: money! That means actual gold coins, and the value of posessions. Greedy characters are looking to have as much money and valuable posessions as possible. That also means that in our system we need to attach monetary values to objects, between worthless (a potato) and priceless (a three-pound diamond).

  3. Envy(Love)
    Envy is wanting what someone else has, for no other reason than not having it yourself. An envious NPC will try to get what another person has, or at least make sure the other person no longer has it. The only resource you need for this is posessions, and you always have those in more complex games.

  4. Anger(Compassion/Patience)
    Anger does not really have a resource. It''s more of a trigger issue, angry NPCs will be much quicker to act on an impulse. They will take it out on what they perceive to be the cause of their lack of any resource, and use violence to get whatever other resource they''d like to acquire.
    ( eg Anger+Greed = Mugging, Anger+Envy = murder, etc.. )

  5. Lust(Self Control)
    Hrm, in the interest of keeping the PG-13 rating of the forum I''ll leave this to your own imagination

  6. Gluttony(Temperance)
    This will be food, or energy. A gluttonous NPC will try to hoard as much food as possible in the shortest space of time. More tempered NPCs will be calmer about it, and not try to jump the line at the local McGoblin''s .

  7. Sloth(Zeal)
    This will be the spending of energy. A slothful NPC will be loathe to spend a lot of energy if it isn''t absolutely necessary.



I''d like some comments, brainstorms on these resources, because I think it''s a decent idea that might be worth fleshing out.
It's only funny 'till someone gets hurt.And then it's just hilarious.Unless it's you.
quote: Original post by MadKeithV

The cross/thief problem is not a problem, but an oversight:
it assumes there are no resources to fulfill the thief''s desires. In any properly generated setting there are some instances of each type of resource, so there is no problem. Even the lack of a resource may cause interesting behaviours, because that should lead to the NPCs needing that resource getting bolder and bolder trying to acquire some of it.


Yes. I think there should be a kind of translation of resources, though, that is *always* possible. For instance, if there''s no more gold, I''ll take diamonds; no more diamonds, I''ll take silk; etc. etc. right on down to the bare essentials.

quote:
Pride(Humility)
A tough one as far as resources go. Pride would be the belief of being better than everyone else, so a proud NPC would try to assert their superiority over other NPCs and players. Any kind of competition would be a good resource for pride. They will brag a lot too .


Whatever the resource, it has to spark the same kind of strategic struggle as a strategy game. So pride needs to be tied to acts and objects to work in this system.

Ideally, something like pride as a personality driver should lead to things like reckless risk taking, showboating, and insulting people. I say this because we need the personality trait to move the plot forward; i.e., it''s because of the nobleman''s pride that he accepts a dual that will lead to certain death (with the player stepping in, or starting it, or whatever...)

quote: Greed(Generosity)
Greed is the easiest for resources: money! That means actual gold coins, and the value of posessions. Greedy characters are looking to have as much money and valuable posessions as possible. That also means that in our system we need to attach monetary values to objects, between worthless (a potato) and priceless (a three-pound diamond).


Good. It''d be great if again there''s a way to attach value to acts as well: Things like going back for treasure even when doom is looming large; or verbally abusing a poor old lady because she can''t pay the rent...


quote: Envy(Love)
Envy is wanting what someone else has, for no other reason than not having it yourself. An envious NPC will try to get what another person has, or at least make sure the other person no longer has it. The only resource you need for this is posessions, and you always have those in more complex games.


This one I think is rich. I''m wondering if the right approach is to attach some sort of happiness value to people and objects so covetousness becomes a kind of greed. The difference would be that the "monetary value" wouldn''t be readily apparent.

If you have a happiness value, NPCs could accumulate happiness, thus making them targets for an "envy search" among NPCs an NPC knows or encounters.

quote:
Anger(Compassion/Patience)
Anger does not really have a resource. It''s more of a trigger issue, angry NPCs will be much quicker to act on an impulse. They will take it out on what they perceive to be the cause of their lack of any resource, and use violence to get whatever other resource they''d like to acquire.
( eg Anger+Greed = Mugging, Anger+Envy = murder, etc.. )


Yeah, this I''d use as a trigger, but I can also see either imbedding or keeping a list of NPCs that are associated with anger. This would be perfect for the concept of revenge, which is a perennial plot point in much of drama.

quote: Lust(Self Control)
Hrm, in the interest of keeping the PG-13 rating of the forum I''ll leave this to your own imagination


A good place for getting into all sorts of problems!!!!! If this drove behavior, then a possessed NPC would take many risks to get to their goal. This could involve deception, secrecy, betrayal, and even murder. The rebounding shockwave of these deeds could make for great plot!

quote:
Gluttony(Temperance)
This will be food, or energy. A gluttonous NPC will try to hoard as much food as possible in the shortest space of time. More tempered NPCs will be calmer about it, and not try to jump the line at the local McGoblin''s .


This is the classic case of consumption, of which the citizens of rich nations the world over are guilty of. It can be anything , including money. Land. Food. Water. Whatever.

I think we instinctively react negatively when we encounter this kind of devouring, PacMan-like behavior. The deeds for this would acquisition and consumption, and NPCs who engaged in this behavior would do so even at the expense of nature, or their fellow NPCs.

quote:
Sloth(Zeal)
This will be the spending of energy. A slothful NPC will be loathe to spend a lot of energy if it isn''t absolutely necessary.


Acts then need an energy cost associated with them, with a lazy NPC using his meager energy resources as he paths to a goal. If he runs out of energy, he''ll take shortcuts or not bother. Hahaha, come to think of it, this may be the only case where a failure to find your goal would be totally acceptable!!!

Seriously, though, for a good story the NPC will actually need to find the goal every time (with other NPCs and the player affecting / interrupting this). So this NPC would simply do things sloppily. This translates to a reduction of skills at least, so the guard who should be guarding 100% is only doing 50 because she''s lazy.

--------------------
Just waiting for the mothership...
--------------------Just waiting for the mothership...
Advertisement
The 7 deadly sins sound pretty good - I need to study more theology to be able to contribute though.

JSwing
Okay a few thoughts:

1) Characters drive plots, not scenery. Witness shows like Big Brother, the setting is a house, with a few playthings, but still the emphasis is on character interaction. That is how these "random" stories would work (eg. "Hey there was this heroic knight trying to woo the princess with his charm and good naturedness and I she was getting so bored with him so I slipped a mickey into his drink and made off with the princess, easy as pie", not "Hey I was in some church and there was great architecture and stained glass windows which were really pretty")

2) Characters all have 1 basic need in common - THE NEED TO SURVIVE!!! Okay how does this work? For a thief: he likes stealing things to get more money. If he goes around stealing left, right, and center, he''s going to get caught, and hanged, which is BAD for his life expectancy.
Or take the knight in shining armour, sure he could save the princess, but then he''d die. Although in this case, maybe he would risk his life, because his "Compassion" score is so high?

3) Don''t have any "defined" character classes (except maybe King, Queen, etc if your society works that way). Maybe NPC''s get jobs depending on their ideals, but it should be able to have 100% smooth transitions between "good" and "evil". For instance:

You have a guy who is about -20% dodgy. He works in a shop, but e deals in stolen watches, maybe buys a pearl necklace once in a while, etc. Then you have a guy with -80% dodgy, who is a thug for some hitman because he likes to cause pain.

Of course those are generalisations but there should be emphasis on creating Diverse characters, not just "The evil guy" "The maiden" "The knight" "The wise old king" etc etc etc.

Cheers all,
Hey I''ve got a great idea! Let''s act out the NPCs! Well, then, they wouldn''t be NPCs but it will help us get a better perspective of what''s need.

Okay, I''ve read all of the above posts and not only do we have to have NPCs but the system itself. So we should have a DM, say Wavinator.

We will just play normal NPCs and the DM will design a plot. For example, he might "spawn" a prized possession of the king. Maybe someone should play the king. So there will be other people who play the thives and the heroes.

Remember that these are NPCs, so let''s have a stat list.
Class
Alignment
Pride, Greed, Compassion (scale of 1-10)
Skills, Assets

So there, I shall start by being a thief.
Theif
Unlawful/Neutral
Pride = 8
Greed = 4
Compassion = 8
Skills,
Sneaking = 7
Attacking = 5
Talking = 7 (something like your charisma)

Ok, this might seem unrealistic, but I''m a pround theif who ain''t greedy and is kinda compassionate. But if you think about it, theives should be compassionate for they need to want something badly. In my case, I''m probably not be after gold, since I''m not greedy, but after more sentimental possessions.

So now, after we have a few more chracters, and a plot will unfold. And then try to come up with a game mechanics.

When you want to do an action, you must explain why you did it.
For example,
*I sneak into the king''s castle because, my need-to-steal counter is up. This counter is determined by my greed and by the urgency of the actions that affect it*

Hopefully, by the time we''d be through with a plot, we will know more of the game mechanics that is required in such a simulation.

And no, no one should play the player. This is because, the player may see the events but can decide not to change it. Thus, we should try to make a plot that unfolds "correctly" when the player does not wish to change things.

This may be that princesses are killed, and gold might be stolen, but that''s ok if the player doesn''t react, it''s his choice.
quote: Original post by Wavinator

Hey all. Looking for input on a tough design problem. Do you see flaws here? Anything you can add?

Over here we''re trying to come up with a way of doing interactive plots for RPGs. My take on it is that plots can be done like a wargame: NPCs are units and how they behave as they go for goals creates a kind of plot.

Right now I''m trying to figure out the rules.


The Basics

It ain''t Shakespeare we''re going for. We just want a game world where players can see plots in action and participate. Right now I''m not so concerned with making a great story as I am with making a story the player can alter (for better or worse).


RPG Plot Ingredients

I think basic RPG plots would be made of

* NPCs - All the major plot characters. At least one should be a villain.

* Goals - What they want. Influenced by personality, & their current state.

* Actions - What they can use to get them. Thinks like talking, object use and combat. Heavily based on personality and skills/stats.

* Assets - Inventory & whatever weapons/tools the NPC can use. These enhance actions. A sword, for example, enhances the attack action

* Locations - The various "stages" where every aciton gets played out. Every action is done in a location, and takes a certain amount of time. If the player''s in the location, they can interfere.

For example: The Viser wants to kidnap the Princess. He''s got to get into the Palace, deal with the guards, subdue the Princess, get her to the Flying Carpet, and escape back to his Castle.

At any point as this is happening, the player could discover it. What they do affects the story, and depends on what player actions the game allows


Rules! I Need Rules!

An NPC needs to
1) Figure out their goals. This means check the game world with their personality & pick a target that''ll get them what they want. If the goal becomes impossible, then they need to pick another.

2) Figure out how to get to their goals. This involves different strategies that ultimately break down into moving from location to location using actions and assets.

3) Take a step toward their goal until they get it

Plot is made when different characters have different goals and compete and conflict on their way to get them. The more NPCs, actions, and locations, the more complex the plot.

That''s a start. It may not produce brilliant plot, but it may give the player a more interactive story to get involved in. What do you think? Right direction, or a bad idea?




--------------------
Just waiting for the mothership...


Edited by - Wavinator on April 5, 2001 8:43:50 PM


I know this thread is really old, but I just discovered this board and wanted to post my thoughts on this topic. The design Wavintator describes is very similar to a project I have been working on for a long while. One of my goals for the game is to create a world where NPCs go about their business and do interesting things with or without the presence of the player. NPCs are driven by desires for resources. I use a broad definition of the term resource, which includes material possessions, land, political/religious office, military commission, charisma, ruthlessness, and others. Most resources serve double-duty: they can be the end goal of a character''s ambition, or they can be a means to an end. Some resources are constant, such as land and political offices are constant from game to game (there is always exactly one king, x number of barons, etc), while things like material possessions are randomly generated, and then characters whose purpose is to contend for that resource are generated, given different resources to compete for it.
Characters may also have multiple ambitions. In that case they reserve what resources they have which will aid them in the pursuit of the most-easily obtainable goal and go after that goal. Impossible-to-obtain goals are not discarded, because you can use dreams as a way to add characterization. Also, the pursuit of one goal often involves first obtaining one or more intermediary resources which are prerequisites to carrying out the character''s plan (which is somewhat based on the character''s personality).
As time goes by and a character finds that his plans don''t pan out, their desperation increases based on personality and degree of desire for the resource, and his plans will become increasingly reckless. Ultimately, the NPC will either die trying (in extreme cases) or resign himself to living life without the resource and move on to striving to obtain something else.
In this design the PC is treated exactly like NPCs in a lot of places. For instance, when NPCs formulate their plans for obtaining a resource, it makes absolutely no difference if the owner is an NPC or the PC. That only comes into play when the NPC actually catches up to the owner to deal or steal or threaten or whatever. If the owner is the PC, then of course the player makes his decisions on how to handle the situation, otherwise the confrontation occurs off-stage (although if the player is nearby, he may be a witness or caught in the middle).
The player is informed of the goings-on of NPCs through talk at the bar or where-ever, which allows him to make decisions based on what is going on, although anything heard through the grapevine is not guaranteed to be entirely accurate. In fact, information is one of the most valuable resources in my design. even NPCs may be basing their plans on incomplete or innaccurate information. Information can be bought or sold like any other commodity, but the player needs to build up some kind of rep before he expects anyone to trust him, and should consider the sources of his own information. The player also has the option of lying through his teeth about any subject.
I know part of the point of a project like this is to not have the player be forced into any one course of action or to have the game set the goal for the player, I beleive the game should still include something to draw the player in, so I will start the game off with one pre-determined goal. I am thinking along the lines of starting the game with a failed attampt on the player''s life, with a threat of more to come and a small hint as to where to look for the source of the attack(the dead assailant had 50 gold peices minted in a neighboring kingdom, or was dressed in a style particular to a certain town). That way the player has a reason for exploring the world: find the party responsible for the attampt before more are made. That should silence any complaints of "but the character I am playing has no interest in doing so-and-so"; anybody would want to put a halt to assassination attempts. If the design works properly, the player should become embroiled in other activities, and by the time the hidden enemy is uncovered, the player has acquired other goals of his own choosing.
Sound like a good design to anyone? Any suggestions for imrovement or more detail? I would especially appreciate any suggestions/techniques anybody may have on incorporating dialog that would bring NPCs to life. I plan on letting NPCs accompany the player in his travels, and would like to give those NPCs as much personality as possible.

-Sean
Advertisement
Sean, yes that''s exactly what we''re thinking. How far are you in implementation of the concept?



...A CRPG in development...

Need help? Well, go FAQ yourself.
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi
quote: Original post by Nazrix

Sean, yes that''s exactly what we''re thinking. How far are you in implementation of the concept?



...A CRPG in development...

Need help? Well, go FAQ yourself.


I am roughly half way there. My class hierarchies are finalized (I am using c++ and and use a lot of OOP), and all of the classes that I need to use are nearly completely defined to implement my design. By ''defined'' I mean that they have the necessary data member and method declarations to carry out their game functions, but I still need to actually code about one-third of the methods.
Completed or mostly completed functions: Adding ambitions to characters, Character determination of his/her most easily obtainable ambition, reserving of resources for plan, formulation of plan to obtain resource based on that character''s personal knowledge and desperation, the transfer of most resources from one character to another, the spawning of rumors (incomplete or not entirely accurate information), resource use by NPC to obtain another resource from another NPC, and combat routines.
Still needs coding: Specific data for the world (right now I am using dummy values for testing, so every town is the same as the next), NPC vs PC ineraction, including confrontation for resources, dialogue, etc. , and lots of other little things I am drawing a blank on right now, as well as tying it all together.
- Sean
Wow, Sean, that sounds VERY cool! I totally agree with your approach, and I''m very interested in seeing how it turns out!

I''d be very eager to know how you tackled a couple of major problems:

How did you (data-wise) organize your world? Since this is critical to agent thinking and planning, I''ve been concerned about the search space and time becoming overly large per agent. I''ve been thinking of nested graphs for everything, with flags that determine if an NPC knows of the node or not


How about planning? Planning to me seems a bit like pathfinding, where NPCs search nodes to get to a location that has what they want. Along the way, they''d note whatever obstacles or resources they need. There are two sticky points to this, though, aside from search time/space: changing conditions, and predictability.

I haven''t yet figured out how an NPC should deal with possible changes to the world. The brute force method-- to calculate permutations and possible map changes-- seems doomed to fail. But if NPCs don''t appear to be able to outwit unexpected challenges, then they can''t possibly make for good opposition.

If there''s one main plan of action they persue, as well, then the whole effort''s a wash because you''ll be creating the same predictable story every time.

I have been thinking on and off about how you might change the actual game rules to simulate NPC intelligence. One thought in that direction is that the less steps an NPC has to take to get something the done, the less chance there is for the NPC to look stupid. So it might be better to make something like "Infiltrating the castle and poisoning the king" a series of "dice rolls" that determine success or failure, rather than having the NPC actually have to figure out how to do them.

(The major problem with that idea, though, is what happens when the player is in the room? How, then, does the NPC exhibit cunning?)

btw, nice to know I''m not the only one crazy enough to believe in this idea!!!

--------------------
Just waiting for the mothership...
--------------------Just waiting for the mothership...
Love the 7 sins idea! May steal that idea for my own game (already using "personality numbers"). I would note that you could generalize this out to any set of "personality templates" -- such things have been popular for literally ages (presumably because we like making models of things):

- The 12 signs in the horoscope (I believe The Sims used this). Or why not the Chinese horoscope?
- The Myers-Briggs test (you know, the one that makes an employer hire an ICQU or what-not person as their programmer in preference to someone who actually knows how to program)
- Plato''s threefold division of the soul
- Bastardized Freud: people have egos, superegos, and ids -- one being more dominant than the other. Also some have stronger Eros desires, and others stronger Thanatos.
- The Four Elements
- Any of the hundreds of crappy online personality tests like this one: http://users.rcn.com/zang.interport/personality.html

Storing the values of the personality is the easy part (GREED = 3 or whatever); the hard part is balancing the decisions. The hardest decision to make about the algorithm, I think, is whether you decide first what the creature wants and then figure out how to accomplish it, or decide what it can accomplish and then figure out if you want it. In my program all creatures use the same algorithm when trying to figure out what actions they can take and what are the most likely consequences (except in that some creatures are dumber than others; green slime doesn''t plan ahead and can''t estimate the danger-level of an opponent), and it uses its personality weights to determine whether it wants to do something.

Here''s a dumb example. A creature is in between some food, some gold, and a dangerous enemy. It can move towards the food, towards the gold, or away from the enemy. So it assigns a value to each, thus:
WANT_MOVE_GOLD = LIKES_GOLD * GOLD_AMOUNT
WANT_MOVE_FOOD = (LIKES_FOOD + FOOD_QUALITY) * HUNGER
WANT_RUN = GETS_SCARED * FEAR * PERCEIVED_DANGER
with the highest action winning. This works best with a finite number of actions; I didn''t find it too hard to abstract out the idea of an action (instead of looking at spots on the map, it would look at each visible item/person, and run through all options: go towards, go away, eat, fight, etc. -- around 1000 actions to process on average, but most could be disposed of immediately; the downside of the method is that it does not, say, run away from two things at once very cleverly, but you can patch this up in a few heuristics like merging "compatible" actions and adding their weights together).

If I was clever I would split the AI decisions across turns apart to save CPU time. Instead, I use a cheater method which is that an NPC only really makes a "decision" every 100 turns (unless their decision is interrupted), staggered so that the decisions are spread across the NPCs; so each round only 1% of the creatures are actually thinking. This works way better than one would think, in particular because you really notice the behavior difference (the cowardly, cruel, greedy Kobolds like to stay near you but not too close, picking up any objects you drop and throwing stones at you -- emergent behaviors I never thought of myself). The down side: it required *endless* retuning, and the down side of emergent behavior is that it is often emergent *dumb* behavior (why the hell do my Nymphs like to run in circles around rocks?)

Emergent player behavior comes out this way too. I have a ring of fire immunity. I could use it to kill a red dragon without getting hurt. Or, I can get the dragon as angry as possible so it will follow me to the castle and scare away the local army who would otherwice make mincemeat of me. You get the idea.

This topic is closed to new replies.

Advertisement