Abstract | Introduction | Foundation | Design Flow in Games | Implement Flow in Games | Conclusion | Bibliography

Design Flow in Games

Video games as a media can be reviewed as two essential components:

Game Content - The soul of a video game; a specific experience the game is designed to convey

Game System - The body of a video game; an interactive software that communicates Game Content to the players through visuals, audio and interactions

When treated as content, the definition of Flow is too broad. However, if applied properly, it can literally happen in every game. In order to make a game special, it requires content that is more sophisticated than Flow experiences.

But when treated as a system Flow explains why people prefer certain games more than other games and how they become addicted towards these games. If a game meets all the core elements of Flow, any content could become rewarding, any premise might become engaging. [Sweetser & Wyeth 2005]

From the simplicity of Tetris to the complexity of Civilization IV, video games have already proven to the world that anything can be fun if players can access Flow.

Expand the Flow Zone

Assume the content is attractive to the audience. Designing a video game is very much about how to keep the player in the Flow and eventually be able to finish the game. Therefore, the game system needs to maintain different players' experiences inside the Flow Zone.

In Figure 2, the red curve represents an actual experience a player gained through playing one segment of a video game. The player may feel a certain part of the game experience is a little bit harder or easier than their expectation. But he can still tolerate and maintain his Flow experience inside the safe zone.

If the actual experience gets too far away from the Flow zone, the negative psychic entropy like anxiety and boredom will break player’s Flow experience. See Figure 3.

Unfortunately, like fingerprints, different people have different skills and Flow Zones. A well-designed game might keep normal players in Flow, but will not be as effective for hardcore or novice players. See Figure 4.

For example, a simple action to an FPS player such as shooting, might be an extremely difficult task for a casual gamer just starting a game. Even though the rest of the game might be something that casual gamers enjoy a lot, the harsh beginning just turns them off.

In order to design a game for broader audiences, the in-game experience can’t be linear and static. Instead, it needs to offer a wide coverage of potential experiences to fit in different players’ Flow Zones.

To expand a game's Flow Zone coverage, the design needs to offer a wide variety of gameplay experiences. From extremely simple tasks to complex problem solving, different players should always be able to find the right amount of challenges to engage during the Flow experience. These options of different gameplay experiences need to be obvious, so that when players first start the game they can easily identify the corresponding gameplay experience and delve into it.

Create Dynamic Flow

Game Tuning & Static Flow

Every so often, gamers describe an engaging game experience as "Well tuned". Tuning represents the process of a game designer using playtesting to iterate the design and manually polish the game experience until it gets close to evoking Flow. However, as the video game market expands, game tuning based on playtesting cannot satisfy the mass audience any more.

Playtesting usually involves multiple testers to reveal the potential Flow entropies in the game. On one hand, these entropies can be obvious at a micro level e.g. crashes, typos, texture flaws and bad dialogs. On the other hand, from a macro level, flaws inside core mechanics, plot arrangement, level difficulties and overall game progression are hard to identify. Today's playtesting is also very discontinuous. Each tester is in charge of different segments of the game. Without a view of the big pictures, Flows at the macro level are never really tested.

Game tuning also indicates the rigidity and linearity of the final game experience. The experience is adjusted for the specific testers and designers who cannot represent the variety of the mass audience. Flows in these games are very static. They can’t adapt to different types of gamers.

In order to realize optimal experiences for a much wider audience, not only do we need to offer a wide Flow Zone coverage, we also need a highly adaptive system to weave the rich gameplay experiences together, adjusting Flow experiences based on the players.

Passive Flow Adjustment

The biggest dilemma on Flow adjustment is whether or not to create a system to adjust the gameplay for the player. Under this kind of passive system, players can enjoy the Flow experience fed by the system.

Much research centers around designing a system that adjusts the difficulty based on the player's performance. This kind of system-oriented DDA works under an iterative adjusting loop.

