Advertisement

Dynamic PLot/Adventure System Thing?

Started by July 17, 2004 11:36 AM
27 comments, last by Nazrix 20 years, 6 months ago
Quote:
Original post by Jotaf
liquiddark I never heard of that, I'll check it out now :)

The basic needs of every single living creature on Earth are hard-wired into their DNA. Why do you want them to be emergent so badly? :p If hunger exceeds a threshold, the NPC has a new objective, which is to find food. There can be lots of different actions that achieve this objective, but that's up to the planning system. Couldn't be simplier, and I don't see the benefits of making it more complex than that :)

Rescuing a daughter is not really a basic need, which doesn't mean that it isn't high on the NPC's priorities list. The NPC has a number of people (other NPCs, or even players) that he/she cares about. If the NPC knows that one of them has a need that they can't fullfill by themselves, it will become just another objective for the NPC.
You don't need to go that far into NPC psychology though :p When a bandit kidnaps an NPC, all the NPCs that care about him or her receive the objective of rescuing the NPC. You see, SOMETHING has to be hard-coded; that's where the whole plot begins. From these premises, the rest of the story will evolve. But ztn's suggestion could be very handy for generating these premises.


Much, much better approach - having a village, stuff happens, and players get hired to deal with the problems. Raiders raising fields? Jobs: 1) destroy raiders. 2) find bulk sources of food. Raiders kidnap/ransom daughter? Job: rescue daugther. Of course, there are other things that are less obvious: Knight of town is filthy stinking rich, very proud of daughter. Job: kidnap/ransom daughter, hope he doesn't put the money towards sending other players after you.

Why more MMOs don't take that angle, I don't know.
-- Single player is masturbation.
There was an interesting article I read in AI Game Programming Wisdom 2 called "A Dynamic Reputation System Based on Event Knowledge" by Greg Alt. He discusses methods of allowing NPCs to interact with one another to piece together player actions and decide how they like him or not based on that. They share information based on things they have seen. Example: One thief sees the player attack a thief of x,y and runs away. Another thief finds the body dead, but doesn't know who killed it. These thieves get together, swap information, and both "assume" the player killed the thief at x,y.

Depending on how the player acts, you can give different quests. Farmers may hate thieves, so the more you kill thieves, the more quests farmers may give relating to thieves, because they percieve that you may be a formidable ally with the same goals.

However, a farmer who does not know the player and has not heard anything about him may not really even talk to the player. Why would you ask a random stranger to kill a dragon from you if you have never even heard about him before?

So lets say the farmer tells the player to kill the dragon, because he notices the farmer has some fancy armor on and stuff. The player does and comes back without proof. Why should the farmer believe him? Or lets say the player comes back with proof and tells the farmer...but leaves the town. He could come back later and everyone would know because the farmer spread the news.

Or lets say the farmer asks him, you agree, and you wait a day or two. By then, the whole town may know, and you could get discounted items from the blacksmith as a token of his appreciation. If you buy those items though, and don't kill the dragon, well, what happens then?

So now it comes down to "how does the news get spread"? By simply implementing certain threshholds on player values, you force interaction. Farmers work, they get hungry, they go to the butcher, they "talk", (aka trade info). Butchers get lonely, they go to a strip club (I dunno...). You get the idea.

You have to create a really well thought out design, because as you can see you can create a cascading system which gets really complex really quickly. By developing overhead rules, you can probably make it much more effective, fun, and less obfuscated.

Now all you need is a dynamic quest generator...which doesn't seem so hard either...but really is. Lets say you kill the dragon, and your engine just randomly puts another there. You come back. You need your farmers to be able to recognize that you already killed a dragon and say "hey, you have killed a dragon, can you do it again for us?" or something to that effect.
If you have the same scripted words over and over, well, players will lose their interest quickly.


