Opinion flow as a game mechanic
by Daniel Buckmaster · in Game Design and Creative Issues · 05/31/2009 (12:01 pm) · 4 replies
I recently stumbled across a fascinating article on Gamasutra that presents a method for using the Boids algorithm (used in flocking behaviour algorithms for things like schools of fish or flights of birds) to model the flow of opinion in a group of people. Instead of adjusting a unit's steering or position, the algorithm models the alignment of a unit to a given idea.
www.gamasutra.com/view/feature/1815/modeling_opinion_flow_in_humans_.php
The article gives a few examples of how this system could enter into a game world - the ongoing example throughout the text is modelling the opinion of a population of peasants towards one of two kings. But I kept wondering, could you design an entire game around this mechanic? Having to cause events and influence people to change an entire population's opinion?
What are people's reactions to this sort of gameplay concept? What are your ideas for a game centred around the flow of opinion in a population?
I have two imediate ideas. First, the obvious one - you are the propaganda minister of a 1984-style totalitarian state, and it's your job to keep the population in line. This would involve controlling the media, as well as the secret and non-secret police. You'd do things like silence troublesome voices in the community, hush up state-caused accidents, and try to keep the people ignorantly blissful.
My second idea is a little more involved. The game would be an open-world RPG set in an archipelago, in a 16th century sort of setting. Your job is to for some reason undermine a local monarchy supported by barons on each island. Just one approach to doing this would be to sway the opinions of individual barons, or possibly the general population of a given island, against the monarchy. Then you'd have either a revolt or an ally.
www.gamasutra.com/view/feature/1815/modeling_opinion_flow_in_humans_.php
The article gives a few examples of how this system could enter into a game world - the ongoing example throughout the text is modelling the opinion of a population of peasants towards one of two kings. But I kept wondering, could you design an entire game around this mechanic? Having to cause events and influence people to change an entire population's opinion?
What are people's reactions to this sort of gameplay concept? What are your ideas for a game centred around the flow of opinion in a population?
I have two imediate ideas. First, the obvious one - you are the propaganda minister of a 1984-style totalitarian state, and it's your job to keep the population in line. This would involve controlling the media, as well as the secret and non-secret police. You'd do things like silence troublesome voices in the community, hush up state-caused accidents, and try to keep the people ignorantly blissful.
My second idea is a little more involved. The game would be an open-world RPG set in an archipelago, in a 16th century sort of setting. Your job is to for some reason undermine a local monarchy supported by barons on each island. Just one approach to doing this would be to sway the opinions of individual barons, or possibly the general population of a given island, against the monarchy. Then you'd have either a revolt or an ally.
About the author
Studying mechatronic engineering and computer science at the University of Sydney. Game development is probably my most time-consuming hobby!
#2
However, I would think that lots of these social options could simply be implemented through dialogue trees, like any other RPG. For example, you could enter into conversation about a particular person, and if your conversation skills are good enough, you'd be able to convince whoever you're talking to to agree with you - and then they'd spread that opinion to other NPCs they interacted with. The AI backend doesn't need to be hugely complicated, since all the 'thinking' can be done by the developer, and expressed in the conversations you have.
The mini-game idea is a good one, and was the first thing I thought of when I read the article. There's a Terry Pratchett book which describes this very well... Night Watch, I think it was. There's a ball at a lord's house that some people are invited to who are opposed to the lord... they move through the party guests and chat to them, and gradually influence their opinions against the lord, so that when the lord is assassinated in front of everyone, there's no big reaction :P. Of course, it's a comedic fantasy book, but a game with this sort of mechanic could work equally well. You'd control things sort of RTS-style, determining who your agents talk to, etc. Then you choose when to make the final stroke, and if the party stays under control, you win!
And I do agree... it would be very hard to pull off :P. Especially the 1984 Sim City game... I'd actually love to attempt that, in the style of Defcon or something like that. But the amount of options you'd have to give the player would be tricky. I mean, if you're controlling the media outlets... what, do you let the player design posters? :P It'd be difficult to do things like internal politics without it becoming too 'gamey' and artificial - like, having a "denounce political enemy" button :P.
Also, what would your objective be? Would it just be Sim City style, see how long you can maintain the city? That wouldn't be a bad idea... the way 1984 ended, the message was sort of that the current balance of power would always continue - "imagine a boot stamping on a human face - forever." Maybe your objective is to see how long this actually does last before the revolution ;P.
06/01/2009 (3:32 am)
You're right about NPC interactions. If you had a game set up like The Sims, where your options are all social, then this would be far easier to implement. But if you're making an action game and want to feature social elements, you've got a lot more work to do, in terms of AI as well.However, I would think that lots of these social options could simply be implemented through dialogue trees, like any other RPG. For example, you could enter into conversation about a particular person, and if your conversation skills are good enough, you'd be able to convince whoever you're talking to to agree with you - and then they'd spread that opinion to other NPCs they interacted with. The AI backend doesn't need to be hugely complicated, since all the 'thinking' can be done by the developer, and expressed in the conversations you have.
The mini-game idea is a good one, and was the first thing I thought of when I read the article. There's a Terry Pratchett book which describes this very well... Night Watch, I think it was. There's a ball at a lord's house that some people are invited to who are opposed to the lord... they move through the party guests and chat to them, and gradually influence their opinions against the lord, so that when the lord is assassinated in front of everyone, there's no big reaction :P. Of course, it's a comedic fantasy book, but a game with this sort of mechanic could work equally well. You'd control things sort of RTS-style, determining who your agents talk to, etc. Then you choose when to make the final stroke, and if the party stays under control, you win!
And I do agree... it would be very hard to pull off :P. Especially the 1984 Sim City game... I'd actually love to attempt that, in the style of Defcon or something like that. But the amount of options you'd have to give the player would be tricky. I mean, if you're controlling the media outlets... what, do you let the player design posters? :P It'd be difficult to do things like internal politics without it becoming too 'gamey' and artificial - like, having a "denounce political enemy" button :P.
Also, what would your objective be? Would it just be Sim City style, see how long you can maintain the city? That wouldn't be a bad idea... the way 1984 ended, the message was sort of that the current balance of power would always continue - "imagine a boot stamping on a human face - forever." Maybe your objective is to see how long this actually does last before the revolution ;P.
#3
If you went to a different town, they didn't know anything about the attack, so they treated you normally.
This was something I was trying to develop for a "Peacemaker" style RPG. The full text for the concept is here www.geocites.com/infinitum3d but a quick summary is this;
Based on the crisis in the Middle East between Israel and Palestine.
There are two races, Orcs and Elves. Neither race is inherently good or bad, right or wrong. Both races believe the world is theirs, so they have tried to destrot the other. In doing so, they have polluted and defiled the world through use of violent magics and war machines to the point that there isn't enough food, fresh air, or water for all to survive. Both races risk extinction, unless you can convince them to make peace.
You have to role-play the voice of a mediator, going to both races to try to get them to;
1. stop the petty fighting
2. stop the large scale wars
3. help restore their own lands
4. join together to save the world
I think an "Opinion" algorithm could make it happen. Through dialog, there would have to be dozens different options. Your dialog options would be rated from "no aggression" (0) to "highly offensive" (10), and NPC's would react based on your level of coercion, or whatever.
Some NPC's would respond favorably to "subtle suggestions" bumping their favor to you by 1 point at a time. Others may need to be pushed harder, but then they respond by 3, 5, or even 10 points. The average Joe on the street may only be swayed by 1 point either way, but a high ranking political figure could be swayed 20 points with the right convincing.
my 2 cents.
Tony
06/01/2009 (5:07 am)
Way back in the year 1998, I played Might & Magic VI - Mandate of Heaven. One thing I liked about it was if you killed an NPC townsperson, even accidentally, the entire town immediately turned against you and attacked you. If you ran away, then returned, the people "remembered" your act. They didn't attack you now, but they remained hostile in attitude. Over time, you could eventually go back to the town, and they would gradually "forget", becoming more neutral.If you went to a different town, they didn't know anything about the attack, so they treated you normally.
This was something I was trying to develop for a "Peacemaker" style RPG. The full text for the concept is here www.geocites.com/infinitum3d but a quick summary is this;
Based on the crisis in the Middle East between Israel and Palestine.
There are two races, Orcs and Elves. Neither race is inherently good or bad, right or wrong. Both races believe the world is theirs, so they have tried to destrot the other. In doing so, they have polluted and defiled the world through use of violent magics and war machines to the point that there isn't enough food, fresh air, or water for all to survive. Both races risk extinction, unless you can convince them to make peace.
You have to role-play the voice of a mediator, going to both races to try to get them to;
1. stop the petty fighting
2. stop the large scale wars
3. help restore their own lands
4. join together to save the world
I think an "Opinion" algorithm could make it happen. Through dialog, there would have to be dozens different options. Your dialog options would be rated from "no aggression" (0) to "highly offensive" (10), and NPC's would react based on your level of coercion, or whatever.
Some NPC's would respond favorably to "subtle suggestions" bumping their favor to you by 1 point at a time. Others may need to be pushed harder, but then they respond by 3, 5, or even 10 points. The average Joe on the street may only be swayed by 1 point either way, but a high ranking political figure could be swayed 20 points with the right convincing.
my 2 cents.
Tony
#4
Tagged dialog. Define variables towards differing opinions on the subject matter, as well as a good set of generic dialog that is tagged for emotion and cues for the player, and this becomes a lot easier to achieve. Moving through the tree no longer becomes an automatic matter, but "skips" to other branches due to the changing variables.
At an MMO level, you can implement a scoring system like WoW brings out occasionally for their events: Players accomplish a task a certain number of times to reach a score goal, at which point a trigger opens an area. Except in this case, the trigger would represent the value of opinion on a scale.
Of course, players from the "other side" would be doing the same thing, and it would become a game of who has the bigger impact. Tools I can think of would be items like megaphones, soapboxes, pamphlets (last longer than talking because they take it with them, but reaches less people because fewer take them), posters, possibly some kind of way to contribute to TV air time, fund raising, etc.
There was a demo I wanted to do for IMGDC with Interrogative that I nicknamed "the court demo". Basically, you had an NPC "judge", a couple of NPCs that were "advocates" of an opinion, and a static object that contained "facts". As a player, you could obtain facts from the object and present them to the NPC as a way to change its mind, as well as using dialog that was "rolled" (dice rolls based on charisma, say). You could fail to sway the judge, or convince him. Depending on the facts, the judge could be deciding between the advocates, each of whom are declaring innocence in what happened to the object. Presenting facts and using rolled dialog to sound more convincing can get one NPC off and put another on the hook.
06/01/2009 (6:32 am)
Quote:However, I would think that lots of these social options could simply be implemented through dialogue trees, like any other RPG.
Tagged dialog. Define variables towards differing opinions on the subject matter, as well as a good set of generic dialog that is tagged for emotion and cues for the player, and this becomes a lot easier to achieve. Moving through the tree no longer becomes an automatic matter, but "skips" to other branches due to the changing variables.
Quote:I can see a lot of problems however with an open world, player-character game with how players interact with NPCs. It's going to be difficult to create a game where you train the player to think in a way of interacting with NPCs in a way of just a few options.
At an MMO level, you can implement a scoring system like WoW brings out occasionally for their events: Players accomplish a task a certain number of times to reach a score goal, at which point a trigger opens an area. Except in this case, the trigger would represent the value of opinion on a scale.
Of course, players from the "other side" would be doing the same thing, and it would become a game of who has the bigger impact. Tools I can think of would be items like megaphones, soapboxes, pamphlets (last longer than talking because they take it with them, but reaches less people because fewer take them), posters, possibly some kind of way to contribute to TV air time, fund raising, etc.
There was a demo I wanted to do for IMGDC with Interrogative that I nicknamed "the court demo". Basically, you had an NPC "judge", a couple of NPCs that were "advocates" of an opinion, and a static object that contained "facts". As a player, you could obtain facts from the object and present them to the NPC as a way to change its mind, as well as using dialog that was "rolled" (dice rolls based on charisma, say). You could fail to sway the judge, or convince him. Depending on the facts, the judge could be deciding between the advocates, each of whom are declaring innocence in what happened to the object. Presenting facts and using rolled dialog to sound more convincing can get one NPC off and put another on the hook.
Torque 3D Owner Morrock
I can see a lot of problems however with an open world, player-character game with how players interact with NPCs. It's going to be difficult to create a game where you train the player to think in a way of interacting with NPCs in a way of just a few options. It's not like an action game where it's pretty easy to accept that your actions are shoot your gun, or not shoot, and the enemy outcomes are going to be die or not die. In a game where the AI result can go one of one hundred ways, and in turn do the same to other NPCs, you'll need just as many player options as outcomes for them to be happy, but than you run into the problem of coming up with these hundreds of actions, per individual case, which can get pretty weary on the player.
It's one of those dilemma's which I guess you just have to try and see, though if it works, I would definitely play it. Maybe instead of a full game based on the idea, just a few mini-games/objectives within a larger one that take advantage of the feature would be safer and easier to do.