Petar Kotevski personal page
Proudly powered by
News & Events
Ideas & Rants
Game Reviews
Other Interests
About Me

DISCLAIMER: The articles and commentary expressed on this site are personal and do not represent in any way the opinions of any companies that I work for (or have worked for) or represent (or have represented in the past). The program code and instruction on this page is provided "as-is". I am not responsible for any damage occurring from using that code or following any instructions as specified here.
A solution for implementing NON-LINEARITY in games
20 May 2001

Often, when I read articles on game design and reviews of games, the issue of gameplay is referred to as "linear". This pertaining to the way a particular game does or should unfold as the player plays it. I've seen enough energy wasted in the quest for non-linearity, which in the loosest possible terms would mean more independent choices in the game for the player. This got me thinking, and experimenting with the games that are making the headlines nowadays, and what I find didn't particularly shock me. It seems that today, the industry is no closer to resolving this issue: the games are still hopelessly linear.

On that light note let me first and foremost define what I mean by the term linear, so that later I can explain how my proposition helps to resolve it. The continuum of linearity has in one extreme books (stories). They are the most linear thing out there. No matter how hard you try, how carefully you examine, there is one thread of events and it is played out in meticulous order. On the other end of the same continuum, there is real life. Now here, at any given time, you are free to pursue any course of events and the outcome is (largely) indeterminate. I rate linearity in games by the number of independent choices a player has at a particular game junction. By independent, I don't mean the typical adventure game problem:

The wizard Reginald has to tell you at this point in the game that the flask is in the chest. You have been to all the other characters, and upon attempting to talk to any of them, you get the single sentence "Thank you, goodbye" in the menu of possible things the game allows you to ask them. So you get to Reginald, and you get more then one choice: "Where is the flask?", "Nice morning.", "I shall make you suffer slow and terrible death!". If you ask any other question then the obvious one, you get: "Yeah, but its bound to rain later." and "Temper, temper, my child.", but you always go back to the same point, each time one "course of action" poorer. Until finally you ask the damn question, and continue the game.

These are not choices. This is just window dressing and I don't think anyone is fooled by it. Independent choices have to produce different outcomes for the game, and often completely opposite. You should be able to finish the game as the village hero, but you should also be able to finish it as the guy no one wants to talk to anymore (TIME WARP NOTE: The game Fable (the web site is horrendous, BTW) was not out when I was writing this, and even now it doesn't really offer what I am talking about). I think will be the charm of the games yet to come : not always finishing as the good guy.

After all this, one might ask how to make a game with such structure, while still providing the player with an experience of the game world. The answer to this question might be easier then it seems at first. I propose: games that generate their content.

I see a couple of eyebrows raised, thinking well DUH! - its not like you discovered a big thing. It's just recycling of the procedural game data generation approach. Well, this is not what I have in mind. I will start with a set up that I think will clearly state what I mean.

Say that we have a multiplayer game (meaning massive multiplayer). The thing with multiplayer games is that as the number of players in them grows, so does the consumption of game data. Indeed, it doesn't matter how much the writers and artists and programmers slave over the content, it will soon be devoured by the players, unless your multiplayer game lets all the players go trough the same thing (which is lame). So, instead of bugging the people who produced the initial content to create some more, why don't we design the game in such a way that it survives with an initial set up, and then we let the players add content to it, in a controlled fashion. Wow, that was a mouthful. An example is in order:

Set up: Multiplayer FRPG. We employ a experience system for the players, based on statistics (strength, agility, magic etc.). We introduce some items that have a positive and a negative effect on the players stats while they are in his possession. We distribute them trough the game world, and we initialize the game content with quests for their retrieval. After a very short time, the items will fall into the hands of certain players (ideally the best ones). Now we add the functionality that the players can create quests themselves and reward the hero who accepts them with money, experience and/or special training. The quests would most likely be "Take item from this player and give it to me", or "Assassinate this player and give me his possessions" or even "Protect me while I travel to this place". This way, there will always be new quests to finish, and their level of difficulty will vary depending on the opponent that they are directed against. Players will earn experience and money, others will die at the hands of mercenaries and start over. There would be alliances that will be forged to protect friendly players from hostile players etc. The incentive foe playing the game would be the prestige in the players community.

This is all well and nice for multiplayer community games, but how about single player games? The concept can be applied to these games too, but with less success. This can be done by programming the NPC to have certain interaction between themselves, and enable a piece of information from the game to transfer from one NPC to another. In that way, there is no telling where you have to go to get a piece of information, because it can be virtually anywhere. And look at real life: if you want to have peasants in your game, program them to act like real peasants (waking up at early dawn, going to the field, working, trading once a week in the village etc). There are patterns in real life that can be easily translated into state machines that can create the illusion of indeterminism. Enable the transition of information between characters (say peasant one met peasant two at the square in the village and passed some game critical info to him) and you have game. Not only that, you have game for which no walk-trough will be complete, or 100% accurate.

And that is what I will call non-linearity. The future of games is pretty much defined. Massive online games is the way to go, and creating games that allow the players to create content for the game while they are actually playing it will be something that will keep the game in circulation longer. Even single player games that can't escape from the classic notion of gameplay will be obsolete before they hit the shelves. I just have to look at the games that I recently purchased : although hyped before their release, they quickly lose their appeal. It has been shown thousands of times in the past that longer game circulation means more sales as more and more gamers get interested and want to find out what the "big deal" is. And in the long run, gamers will benefit as well, as the game will feature more of the much desired realism, and will be more of an intellectual challenge to the player.

Petar Kotevski


(all HTML tags are supported, no formatting will survive unless its written in HTML - not even a new line)

Bot protection: