Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Vapourware What exactly is C&C? And how to do it in simulationy rpgs?

Enrymion

Novice
Joined
Apr 16, 2018
Messages
18
People talk about how important it is for games to have choices and consequences that matter (or at least I talk about it) but when I started to think about how to make a game that had it I realized I don't really even know what exactly I mean when I say I want C&C.

If I take it literally then games are full of choices and consequence that matter to some degree and I don't know at what point to say it's no longer important enough to count. For example if all I'm choosing is if I get some kind of a reputation point with one faction or another then that's a choice and it can have very meaningful consequences but somehow I feel like unless you have very limited opportunities to gain reputation that's probably not good enough but why not? Is it that your choice is probably already made unless it's the first time you're deciding which faction to support or is it that none of the effects can be traced back to that choice instead of some other that also gave reputation? I guess the solution to both would be making it so that there are other consequences that you can trace back to specific choices and are notable enough to possibly make you not support the faction/entity you most care about(might be good to make sure player knows about it if you can effectively max out a faction relationship even if you don't always side with them).

Another thing is how important is it that you know you made a choice and that it had consequences? Say what if buying a random sword instead of an another weapon meant that someone else doesn't get it and dies because of that without the game ever telling the player that he couldn't get a sword and thus died? Feels pointless so letting player know about the consequences seems essential but not knowing it mattered when making the choice might be fine to some extent .

Also can the consequences be immediate? I think there's some expectation that the consequences should happen later, but say if you get hurt due to a choice it technically can easily have consequences for the rest of the game since you probably use money or time to heal it and so always have less money or more time spent than if you hadn't gotten hurt but that's usually too minor but what if you gain an attribute point? That's probably major enough to count so maybe the effect can be immediate but needs to alter what happens in the future in some way that is... noticeable enough? But what counts as noticeable and do you actually notice effect of an attribute point that much? So maybe noticeable is the wrong word but can't think of a better one at the moment.

While it might not be necessary delayed consequences are still probably nice but can there be too much delay? If you kill someone and get accosted by people wanting revenge it's probably better if it happens while you still remember doing that but I don't see why it shouldn't happen a lot later so I guess as long as you are reminded about the choice you made it doesn't really matter how long ago the choice was.

So to me it seems like good C&C should both tell you about some consequences right away and have them be something that will keep mattering for a long time and delay other consequences but clearly point to a specific choice you made when they do appear.


Anyway the main reason I'm even thinking about this is that I think that games like Adventure mode in Dwarf Fortress and Kenshi that focus on simulating a world weirdly don't feel like they have interesting C&C despite in theory being full of them and I want to figure out if that could be fixed somehow.
The conclusion I'm getting from having thought it through so far is that while a lot of stuff might happen because of your choice it's hard to actually tell that they happened at least in part because of your choice.

So we need a way for events to figure out if player caused them and what exactly was it that player did.
Would it be reasonable for NPCs to keep track of everything that they could blame or thank for what's happening and then follow the causes of those up to a certain point to see if player was at fault?
So if NPC is hungry and wants to complain that it's somehow the player's fault how might it work?
Why am I hungry?
I have the time and ability to eat.
I don't know how to hunt or gather food.
Why not? I make enough money from my job so I haven't needed to learn.​
I do have enough money to buy food but there's no food being sold.
Why no food being sold?
Merchant wants to sell food.
He used to sell food but stopped when nearby town stopped selling it.
Why did town stop selling?
Bandits burned down a field.
Why couldn't they prevent that?
Taxes made them too poor to afford military .
Why are the taxes so high?
New mine was discovered near the border by the player so a fortress is being built to defend it.​
Why are there bandits?
No one did the quest to kill them.
Beggars found a bunch of weapons that player couldn't carry.​
Closest town that does sell food is too far
Why?
He can get there and back if he wants to but it'd take so long that the food would spoil.​

So he's hungry because player found a mine, left loot behind and didn't do a quest to kill bandits and if somehow figuring out that it could be worded as saying that there's no food because of bandits lead by someone wielding a weapon with a specific name and the taxes for the new fortress causing there to be no one to deal with the bandits and then maybe saying that or maybe he should learn to hunt or get the merchant a faster transport and whatever other things that are issues but not so directly related to player.

Seems like it'd be quite troublesome to actually set up all the things to check and then somehow figure out a way to present the causes sensibly but after that it might work rather nicely assuming that the things aren't checked super often.

But how about when NPC travels to someplace and is simply happy about it what are the things he's glad of not happening?
  1. He was healthy enough to make the trip
    1. hasn't fought or was good enough to not get injured
    2. has no plague
    3. has eaten healthily
    4. hasn't needed one or had access to a doctor or such
    5. not too old
  2. He had sufficient travel supplies
    1. had boots, horse, carriage or some other traveling method
    2. didn't starve thanks to having enough food or having a way to procure enough on the way
  3. He wasn't attacked on the way or survived any attacks
    1. bandits were busy attacking someone else
  4. Path he used wasn't blocked
    1. weather was good
  5. Didn't have any too important reason to not travel
    1. not married
