Airstrike: Goal oriented game play

This is a summary of the "goal oriented game play" discussion I initiated on the Airstrike mailing list:
1. Airstrike levels
2. Airstrike level "incredients"
2.1 A goal
2.2 Obstacles
2.3 Resources
2.4 Rewards
2.5 Penalties
2.6 Information
3. Gameplay types and player lives
4. To sustain player interest
5. See also

- Eero Tamminen

1. Airstrike levels

Airstrike has several things which can be used to implement Airstrike levels:

2. Airstrike level "incredients"

To be interesting, each of the levels should have the following elements:

  1. A goal (and a variety of related sub-goals)
  2. Obstacles (designed to prevent you from from obtaining your goal)
  3. Resources (to assist you in obtaining your goal)
  4. Rewards (for progress in the game, often in the form of resources)
  5. Penalties (for failing to to overcome obstacles, often in the form of more obstacles)
  6. Information

The list is from the book associated with the "Game On" Art exhibition.

2.1 A goal

For deathmatch the goal would be to kill the other player (given number of times).

For co-operative mode, the goals could differ between each level. They could be moving or destroying objects. In later versions this could also including taking control of them or transferring them to somewhere else. Subgoals can be done by triggering other triggers.

For single player games the goal can also be to get points, to beat some highscore.

2.2 Obstacles

Obstacles are the other players, sprites that obstruct player's flying (either just by being inmovable or by following him) and things that directly or indirectly harm the player (e.g. missile vs. bonus that creates a missile aimed at player).

2.3 Resources

Resources are currently only fuel and bombs, but later on it could also be time (if there would be a time bonus that affects timer triggers), other kinds of weapons and better plane models.

Lack of an resource is also an obstacle.

2.4 Rewards

Currently additional fuel can come from generators or bonuses, bombs come only from bonuses. There are additional "rewards" in form of other bonuses such as the one that clones the player sprite (on level 3) or generates harmless other sprites. "Reward" can be something like a visual or sound effect, or some kind of dynamics in the game (consider for example "Carmageddon", which basically is only fun because you can crash your car in a very elaborate way).

Another traditional reward is that the player can earn money for buying better weapons and aircraft (DOS "Scorched Earth" and Amiga/Atari "Supercars" are nice examples for this). For bying some kind of a "shop" (screen) is needed though.

2.5 Penalties

Penalties can be added with triggers e.g. for destroying or approaching something or just being too late. For example, there can be a timer trigger that will activate a proximity trigger than will trigger a missile generator when player approaches a "goal" too late. There being more and more enemies is also a kind of a punishment.

2.6 Information

Currently the game shows only information about level name, that bombs or fuel have ended and the reason for level ending, but there should be indications of the number of remaining lives, fuel, bombs and any cargo the sprite has.

The description for the level goal (end-condition) should also be shown at the level start, unless the goal is finding how to end the level.

3. Gameplay types and player lives

Most interesting games are the ones that have an element of interaction with other players. Based on how players behave against each other the gameplay can be separated to three different types:

Deathmatch:
Both the goal and main challenge is surviving against the other player(s)
Hostile competition:
Althought the challenge in the level (is supposed to) come from the other player(s) (shooting / crashing into you), the goal is designed so that neither killing the other player(s) nor co-operation between them is needed to achieve the goal
Friendly competition/co-operation:
Neither the goal nor main challenge are directly related to what other player(s) do. These levels work also as single player levels
Mandatory co-operation:
The goal cannot be achieved without other player(s) co-operating

Number of lives player has are relevant only to the first two level types. Levels where players race against each other (goal: do N rounds through the level) would fit into both middle categories, but making fuel scarse enough would discourage players from fighting each other.

For example a level that works like the classic Breakout game would be in the friendly competition category, but without scoring it's rewards wouldn't be so obvious. If certain parts of the screen would be accessible only to one of the players, then it would be mandatory co-operation. Co-operation where other player(s) would need to be alert all the time, but wouldn't have anything to do most of the time, would be annoying. Therefore, all the players would need to have always something to do.

Airstrike doesn't (currently) support having different goals for different players. Players can be playing different sprites on a level though, this can make the mandatory co-operation more varied.

4. To sustain player interest

To sustain interest:

With the Ulf's new scripting support adding new levels is easy. Adding new objects is also quite easy to do with Povray, but some coding is needed for new (i.e. surprising) behaviour. Just adding an ogg file on repeat that can be specified per level should be quite trivial addition for background music, but performance-wise 'mod' files played with libmikmod would be even better.

5. See also