The loop consists of four fundamental elements:

  1. Player - Create raw data inside the game through playing
  2. Monitor System - Choose critical data reflecting player’s Flow state and pass it over Analysis System.
  3. Analysis System - Analyze player's Flow state and notify the Game System about what needs to be changed
  4. Game System - Apply changes to the gameplay based on the request from Analysis System

Theoretically, this system should be able to maintain player's Flow by constantly reacting to the feedback collected from him. [Bailey & Katchabaw 2005] However, there are still several key unsolved problems , which makes this type of passive flow adjustment hard to implement.

No direct data - Video games do not read what player thinks yet. Up until today, the most common connections between players and video games are still going through game controllers. With limited inputs, the possibility to sense player's Flow state directly is very low. Although there are biofeedback devices on the market, people still lack the knowledge for imaging data into Flow and emotions. Most of the measurements are still based on assumptions and incomplete statistics.

Performance does not mirror Flow - Video game designers and researchers have figured out ways to estimate player's performance through sampling limited data like “Total Kill”, “Accuracy” and “Headshot”. However, performance is objective while Flow is subjective. When a player is in the Flow of just jumping around in Super Mario Bro but not finishing any level, the DDA system will have trouble to sense that.

Analysis based on assumptions - Assumptions never work for mass audience. When a player enjoys performing a suicidal stunt in Grand Theft Auto, it would be ridiculous for a DDA system to assume that the player's skill is too poor because of the death count.

Changes are based on rigid design – The way a system adjusts its difficulty is pre-determined by the designer. Different designers use their own preferences when deciding how many changes should be applied; however, the individual preferences of a designer will never represent the preferences of a mass audience. [Costikyan 2004] 

Active Flow Adjustment

Considering the core elements of Flow, most of the system-oriented DDA designs were over focused on one aspect, balancing between challenge and ability. However, they ignored the other important core element, to make player feel a sense of control over the game activity.

Mihaly Csikszentmihalyi often describes Flow as driving a small boat in parallel to the current. Being able to drive freely gifts a sense of control over micro action, and being carried by the current offers a sense of control over the macro activity, therefore evokes Flow.

In traditional passive media, like the current, the sense of control comes from the sense of progression and positive feedback. [Adams 2002] In video games, not only can players gain control from the progression, they can also earn it through driving the boat, which is in fact making meaningful choices. So why don't we give the players choices in a video game and let them navigate their Flow experience?

In order to create a game like this, as we mentioned in 4.1 Expand the Flow Zone, the game needs to offer a pool with a wide spectrum of activities and difficulties for different types of players to swim inside. Based on players’ tastes, each individual will choose different choices and work at a different pace to navigate through the game.

Once a network of choices is applied, the Flow experience is very much customizable by the players. If they start feeling bored, they can choose to play harder, vice versa.

Embed Choices into Gameplay

Player-oriented DDA offers an active mechanic for players to control their in-game Flow experience. However, the implementation of these choices is not trivial.

In order to adjust Flow experiences dynamically and to reduce Flow noises, the choices have to appear in a relatively high frequency. These frequent choices might become potential interruptions for players who are in the Flow Zone.

The easy solution that might come to mind is to implement a monitor system to detect whether or not it is a good time to offer choices to the player. However, monitor systems are still not mature enough to be able to detect player’s Flow. The only solution is to embed choices into the gameplay, let the player treat choices as part of the play and eventually ignore them. Thus their choices will become intuitive and reflecting their actual desires.


Designing game systems where a wide range of players can get into Flow is not difficult:

  1. Expand your game’s Flow coverage by including a wide spectrum of gameplay with different difficulties and flavors
  2. Create an Player-oriented Active DDA system to allow different players to play in their own paces
  3. Embed DDA choices into the core gameplay mechanics and let player make their choices through play

If a game designer can apply the above methodologies upon his own design, the game will become more dynamic and flexible, allowing more people to get into the Flow and finish it.

> Top