And then if player had anything to do with any of the things he could make sure to mention those and I guess it would be nice if he could understand which ones had bigger chance of going badly so he can be extra thankful of them.
Also remembering past events would be important so an NPC could go I tried or wanted to do X a while ago but because of you I couldn't do that.

Making some sort of spreadsheet, flowchart, database or something where I could easily list all the things that could be checked might be nice but this is starting to get way too long and maybe a bit unfocused so I guess I better stop for now.
Hopefully this didn't end up too hard to read and understand but if I'm totally wrong about everything feel free to say so.
 

Alkarl

Savant
Joined
Oct 9, 2016
Messages
477
I'll be honest, I mostly skimmed your post. What you seem to be referring to is more cause and effect which is very different from "C&C"TM.

The point you're at is basically The Sims, probably with an rpg engine attached.

The problem is tracking all of these values for individual npcs is very resource intensive and extremely prone to bugging out. And even when it does bug out, you wont be sure it's an actual bug every time, nor will you always be able to replicate.

The best way I've found to simulate what you're talking about is, instead of assigning all of these unique traits to every npc, assign them a sort of global faction in the style of New Vegas, while also providing for certain individual privileges. So for instance:

John Doe gets hungry, owns property at (x1,y1),(x2,y2), and belongs to faction Town A

Town A covers area (x,y), includes members {John Doe, etc}

Then you assign inter factional reputation:
Town A has favorable rep with Fortress 1 and hates Bandit Camp 2

Then supply routes for caravans:
Routes x, y, z

Then total the prosperity based on value of things found in area of town owned by its members and frequency of caravan visits, availability of wild game, farming, etc. Proximity to active bandits, monster lairs, and so on.

Then you can tie events to a very narrow set of circumstances that are easier to manage and less resource intensive.

This still allows the player to have an effect on the town. You can then assign different behaviours to npcs based on town properties.

Of course, this isn't an exhaustive example and could certainly be modified as needed.
 

The Avatar

Pseudodragon Studios
Developer
Joined
Jan 15, 2016
Messages
336
Location
The United States of America
The problem with implementing C&C from a game dev standpoint is that it takes so much resources and time to think of and make content(ie. dialog) for every diverging path.

In your example, look at that giant list of stuff just for your NPC being hungry. And that's presumably just one possible branch.
 

Enrymion

Novice
Joined
Apr 16, 2018
Messages
18
Things having an effect is obvious and already done by relevant games but what they don't usually have is is a way for the player to easily know what the consequences of their actions actually were and which things would have happened any way so instead of having the player say see that something interesting happened and then go through history of each participant and entities related to them to figure out why that happened the game could try to do some of that ahead of time and be able to tell the player even some of the less direct reasons and if player caused any of them.

Hmm I guess maybe a better way to put it might be to say each entity maintains a list of things that did modify it's stats like food or prosperity so that it knows who all to blame for them and then if necessary ask them for everyone who they blame and so on for a few times and then see if player or something else interesting is in the list of things to blame.
Also at first I was thinking of having each entity maintain a list of offenses and help player has given to them and then picking a semi-random one to care about and give as a reason for their actions but the issue with that was that only most direct interactions would count and it seemed a bit crude.

The problem with implementing C&C from a game dev standpoint is that it takes so much resources and time to think of and make content(ie. dialog) for every diverging path.

In your example, look at that giant list of stuff just for your NPC being hungry. And that's presumably just one possible branch
Well the game presumably already is doing all the things that are causing the NPC to be hungry, idea is to just have those things be somehow kept track of and evaluated in some way but for actually presenting and using that information in a nice way there indeed might be too much to do.
 

Alkarl

Savant
Joined
Oct 9, 2016
Messages
477
Hmm I guess maybe a better way to put it might be to say each entity maintains a list of things that did modify it's stats like food or prosperity so that it knows who all to blame for them and then if necessary ask them for everyone who they blame and so on for a few times and then see if player or something else interesting is in the list of things to blame.
Also at first I was thinking of having each entity maintain a list of offenses and help player has given to them and then picking a semi-random one to care about and give as a reason for their actions but the issue with that was that only most direct interactions would count

Sounds like a victim simulator to me. :lol:

There would be a lot of data you would need to account for, but you could build this up as you go.

So, if I'm understanding, the npc ai would build an understanding of the player based on player interaction with the world/npc and develop informed opinions about each interaction.

As far as most direct interactions counting, this is why you assign them a "faction" or a group to belong to. A village, guild, family etc. They can have more than one to increase reactivity.
 

Enrymion