Looking at all of this, I tried counting variables. What I mean by that, is counters needed, etcetera. Then I realized that what you do is just break down quests into different abstract types: kill, deliver, return. Kill has to do with killing things obviously (a dragon, a rat). Deliver has to do with delivering things (a crown, a sword, a hamburger), and return has to do with bringing things back (a diary, a princess, etc).
Every time an NPC hears that a player has completed one of these tasks, he checks if there are any other things he has heard about, and increments a counter on that specific quest. Otherwise, he adds it as a new quest. For example, you save a princess in Far Away Land, and some king hears about it. So you save his daughter. While technically two seperate quests, farmers basically hear that you have done a return quest based around princesses twice, and succeeded both times. They dont need to know more than that.


Uhh...I guess I typed a lot and started babbling because I have thought about this idea many a time before and tried to implement it several times...I just didn't design well enough.
Hopefully you have better luck and better design skills.
And maybe you can pull something out of this convoluted mess that I call a "post" to use...
Advertisement
Quote:
Pxtl posted
Much, much better approach - having a village, stuff happens, and players get hired to deal with the problems. Raiders raising fields? Jobs: 1) destroy raiders. 2) find bulk sources of food. Raiders kidnap/ransom daughter? Job: rescue daugther. Of course, there are other things that are less obvious: Knight of town is filthy stinking rich, very proud of daughter. Job: kidnap/ransom daughter, hope he doesn't put the money towards sending other players after you.

Why more MMOs don't take that angle, I don't know.


1) How do you make the quests not repetitive?
2) What kinds of rewards can you get? Will the rewards repeat?
3) How many players can be contracted to do a quest? What if someone finished it while you are in the middle of doing it?
4) How long does each quest require?
5) How long does it take for a player to get a quest? How bad is the competition?
One I started on the same subject in the ai forum.

http://www.gamedev.net/community/forums/topic.asp?topic_id=230793
It seems we are all talking about dynamic systems composed of discrete interacting elements. It sounds more like a simulation than a script.

Even though the uses for these systems vary, I think they have enough in common to share some key questions and answers. See if you agree:

Common Traits:
---------------------------------------------
Multiple Actors (NPC, object, node, cell, etc…)
Each Actor has State (current action, type, storyline, etc...)
Actors Interact (Exchanging or changing each other’s State)
Each Actors decides State for itself (Not the player!)

Are there other traits in common to all systems mentioned here? I think everything else involved may change based on the purpose of the system.


Common Questions:
---------------------------------------------
Can we know and list all possible resulting states?
(I would say yes in all cases, even genetic algorithmic cases.)

Should we? -predict/determine/list all possible resulting states
(From Wavinator’s idea about “letting go”, and not guaranteeing the user’s experience.)
(I would say yes, it is a good idea in all cases for the game designer to know them, even if they are not all going to be “fun”.)

Can we avoid listing all the states, and prove the design using only the rules of interaction?
(I have no idea. See below)

Is knowing all possible resulting states enough, or is emergent behavior a factor?
(I would that its not enough, and that emergent behavior is a factor that must be at least considered.)

What are the methods of limiting/designing the possibilities?
(Other than limiting the Interactions and variables?)

Should the system be Deterministic?
(This means there are no random variables, but chaotic behavior is still possible if “sensitive” enough to its initial conditions.)
(?)

Should the system be Dynamical?
(I think this one is completely up to the developer and what is the intent of the system.)


I think the answers to some of these could be made easier with some math and theory, especially if the last two questions are answered yes. I just don’t know either well enough! Anyone?


-I should stop here…
zTn
Quote:
Original post by Nazrix
maybe the answer is how the NPCs' actions are carried out. I mean, combat is pretty repetitive too but what helps is that a battle can go different ways cause there's different options. So what each character does to complete a goal makes it interesting even though it's done many times. It's the variables and the combinations of different parts that make something fun even though on the surface it's repetitious.


