What is Game - An Inspiration from GMS Archetechture
source link: https://notlsd.github.io/2018/10/12/what-is-game/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
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-Equation
A Graph Definition by @notlsd
General-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
Recommend
-
53
plaid - An Android app which provides design news & inspiration as well as being an example of implementing material design.
-
69
What .NET code have you explored recently? If you’re anything like me then you’ve probably found yourself staring at your own code and that of the developers you work with for hours and hours. This is fi...
-
42
Discover is an updated Google feed experience that keeps you inspired and informed about the interests and hobbies you care about most.
-
28
README.md Salza λiquid text editor
-
50
README.md
-
24
问与答 - @sreal -
-
2
Working: Magisk with Google Pay as of gms 17.1.22 on Pie ...
-
7
入坑GMS – Mike's Blog 跳至内容 前几天在humble bundle看见有GameMaker:Stud...
-
5
Googlefier - Install GMS on Huawei/Honor ...
-
4
Abstract A common problem in practice is the comparison of two dependent s...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK