SecondTalon wrote:Even with only two options, it quickly gets large, what with a tree five levels deep branching twice at each junction having 21 endings (assuming I did my math right)
The first branch gives you 2^1 endings; the fifth branch gives you 2^5=32 endings.
The game that I would call closest to being truly open is Dwarf Fortress.
In the time that it took me to write this post, people have already moved away from the totally open-ended game to the choose-your-own-adventure model, so the rest of the post may or may not be applicable. I'm leaving it because it took me forever to write, though.
Consider Dragon Age:Origins, the next game by the people that made Baldur's Gate. Each character has a different origin story, so your first branch is at the character creation screen, rather than the first scene. If, for example, you go with a three-way Mexican standoff in the first scene, you can have your player first pick who they are in the standoff. Functionally, it's no different from making character creation the first scene, but it gives you a more plausible way to start off with a large number of choices at the first screen.
There are two ways to make games.
One is to write everything, the other is to make a reality simulator.
Almost all RPGs take the first path. It's considerably simpler, and with moderate effort you can include the majority of the options people would want. Imagine coming across a group of Slavers in Fallout; there are a limited number of commonly selected options. You can ignore them, you can kill them and free the slaves, you can kill them and take the slaves, or you can join them. You run into problems here when the designers' and players' imaginations differ; the evil character will wonder why they can't take the slaves if the designers didn't leave in that option (think Morrowind, where you would often come across slaves in smuggler caves- but even if you're a Telvanni racist, all you can do is free them, kill them, or walk away). So, how 'open-ended' a game of this type is depends on how well the choices a player is offered match up with the choices the player wants.
The second path is considerably more difficult, but is common in various internet games. The old example is Conway's Game of Life
; consider Auditorium
as a more modern (and more fun) example. It's a very simple reality with simple mechanics, but you can get rather complex behavior out of it. Here, the qualifications for open-endedness are the same- how well the choices a player is offered match up with the choices the player wants. But while it's very easy to give you only slightly limited choice in a two-dimensional puzzle game, it's much, much more difficult to do so in a three dimensional game with intelligent actors. The reality and mechanics are no longer simple, and the behavior is orders of magnitude more complex.
For example, consider replacing the economy in Fallout 3 with a real economy. I'm going to be using Fallout as an example to give things names; in reality (as in, something we could make as a proof-of-concept) we're talking about a simulator with agents and some world that they live in, which would probably be outputted as some form of Roguelike. It would be easy to add to the Fallout world once we get the GECK, but we may run into difficulties with implementation.
First, what is an economy? It's a system that directs the use of limited resources to satisfy unlimited wants. To have an economy we need: 1) Agents with wants 2) resources which fulfill those wants 3) a way for agents to obtain, trade, and consume those resources.
So, what sort of wants do agents have? They want to eat, they want to sleep, they want to be healthy, they want luxuries. They also might have relationships- they want their family or the other members of their gang to be happy. They might have goals- Dad wants to complete Project Purity, Lucas Simms wants Megaton to be safe, Zimmer wants to find A3-21.
How do agents fulfill these wants? Here we run into where the two ways of designing games look similar- in order to simulate reality, you have to write your simulator. An agent that wants food should consider growing it, finding it, buying it, stealing it, and begging for it (and I might even have forgotten an option). Agents might have moral compunctions that influence their choices- Lucas Simms really doesn't like stealing food, but if you put him in a desperate enough situation, he will (but you can't make him desperate enough to eat his son, for example, while you might be able to get Billie Creel desperate enough to eat Maggie).
Just writing a program that can compare those options is non-trivial. A common approach in agent-based computation is to have each agent simulate the world; consider the Game of Life again. Each cell only knows what exists in its neighbors, and chooses to be alive or dead based on how many of its neighbors are alive or dead. Similarly, a Megaton Settler may only be familiar with Megaton and the area directly around it, so when she decides where to eat she looks at a small list of food sources- food she owns, the Brass Lantern, scavenging at Springvale, hunting Mole Rats, and stealing from people in town. She assigns a number to each option based on its chance of success times its degree of success, minus something for its risk (comparing someplace that gives food 50% of the time but is safe to a place that gives food 80% of the time but kills you the other 20% should depend on the agent's risk tolerance function), finds the one with the highest number, and then tries it. It would also be reasonable add a "brand loyalty" functionality- if buying food at the Brass Lantern works two or three times in a row, then the settler may default to that option until it stops working rather than make a decision every time they want to get food. That's only worthwhile if decision-making is costly and the world is relatively static- which is true in the real world for some things, and may be true in the Fallout world for some things.
Now, that just deals with making one decision at once. What about making a big decision? Let's say the Vault Dweller walks up to a Megaton Settler and says "hey, I want to open a shop in Rivet City. How'd you like to run it?" How will the NPC consider the offer?
Now, something that you can do to simplify things is come up with 'professions.' Let's say someone with a certain risk tolerance and skill set decides that they'll become a city-dwelling mechanic (someone with a higher risk function might become a tinker on a caravan). If they're aware of multiple cities, how will they pick which one to live in? If you've given them a profession and given cities demand for professions, then it becomes simple- they compare the supply-demand (at least, what they know of it) in the cities they know of, as well as the safety of those cities, and the ability of those cities to provide for their wants. But now you have to deal with agents choosing between professions- should I be a competent but only modestly needed mechanic, or should I be a modestly competent but needed merchant?
Now, at this point you may be saying "Vaniver, we know you like economics, but this is a giant wall of text. When is this going to get back to game design?" That's the problem with reality simulators- it order to take advantage of the opportunities that manipulating real systems provides, you have to have the real systems. For example, a common tactic in my D&D games is to find a monster-infested region, buy it from the owner, and then clear it out. That previously worthless mine is now a gold mine (literally) because the Balrog's dead- but you can't use that tactic unless the designer specifically codes it for you or you have a system of property rights and agents willing to sell property. But if you want to make a real economy so you can use real economics in making in-game decisions, you have to make a real economy that works
. If you put in realistic food consumption, you need to put in realistic food production- or pretty soon you're going to be walking through ghost towns because the person that made NPCs need food didn't give those NPCs a way to get food for more than a few weeks. Instead of hiding the backend behind a curtain, you need to reveal it- this is where the Tenpenny residents get their money from, which is why they can buy food from Margaret, and this is where Margaret gets her food from. If there are kinks in the system, the agents need an intelligent way of fixing it- maybe one of the caravanners decides to start running brahmin meat between Arefu and Tenpenny, or Margaret buys food from the player at a higher price than other merchants.
Think about Dwarf Fortress again, because that's what this game is going to be like, especially when it comes to iterative improvements. Every piece of reality needs to be added one step at a time- maybe first is the food-based economy. Then you make equipment actually composed of parts- so you can cannibalize the barrel from one rifle to fix the barrel that broke on another rifle, but you can't just walk up to an NPC and have them magically produce a barrel. You can get a new barrel made, which requires a forge of some sort- but there should be at least one in the wastes somewhere, and you could even do it yourself once you get one, or rent access to one. You can make items from their components, be it assembling an AK47 from the parts of five shattered ones or a tailor making a new brahmin-skin outfit out of brahmin skin and thread.
You can accomplish a lot of this with starting conditions, but the whole point is that the world needs to dynamically react to the player. Your actions should be able to redirect the economy or the politics of the region- you should be able to open a tavern that competes with Moriarty (or kill him and take his), and you should be able to become the new sheriff of Megaton- and if you do that, what should stop you from becoming more powerful? You can quickly accumulate the caps necessary to hire the settlers into constructing new things, be it a wall to protect a brahmin range or underground homes to increase the population of Megaton. You could kill Tenpenny and take his tower (that's how he got it in the first place, isn't it?), and make a New DC Republic, which the other groups in the area should respond to- maybe you end up at war with the Enclave (or, hell, join the Enclave!), or the Brotherhood (or the Outcasts), and gain control of Rivet City though diplomacy or military action.
But getting back to open-endedness- the point is you have to be able to do what you want. You should be able to establish a city on a flat plain next to a radioactive waste dump site- and the only people you can get to move there are the slaves you buy (that then try to run away). But while something like that is easy to do with a rogue-like Dwarf Fortress, they're difficult or impossible to do with a graphically sophisticated game like Fallout 3.
Consider the themes for your house. Those are all preset collections of objects place by the developers, which are enabled when you buy that theme and disabled when you buy a new theme. An alternative way to do it is sell the furniture piece by piece and make nodes that you can place furniture in- I remember fondly homes in Asheron's Call, where an apartment had a chest, a bed, a floor spot or two, and two wall spots, where you could hang paintings or trophies or weapons. It wouldn't be that difficult to make something similar in Fallout (and, actually, that's probably the first mod I'll try once I get the GECK). But the Fallout system is totally unprepared for placing down a house wherever you want it. The strongholds in Morrowind were similar to the themes- there were various versions that got enabled or disabled based on your status in the quest. Even Raven Rock, where you decided which buildings were placed, was the same- there were just two versions and you picked one.
And, think about it. The data structure in Fallout isn't conducive to being open-ended at all; if I launch a mini-nuke at someone's house made out of tin sheets, their house should be destroyed and they should die. That's easy to do when the tin sheets are objects existing in the same world as the person and the nuke; difficult when the house is an indestructible extradimensional space.