Part of this I agree with, but a huge distinction between plot and combat is how to create engaging context. The context is the big picture, the meta, and it determines why the combat is meaningful even when its repeated. In combat, context is how close you are to dying, to finishing your objectives, to victory, what stands in your way, etc.

Without engaging context, battles would probably play out like really bad side scroller where you just thrash one enemy after another with no point. We know its important that combat be meaningful because we complain when we're godly heroes and find ourselves fighting rats.

Creating engaging context for plots I think is much more daunting. If saving the daughter means you're going to be running into thieves guilds and dragon's dens 25 to 50 times, it's going to start feeling meaningless. If you shrink the context down, it becomes mopup police work. "Yup, they stole my chickens again? Wanna do somethin' about it? 5 gold pieces..."

If you scale context up then you'll need to connect it to alot of significant things in the game world, different ones enough times so that the player forgets or forgives when the meaning of what you're doing starts repeating. What I think would ened up happening is that for most people it would no longer be your standard hack & slash RPG.

Quote:

I'm not sure where to go from here yet though...have to think about it


Maybe the next step is putting together a series of pen & paper RPG scenarios.
--------------------Just waiting for the mothership...
Advertisement
Yes, but other kinds of games are capable of creating a good context for combat without relying upon designer-generated scenarios. X-Com for example. The combat was extremely repetaive and the combat was dynamicly generated, but it was still exciting because you were involved in the context of the combat. In most games, you're itching to fight - but in X-Com, you were scared to death of a large enemy ship coming along.

Think of it like this for an RPG. Pirates have set up an extensive city on a small island off the coast. Their ships come by frequently, dropping landing boats of raiders. Small quests involve defending from raiders, picking off landing boats, protecting things. Larger quests involve visiting the offshore ships and barges to rescue hostages, negotiate deals, kill villains, and possibly even destroy the whole ship. If you destroy a ship, its wreckage and survivors float ashore, creating new possibilities and quests. Bigger quests could even take you to the island source of the piracy. The massive, ultimate quest would be all-out warfare, an attempt to attack the island and burn it to the ground.
-- Single player is masturbation.
Quote:
Original post by Wavinator

Part of this I agree with, but a huge distinction between plot and combat is how to create engaging context. The context is the big picture, the meta, and it determines why the combat is meaningful even when its repeated. In combat, context is how close you are to dying, to finishing your objectives, to victory, what stands in your way, etc.


well hopefully if you make a simulation type of environment, the context comes right from the simulation

For instance, say you create a coorilation between rising crime (thievery and kidnapping for randsom)and a town's poverty. This is just an example off the top of my head but I'm just saying the "context" could come naturally from the simulation.

Hopefully with all the combining agents in the simulation the contexts will be different enough?

If the player and other NPCs can effect with these correlations it would have more impact. The player can see why this or that is happening.

[Edited by - Nazrix on July 23, 2004 7:18:36 PM]
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi
Quote:
Original post by Pxtl
Yes, but other kinds of games are capable of creating a good context for combat without relying upon designer-generated scenarios. X-Com for example. The combat was extremely repetaive and the combat was dynamicly generated, but it was still exciting because you were involved in the context of the combat. In most games, you're itching to fight - but in X-Com, you were scared to death of a large enemy ship coming along.


I totally agree with you that other games can do this. What I am not so certain of is whether or not a pure RPG can support this sort of thing because of the requirements for story.

When I'm talking about context (probably a horrible word) what I'm talking about is how your actions fit into the big picture. If you look at X-Com, you have to look at what the big picture is, why the actions are meaningful, why it is important. In X-Com it is the tactical victories which yeild prizes and territory, all of which leads to greater and greater strategic advancement.

It is important to most gamers who invest more than a passing amount of time in playing that the game be going somewhere, be leading somewhere surprising. A strategy game whose outcome is already known probaby isn't all that interesting. So when you play X-Com the context which gives meaning to repetitive combat is the larger struggle. You don't mind the repetition, especially if the outcome is uncertain, because it's all leading somewhere. And should you realize you've achieved inevitable victory, the game is no longer fun.

