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
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
--------------------Just waiting for the mothership...
Ooh, technical stuff. I like technical stuff.

quote: Original post by Wavinator
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.


That means that personality becomes a game mechanic. Any character/NPC's personality needs to be defined (or derived) within the context of the game.
A possible suggestion: a broad-level personality qualifier at the hand of virtues and vices. There are seven deadly sins (coupled with seven virtues) that can be used to define an NPC's 'personality', for instance greed or sloth. These are actual mechanics that can be used to generate interesting mini-plots. For instance, sloth could be a town guard too lazy to actually stand guard at night, allowing another NPC to sneak in and steal something from the town.

The guard's goal is to do as little as possible, not that interesting in itself, but it IS interesting in combination with a greedy person's goal of trying to get rich quick.

quote:
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.


I think this is the hard part. Assets will have to be defined in terms of the personality traits. I.e. greed is coupled with wealth/possessions. Sloth is coupled with spending very little energy. Gluttony is coupled with getting as much energy as possible. The reverses of these (virtues) are easy to see. But it IS essential that the assets are defined in terms of these traits, or it will be very hard to match them.
Getting towards those goals will then be a two step process of locating a number of locations where the proper asset can be attained, or where the asset will be least in-demand, and then finding a way to get to that goal.


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

Well I think that goes with 2


quote:
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?



I think it's a good step in the right direction. Like you said, it's not shakespeare, but I think it could be surprisingly diverse in the number of situations that arise.


People might not remember what you said, or what you did, but they will always remember how you made them feel.
Mad Keith the V.

Edited by - MadKeithV on April 6, 2001 3:24:00 AM
It's only funny 'till someone gets hurt.And then it's just hilarious.Unless it's you.
Advertisement
I''m actually planning something similiar after I finish my current project. I plan on using something similar to a "Need-Based" AI for all characters in the game. That combined with genetic algorithms will hopefully lead to a totally dynamic, and interesting environment.

So I think you are on the right track. Subjects to research are game AI (neural nets or genetic algs) and need based AI.

You probably won''t ever create a sim human, but I bet you can get a monster that hunts deer, when the deer leave, he expands his hunting grounds, which happens to bump into a town. And disrupts life, etc.

He''s a bad motha - Shut yo mouth.
The individiual NPC goals will have to be closely linked to the rest of the game environment. (i.e. greed is only an option if there is a mechanism for measuring and improving wealth)

Some desires can be satisfied by acquiring resources, so you need to have some rate of exchange.

Bob is greedy - he has a greed score. His greed score is used in a weighted calculation of his next action. Since greed is never completely satisfied, his greed score increments by one every N turns. Acquiring gold reduces his greed score by 1 for every X gold he gets.

In this case, it works kind of like a disease (not a bad model for greed, IMO).

The higher the greed score gets, the more likely he will try to steal (a fuzzy state machine might be better than a finite state machine here). You may consider upper limits to his greed score to prevent him from doing something suicidal.


You might consider allowing NPCs to exchange desires and as a form of interaction.

Bob wants gems and has gold.
Fred wants gold.

Bob gives Fred some gold, and Fred adopts Bob''s desire for gems, but keeps Bob as the receiver for the gems (ie Bob wants gems and now Fred wants to get gems to Bob).

So now Bob has hired Fred to find gems. At least until the gold has run out.

JSwing
Hmm. Just noticed we were talking about NPCs instead of plots. Plot element might be an NPC but also includes settings and scenes.
I was thinking, if a history generator is worked out first, instead of plopping the player down at the end of the generated history, put him at the beginning. Then, have all the factions, empires, and NPCs work to fulfill that history. The player wouldn''t really know if he''s fighting destiny or fulfilling it unless you decide to say something at the beginning.

Ok, so that doesn''t really help figure out rules.
Advertisement
The only problem is to organize the need based system so that it doesn''t get repetitive.

"He just captured the princess. That means that at 2:00 pm tomorroow, he will be heading over the left bush in order to try to assisinate the king. Then at 3:00 pm..."

or

"Oh crap, I''ve got 3 villains all trying to kidnap the princess at the same time. *watches scene*

Villian 1: I have you now!
Villian 2: Got you princess!
Villian 3: Aha!
"

