What is Game - An Inspiration from GMS Archetechture

Before building a game, there’s a significance to understand “What is Game”. And “Game Maker Studio 2” (abbr. GMS) is @notlsd’s favourite game engine, the game engine’s architecture is a clue to understand this meta-question of game design. Some basic knowledge of GMS is good to understand but not required.

Definition of game from “Rules of play : Game design fundamentals” by Salen & Zimmerman

A game is a system in which players engage in an artificial conflict, defined by rules, that results in a quantifiable outcome.

This is one of the most widely recgonized academic definition of game. The key words there are SYSTEM / PLAYER / ARTIFICIAL CONFLICT / RULES / QUANTIFIABLE OUTCOM. We will compare it with GMS equation later.

The GMS Equation

This is the last page of the first chapter of official guide of GameMaker Studio 2 which introduces some basic configuration of GMS engine which @notlsd call it “GMS equation”

GMS-EquationGMS-Equation

A Graph Definition by @notlsd

General-Game-ArchitectureGeneral-Game-Architecture

This graph is drawn by pseudo-UML language, which defines a game.

A game is finite number of rooms under level-up conditions which includes sprites under event-action responses

Five Key Words - A Detailed Comparison Between Two Definitions

  • SYSTEM - FINITY of Game Design

There are two type games, finite game and infinite game<span class=”hint–top hint–error hint–medium hint–rounded hint–bounce” aria-label=”This conecept comes from “Finite and Infinite Games” by James Carse
“>[1]
, but only the first type can be designed.

The following is definition in Wbester-Meriate’s dictionary of word “System”, more specificaly the 1d item

A group of devices or artificial objects or an organization forming a network especially for distributing something or serving a common purpose

What we designed is a system. If and only if we use the finity resoures the system can be built. The apperance of this finity is the limited quantity of game rooms[2].

  • ARTIFICIAL CONFLICT - Series of LEVEL-UP ROOMS

What game designer have built is an artificial conflicts. More specifically, we use system to implement it, via programmer’s terminology “system is instantiation of an artificial conflict”.

The artificial conflicts consists a series of rooms in which contains it’s own envent-action response<span class=”hint–top hint–error hint–medium hint–rounded hint–bounce” aria-label=”There is more detailed discussion in “RULES” section
“>[3]
. A room is a physical or virtual space where game take place. As game going on, status in different rooms have been leveled up gradually. In extremely simple condition, game only consists one room and level-up just in that room.

  • PLAYER - Human or Artificial SPIRITES

According to Wikipedia):

In computer graphics, a sprite is a two-dimensional bitmap that is integrated into a larger scene

It’s a little sophisticated about the important role which sprites plays in game design. Mario is the sprite in Super Mario Bros; Pikachu is a sprites in Pokémon; Pac-man is the sprite in the Pac-man. Sprites is too important in game design that Apple names iOS game design framework “SpriteKit”.

in the view of programming perspective, players in game is sprites. These players can be controlled by Human which is player’s avatar itself , or controlled by A.I. which simply called NPC (Non-player-contolled).

  • RULES - EVENT-ACTION Response

GMS is using Event-Action to represent basic game logic. As we mentioned earlier the core difference between rooms is the different event-action response they contains

The following is definition in Wbester-Meriate’s dictionary of word “Play”, more specificaly the 4c item

to perform an action during one’s turn in a game

In the system the player plays. The key concept of “play” itself is to perform some action to respond some event, In “Tetris” when bricks drops off, the player move it, In “Civilization” player respond to massive number of event from “Declaration of War” to “Change Production Queue”

  • QUANTIFIABLE OUTCOM - LEVEL-UP of everything

Quantifiable outcom is the connection of everything in the game. The gaming terminology is “Level-up”. During the game process, players and enenimis are all become stronger. And if you cannot level up enough, you lose. These stepped level-up is also the source of game’s rythms.

Instances Analysis - Tetris • Civilization • Overwatch • Go • Slay Spire

Game Type Room Sprite Event Action Quantitive Level Up Finity Criterion
Tetris Puzzle Display box Bricks Dropping Bricks Moving Bricks Count of Elemination No Space
Civilization TBS Geographic Map Cities • Units Turn-based Event Player’s action Culture • Food • Gold • Happiness • Production • Religion • Science • Tourism • Population etc Any Civilization Win
Overwatch [4] FPS Artificial Map Hero Others’ Action Heros’ Action Ultimate Time Up / Map Control
Slay Spire Card Battlefiled Box • Map Player • Enemy Enemy’s Action Player’s Action Coins • Relic • Card 50th Floor / Death
Go Board Go board Go stone Opponent ‘s Stone Play Stone Territory No Space
  • Update Log 2.0 - Add Everthing related about “Finity” including but not limited to words, graph and table
  • Update Log 2.1 - Fix Wikipedia link problem

  1. 1.This conecept comes from "Finite and Infinite Games" by James Carse
  2. 2.There is still a very clear boundry in AR / VR game, in other word we can clearly tell if we are in the game.
  3. 3.There is more detailed discussion in "RULES" section
  4. 4.Thanks to @Banaive for information about Overwatch