Okay, so how does this apply to RPGs? Well, in place of the grand scale strategic context, you have to have a sense that the story is going somewhere: Quests have to give the player a sense that things are moving forward, there has to be buildup, and there's got to be a sense that the player is engaged in some sort of great endeavor, either in a personal, mythical, moral or global dimension.

Storylines and quests are not supposed to behave like strategic encounters. See-saw back and forth gains and losses are common in a strategy game, but would kill a story. The pacing and timing of strategic actions are haphazard and asymetrical, whereas such elements separate a good story from a bad one. There's a certain level of OVERALL repetition (not just individual fights, don't look only at the microcosm) that's just fine in a strategy game that I don't think the standard RPG can bear.

Now, I do believe that you can achieve a sort of RPG-strategy game fusion (in fact that's what I'm working on). But my experience is when you approach dyed-in-the-wool RPG players and present such an idea to them, their concern, as Estok pointed out, is that the story lines, character interactions, rewards and overall meaning of the game not be repetitive. A strategy gamer never asks this question, because capturing yet another town or founding yet another base are all actions that feed the big picture context they're playing for.


Quote:

Think of it like this for an RPG. Pirates have set up an extensive city on a small island off the coast. Their ships come by frequently, dropping landing boats of raiders. Small quests involve defending from raiders, picking off landing boats, protecting things. Larger quests involve visiting the offshore ships and barges to rescue hostages, negotiate deals, kill villains, and possibly even destroy the whole ship. If you destroy a ship, its wreckage and survivors float ashore, creating new possibilities and quests. Bigger quests could even take you to the island source of the piracy. The massive, ultimate quest would be all-out warfare, an attempt to attack the island and burn it to the ground.


I would play this because I'd like to see a blend of RPG and strategy game. But consider the dozens and dozens of quests RPGs often have. You're basically an exterminate and FedEx Knight in most of these games. But if it's done right, you're pulled along by all the little quirks, exceptions and twists to the story, and you find yourself wondering where it will lead next.

Now taking your example, let's assume the player is totally ignorant of the total strategic scope of things and is locked to only their own perspective. Let's also assume that the game successfully translates strategic happenings into dialog and quests (a VERY big assumption, btw)

Alright, so you take a "fight the raiders" mission a few times, get some injuries, crack some heads and ultimately earn a bit of treasure and level up. Presummably the game has told you why the raids are happening, and what's in it for you if you do something about it. But as you're leveling up through the raids and deliveries and protect missions, you may start to notice a certain lack of something. You don't have the strategic scope, all you have is the same missions again and again with no guarantee that they're going anywhere. If this phase lasts long enough you'll feel that, as an RPG, the story is haplessly meandering. (Try Escape Velocity and stay away from the prescripted story missions, I think you'll get this sense, it becomes tedious.)

The later stages are going to have similar problems unless you can come up with a very wide variety of randomizers, or unless (as I'm trying to do) there's so much gameplay elsewhere that the strategy / story component takes a back seat and becomes icing on the cake. X-Com achieved this, I think, with all the item creation, bartering, base building, money management and politics. You didn't care that the plot points consisted of "yet another alien attack on town X" because you weren't playing it for the story. The story offered new surprises and unlocked new challenges, but except for the endgame I think X-Com would have survived just fine without it.

--------------------Just waiting for the mothership...
Wav, so you're proposing a situation where the encounters, quests, situations, etc add up to a bigger picture? They would all connect a lot more? That would be way more interesting.

Although, I think even if they didn't connect if it's a drastically more non-linear RPG/Sim/Strategy type game it could still be pretty interesting. Because imagine the player being able to tell an NPC 'yeah i'll save your daughter' then he joins the thieves' side.

But definitely, connecting things would help dramatically.
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi

This topic is closed to new replies.

Advertisement