I dunno. Maybe randomize everything!!

-Blackstream

Will you, won''t you, will you, won''t you, won''t you take my virus?

-The Mad Hacker

Blackstream''s Webpage
-Blackstream Will you, won't you, will you, won't you, won't you take my virus?-The Mad HackerBlackstream's Webpage
Kseh, great plan!

Just have the game create a plot head-on, before the player starts. Then, make sure that the player cant actually leave it, just make sure the game is smart enough to keep him on track

Just like Baldur''s Gate... You think you can make choices, but in the end, you will fight Sarevok. No other choice. This plan would do exactly the same

And generating plot ahead, instead of real-time, will free clock-cycles for things like NPC-AI...

Nice plan
Thanks everyone!

quote: Original post by MadKeithV
A possible suggestion: a broad-level personality qualifier at the hand of virtues and vices. There are seven deadly sins (coupled with seven virtues) that can be used to define an NPC''s ''personality'', for instance greed or sloth. These are actual mechanics that can be used to generate interesting mini-plots.


This is a good idea. I can actually see applying several virtues and vices to even a single character and letting the magnitude of each compete. So you could have a character who is both lazy and slothful, or even lazy but honorable. The personality desires themselves could compete, and could allow the same character to behave differently under similar situations.


quote:
Assets will have to be defined in terms of the personality traits. I.e. greed is coupled with wealth/possessions. Sloth is coupled with spending very little energy. Gluttony is coupled with getting as much energy as possible. The reverses of these (virtues) are easy to see. But it IS essential that the assets are defined in terms of these traits, or it will be very hard to match them.

I think we''re on the same page, although I was thinking that actions would tie in closely to personality, and assets would simply be tools that allow the comission of certain acts (or not). For example, a greedy thief would possess a steal action, because it''s part of his personality; whereas a noble Paladin would never steal, and so wouldn''t have that action. (It would actually be a weighting, really; steal for a Paladin would have a very low chance of being activated, since I believe we''re actually all capable of anything under the right conditions).




--------------------
Just waiting for the mothership...
--------------------Just waiting for the mothership...
quote: Original post by Anonymous Poster

The individiual NPC goals will have to be closely linked to the rest of the game environment. (i.e. greed is only an option if there is a mechanism for measuring and improving wealth)


Thx JSwing. You''re right, a lot is going to depend on the actual game world vars. (If we''re able to make this somewhat generic, then this suggests a need to defend the NPC''s state vars, the game world vars, and a linkage between actions and how they map from the game world to the NPC)

quote:
Some desires can be satisfied by acquiring resources, so you need to have some rate of exchange.

Bob is greedy - he has a greed score. His greed score is used in a weighted calculation of his next action. Since greed is never completely satisfied, his greed score increments by one every N turns. Acquiring gold reduces his greed score by 1 for every X gold he gets.

In this case, it works kind of like a disease (not a bad model for greed, IMO).

The higher the greed score gets, the more likely he will try to steal (a fuzzy state machine might be better than a finite state machine here). You may consider upper limits to his greed score to prevent him from doing something suicidal.


I can see this working almost like hunger and satiety, too. You get your greed kick, but soon want more. Or you get your good deed kick, then soon need to go do it again.

As far as the upper limit I''d like to try and use a FuSM that has competing goals. I think we want both those NPCs that are driven by survival, and those driven by their personality urges to extremes. That way, you maybe get the knight that lays down his life, or the hacker that takes too many risks and ends up dead, all because their personalities overrode their common sense.

quote:
You might consider allowing NPCs to exchange desires and as a form of interaction.

Bob wants gems and has gold.
Fred wants gold.

Bob gives Fred some gold, and Fred adopts Bob''s desire for gems, but keeps Bob as the receiver for the gems (ie Bob wants gems and now Fred wants to get gems to Bob).

So now Bob has hired Fred to find gems. At least until the gold has run out.



Hmmm... Interesting. I like the idea, but implementation-wise I think it''d be cleaner to keep personality elements seperate and make something like this a task type / duty that the NPC adopts (and then can thus easily discard as the need arises).

I like the idea though!


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

This topic is closed to new replies.

Advertisement