Real time games consist of events that are concurrent, parallel, and asynchronous.

Elegant UI and UX is primarily consecutive and synchronous (with subtle concurrent micro interactions).

So much of the time, humans need concurrent data converted to a consecutive flow.

Examples in other domains

For example, when a narrative has parallel action, the audience is presented with consecutive scenes that are intended to actually be taking place at the same time.

In networked web infrastructures, servers communicate in partially blocking manners.

A server may receive a request (Request A) which requires it to make multiple requests to other servers. The server can asynchronously process multiple requests, but it won’t return Response A until all of its dependent requests are returned.

That is a partially blocking process. The first server aggregates responses from other servers, using blocking to convert asynchronous flows to synchronous flows.

Human mind UX

When a games asks a player to make a decision, the player’s brain is effectively a server. The game makes a request and waits for a response.

When the game is turn-based, the game is synchronous and waits indefinitely until the player finishes making a decision.

When the game is real time, the game does not wait for the player. Instead, there is a race condition with a timeout. The player needs to make a decision within a limited amount of time.

If the timeout is too short, then the player will not be able to make a good decision, and/or the game will be stressful.

If the timeout is too long then the player will likely become bored.

<aside>

Sometimes being required to make fast decisions can be a challenge in itself, though that usually limits the scope of decision types a game can leverage.

</aside>

Most games tend to gravitate either toward a short timeout (action games) or no timeout (turn-based games.

Interaction dialogs

A useful mechanic in games is for a player to interact with an actor, and the player’s UI mode to switch to a 2D GUI.

This hybrid approach allows UX to get the best of both worlds between 2D and 3D displays, but it has several inherent problems with parallel action.

  1. Over the course of the interaction’s duration, how does it integrate with the rest of the simulation?