Novice
Joined
Apr 16, 2018
Messages
18
There would be a lot of data you would need to account for, but you could build this up as you go.

So, if I'm understanding, the npc ai would build an understanding of the player based on player interaction with the world/npc and develop informed opinions about each interaction.
Yeah, sounds about right.
As far as most direct interactions counting, this is why you assign them a "faction" or a group to belong to. A village, guild, family etc. They can have more than one to increase reactivity.
Factions are why I used entity instead of NPC but good point about having more than one being good.
 

Bigg Boss

Arcane
Joined
Sep 23, 2012
Messages
7,528
The problem with C&C now is most people play a game once then never touch it again, so they miss out on all that content you busted ass to create.
 

Alkarl

Savant
Joined
Oct 9, 2016
Messages
477
Ok, the best way I can think to start is with the player itself.

What actions can a player take?
Enter/Exit combat
Attack
Speak
Transact (with merchants)
etc

How would these actions effect the world?

Then establish factions
Regional, local, famillial, job

Then create npcs, assign them a number of factions
(another way to interpet when I say faction would be community or who the npc interacts with)

Then assign npcs any necessary desires/goals, property, needs, etc

Then give them personalities
Cynical, self-serving, wrathful, care-free, enthusiatic, etc

Then consider all the ways a players actions might effect the above and finally:

Then you can write dialogue based on these personalities

This is a lot of writing for even one npc though. You could generalize a lot of the dialogue, but then every npc would feel generic.

On the upside, you could do a lot of interesting, emergent stuff with a system like this.
 

Egosphere

Arcane
Joined
Jan 25, 2018
Messages
1,926
Location
Hibernia
Best way to have good c&c is to have good characters, factions and locations, and have them interact in predictable ways depending on your choices. If you sabotage faction A, faction B wins and vice versa etc.
 

Falksi

Arcane
Joined
Feb 14, 2017
Messages
11,033
Location
Nottingham
Deus Ex, The Witcher 2, Dragon Age Origins. Just 3 more modern games which nail C&C IMO. No idea why so many find it so hard tbh.
 

adrix89

Cipher
Joined
Dec 27, 2014
Messages
700
Location
Why are there so many of my country here?
The OP's method is how to do Choices and Consequence wrong, you make things contrived just for the sake of branching things out.
C&C is best when the world makes sense and everything follows a consistent logic.
Not all consequences have wide spanning implications, most of them are minor.

Anyway the main reason I'm even thinking about this is that I think that games like Adventure mode in Dwarf Fortress and Kenshi that focus on simulating a world weirdly don't feel like they have interesting C&C despite in theory being full of them and I want to figure out if that could be fixed somehow.
As for simulation games it was never a problem of Choice and Consequence, by definition they follow a rigid consistent logic, the problem with simulation games is player emotional investment and basic drama writing.
Players see them more as units and functions they control rather then characters. Especially since most of the time NPCs have little Agency in the world.
 

Alkarl

Savant
Joined
Oct 9, 2016
Messages
477
Players see them more as units and functions they control rather then characters. Especially since most of the time NPCs have little Agency in the world.

Basically this. It's often far better to simulate the simulation, ala Ultima 5, than to go full on Dwarf Fortress meets Unreal World.

A players investment in any system is always going to be dictated by what they can get out of it. If an npc doesn't have anything of value to provide the player, they're not likely to be overly invested. Take for instance the npcs in Daggerfall. They have a wide range of topics you could ask them about, but their best use is to shake them like a magic 8 ball until they mark all the stuff on your map.
 

Bohrain

Liturgist
Patron
Joined
Aug 10, 2016
Messages
1,486
Location
norf
My team has the sexiest and deadliest waifus you can recruit.
I don't think you should dabble much into indirect consequences of actions since implementing it requires tons of work, but effects are not easily visible to the player or frankly that interesting. And I think that it's important to clearly signal the player what actions lead to differing outcomes like presenting dialogue checks, because otherwise people tend to assume the game is more linear than it is.
 

levgre

Novice
Joined
Sep 27, 2017
Messages
55
The problem with implementing C&C from a game dev standpoint is that it takes so much resources and time to think of and make content(ie. dialog) for every diverging path.

In your example, look at that giant list of stuff just for your NPC being hungry. And that's presumably just one possible branch.

otoh, dialogue is very technically easy to make compared to many other things in game development that require a huge time commitment as well.
 
Self-Ejected

Davaris

Self-Ejected
Developer
Joined
Mar 7, 2005
Messages
6,547
Location
Idiocracy
otoh, dialogue is very technically easy to make compared to many other things in game development that require a huge time commitment as well.

Not just time commitment but technical skills as well. If you aren't among the very best at those things, the time you spend is wasted because players will turn their noses up anyway. Now if you wrote a text based game, you could spend all that time on C&C.
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom