Games, MMOG-s (Massively Multiplayer On-Line Games), on-line social sites etc have become a major cultural and economic force. The main distinguishing features and attraction of these applications is their interactivity and emergent quality --participants constantly change the state of affairs with their actions. Gameplay, the resulting dynamic flow of events, is fascinating: this is like execution of an algorithm, where elementary actions are defined by game rules, but the logic, the flowchart is composed "on-the-fly" by players. Our understanding of games and gameplay is still on the level of alchemy. Search for adequate formal methods for description and classification of games and gameplay has only started. We do not have established and widely accepted models and methods; the proposed models and classifications of games are mostly subjective. Here is analyzed the current state of game research and proposed a game specification language, which allows to consider essential features of a new game before implementation. This together with proposed method for recording the "inner" working of games and gameplay allows better to understand games and gameplay and get objective data for studies. Some examples of game specification and recording of game engine's states demonstrate investigating dynamics and emergent qualities of gameplay.

Figures - uploaded by Jaak Henno

Author content

All figure content in this area was uploaded by Jaak Henno

Content may be subject to copyright.

ResearchGate Logo

Discover the world's research

  • 20+ million members
  • 135+ million publications
  • 700k+ research projects

Join for free

On Structure of Games

Jaak HENNO

Tallinn University of Technology

Abstract. Games, MMOG-s (Massively Multiplayer On-Line Games), on-line

social sites etc have become a major cultural and economic force. The main

distinguishing features and attraction of these applications is their interactivity and

emergent quality participants constantly change the state of affairs with their

actions. Gameplay, the resulting dynamic flow of events, is fascinating: this is like

execution of an algorithm, where elementary actions are defined by game rules,

-the-

Our understanding of games and gameplay is still on the level of alchemy. Search

for adequate formal methods for description and classification of games and

gameplay has only started. We do not have established and widely accepted

models and methods; the proposed models and classifications of games are mostly

subjective.

Here is analyzed the current state of game research and proposed a game

specification language, which allows to consider essential features of a new game

before implementation. This together with proposed method for recording the

     allows better to understand games and

gameplay and get objective data for studies. Some examples of game specification

and      demonstrate investigating dynamics and

emergent qualities of gameplay.

Keywords: Game, gameplay, interaction, specification language, emergence

Introduction

Video games (computer and console games) have become a major economic and

cultural force. The total revenues of game business in USA have grown ten times in the

last ten years and for several years are already greater than revenues of cinema business.

Even the current economic confusion has not affected the game business in

December 2008 game industry reported the highest single-month revenues in video

game history [

]. More and more people are participating in MMOG-s (Massively

Multiplayer On-line Games); rather similar are social networks (Twitter, Slasdot, Digg).

In this environment are constantly appearing new practices, e.g. new forms of language

(Twitter tweets, which can contain only 140 characters), new ways to listen music [

]

- game Pong was introduced in 1973) generation,

  

], is in many ways different from   

 [

].

Games have contributed to several changes in individual human beings and in

society, but the theoretical base for games study is week. There are no formal methods

to describe games and gameplay, to classify games in meaningful way. Classification

of games is often based on visual appearance (horizontal scroller, maze), on technology

used (arcade games, console games) or simply by game size (casual games), but these

classifications do not describe game nature, e.g. gameplay, which can actually be very

similar for games which in superfluous classifications are claimed different.

1. What is a Game?

If we want to understand and analyze games and game design, we must define what is a

, to determine the basic features, common to all/most games.

There are many different characterizations of games. When Ludwig Wittgenstein

considered different forms of games (children games, Olympic games, flirtation, Go

etc) he concluded   game

contains several concepts which share a "family resemblance" to one another [

].

Johan Huizinga considered in 1955 games as an art form: There is beauty in

games. I am fascinated by the rich gameplay so many games offer using only a

handful of rules. Every session of play becomes a performance; a ritualized dance

      s never the

same twice. Mine is an aesthetic appreciation of the freedom and possibilities set up

within the logical game space within the magic circle of the game ;  

are in fact at the very center of what makes us human. Play is older than culture" [

].

Cris Crafford, author of many successful games, also consider ed different aspects

of the word game and also divided the  into several classes: 

are subset of entertainment limited to conflicts in which players work to foil each

             

challenges, stories, competitions, and a lot more

].

The definitions become more similar     started to mean

mainly video, i.e. computer and console games:



 [

];

 - Sid Meyer, author of the very successful game

Civilization [

];

 [

];

A game is a form of art in which participants make decisions in order to

manage resources  - Greg Costikyan, another very successful

game designer [

];

s are  the content of a game is its behavior -

not the media that streams out of it towards the player.

These definitions (and many others) all underline the following features of

contemporary video games:

games are a new form of art, but u 

games require player introspection, active participation for creating the emotion, games

are art [

];

the main difference of this new art form is its interactivity: Interactivity is one of

the most important and distinguishable features of a game 

];

the main attraction of gameplay is its emergent quality the flow of events in a

game depends on actions of gamers and in a good game it is virtually impossible to see

beforehand what all can happen. All rounds of play are different, they appear as the

consequence of players actions, which itself are very simple, but create a highly

complex result: gameplay is an emergent quality of the game system [

]. Emergence

of gameplay is in many aspects similar to emergence of language from separate

communication acts [

], [

] or to emergence of complex patterns in simulation of

simple cellular automata [

], [

].

This created by players actions unpredictability is the main attraction of games,

 one thing: entertaining people...You have to make

10].

But fun emerges only if the game constantly presents new challenges and is

correctly balanced not too easy, but also not too difficult, so that players manage to

solve presented problems

too easy also kind of bore me [19 ]. Raph Koster, author of several successful MMOG-

s and former chief creative officer of Sony Online Entertainment claims: 

             

  ;    e feedback the brain gives to you for

[

], [

].

Even with current gaming revolution, it is still sometimes argued that games are

only little more than pastime, they do not have serious meaning. But what is the

meaning of e.g. Go game with very simple rules and setting, which has been played

centuries and which we still do not understand enough to create a program that could

play Go successfully against human players? The meaning of Go is the relationship

between the global and the local, between immediate profit and future potential and

how these are changed by our simple actions. Games make us consider effort and result,

cause and effect. Humans are very bad at understanding timed sequences of events:

we suck at odds assessment really ba  

]. Gameplay is just a

timed sequence of events; it is like executing of an algorithm where elementary actions

are determined by game rules, but the whole sequence and its consequences - by

gamers. The current gaming revolution can be considered as massive research of

elementary algorithms, a crossover with SETI@home.

There are more aspects of gaming. Games turn  practical goals and

reasons in on themselves and allow investigating them, enjoying them, setting them

free and escaping from them. World becomes free of everyday burdens.

Our modern life is like Tetris game we have not coped with one task when in

flows already another. Survey of workplaces in United States [

] found that nearly in

every three minutes workers were interrupted with some new task, message etc and that

people working on a computer had on average eight windows open at the same time

[

]. Specially designed games [

] help people to improve their ability to deal with this

flood of events and tasks, improve their mental skills (so-called fluid intelligence [

]).

Games change concept of broadcasting and provide a new understanding of

emergence of meaning. Information and knowledge are inherently social, studying

information and knowledge means studying information exchange. Meaning emerges

in network, in conversations. In on-line games always emerges communication and

players often create complex communication systems from scratch [

]. Games are a

new form of communication [

].

The ultimate purpose of every human activity is to make us happy. Research [

]

has shown that happiness and mental well-being is not directly tied to material well-

being. In current economical disturbances, happiness and mental health of many people

are decreasing. Gameplay provides easy way to get quickly positive emotions. No other

activity (everyday work) provides positive feedback so directly. However, how to

create games, which are fun, make players happy, force us to solve problems and learn

new skills?

2. How to describe a Game?

There have been several attempts to create some frameworks (more or less formal),

methods and models to describe and analyze games and to understand, what makes a

. The first such attempts were from game creators

themselves, but (a bit later) also academic researchers become interested in games.

Videogame is a dynamic process, with visual and audio UI (but also e.g. tactile and

force feedback have been used Wii, Dualshock). The most common (and most

superficial) classification of games is based on visual output:  



This classification does not help to understand, why some rather simple games had

tremendous success (Mario, Tetris), but others (designed with million-dollar budgets)

have failed. Classification based on game theme (action, adventure, educational,

emulator, fighting, puzzle, racing, role playing, shooter, simulator, sports, strategy,

traditional, serious, massive multiplayer) also does not tell much, since there are many

games which belong to several of these classes and there constantly appear new games

which do not clearly belong to any of established classes.

2.1. Classifications from game authors

Chris Crawford argued   The Art of Computer Game Design [7], that all

games have four fundamental elements:

representation - a closed formal system with explicit rules that subjectively

represents a subset of reality (quite often this is a virtual reality, invented in

this particular game e.g. like Portal [

]);

interaction - intricate web of cause and effect, by which all things are tied

together; the only way understand it is to let players generate causes and

observe effects;

conflict - player is actively pursuing some goal, but dynamic, purposeful

obstacles actively block the player's attempts;

safety - the results of a game are always less harsh than the situations the

game models.

Greg Costikyan identified the following main issues to consider by game designers

[11 ]: Decision making

Goals

Opposition

Managing resources

Game tokens

Information

Robin Hunicke, Marc LeBlanc and Robert Zubek introduced the MDA

(Mechanics-Dynamics-Aesthetics) framework [

] to describe games:

Mechanics describes rules and components of the game at the level of data

representation and algorithms;

Dynamics describes the gameplay, interactivity, run-time behavior of the

game over time;

Aesthetics describes the fun and types of expected emotional responses of

players: Sensation (sensory pleasure), Fantasy (make-believe), Narrative

(drama), Challenge (course of obstacles), Fellowship (social framework),

Discovery (uncharted territory), Expression (self-discovery), Submission

(pastime)            

change

the hierarchy     

just one component of fun .

Those are just different views of a game the technique practiced in IS modeling;

they help to understand, but do not yet provide basis for a formal model.

Several researches have followed the  

pattern approach to architecture, e.g.      

identified and described over 300 patterns in game design [

]. Their focus is on the

activities of the player and the patterns are purely verbal.

Raph Koster argues [

]  s have been:

Visual

Iconic

Not textual



He compares games with choreography and brings as an example the Laban

notation used to describe dance. But Laban notation describes fixed sequence of steps,

prescribed dance, while in a game t player( s) it is

never pre-determined, otherwise it is not a game. Only steps are fixed by rules, but the

whole dance gameplay is composed by players and is every time different. Koster

is searching elementary parts of       to

describe game dynamics, but he admits, that until now he has failed.

Game structure elements are also considered by Tracy Fullerton, Christopher

Swain & Steven Hoffman [

], but their list - Players, Objective, Procedures, Rules,

Resources, Conflicts, Boundaries, Outcomes - is rather obvious and not very helpful for

game designer.

Noah Falstein and Hal Barwood in their 400 Project have collected a large set of

rules for game designers [

]. Unfortunately, many of those rules seem trivial or vague:

Get the most out of your (always limited) material - either find ways to exploit an

element of your game, or cut it out All your game ideas must find a concrete

expression in playable elements

2.2. Classifications from Academic Community

The birth of video games (games using video screen to display game state) actually

occurred in serious scientific environment. In 1952 when A.S. Douglas was preparing

his PhD dissertation about Human-Computer interaction at the University of

Cambridge, he programmed Noughts And Crosses (Tic-Tac-Toe) for 35 x 16-pixel

screen connected to EDSAC computer to illustrate his thesis.

In 1985, when Mary Ann Buckles was studying German literature at UC San

Diego she become surprised by pop ularity of the game Adventure and made the

game and players the topic of her dissertation.

Many of the first game researches had literature/cinema/drama studies background

and wanted to carry over the techniques what they have learned there. Games were

  interactive narratives , procedural stories or remediated cinema

These are all very academic constructs and often show  ignorance concerning

 it's an attempt to skip the 20th century altogether and avoid any intellectual

contact with it, a consumerist double assassination of both the avant-garde and

advanced theory [

]. -

Academic community wake up and stated to think about games seriously only with

the turn of the new century. In 2001 was established the international journal of

 

] (2001 was declared 

studies), Gonzalo Frasca    initiated

the site ludology.org. Ludology is the discipline which studies games, play, toys and

videogames [

] (ludus = game (Latin), logos = science (Greek)).

Game authors use lot of metaphors and poetic language when speaking about

games (Koster: We like games that deliver a sense of an

endless world, living environments, and open- Academic researches

(especially with IT background) consider games as programs, dynamic systems. For

dynamic systems have been developed many theories, many types of models and

modeling technologies to describe their structure and dynamics. It is not difficult to

develop structural models to describe already existing games, but these models provide

little help for developers who want to invent new types of games. Games are very

different from conventional IT systems. For instance, the structural model of the Portal

game from Valve (at least the first levels) is very simple, but this does not tell anything

about surprising gameplay. Even simpler is the structure of the game Auditorium [

]

just on input flow of energy, several manipulators which allow to change the direction

of the flow and sound organs, the flow of interactions is also quite simple, but what

kind  -s?

An attempt to describe gameplay in terms of basic activities and categorize games

on this base is V.E.Ga.S. (Video Entertainment & Games Studies) tool [

]. The

        elemental building blocks in

Russian folk tales that form the basis of their narrative structure [

]. Propp reduced

fairy tales to a series of actions  performed by personae of the story and

claimed that all fairy tales are constructed using ca 31 of these plot elements which are

carried out by 8 different character types. These claims can be (partly) verified by the

Proppian Fairy Tale Generator [

]; for most reviewers the results are not very

convincing.

Creators of V.E.Ga.S. used similar idea to classify video games. By 2006, they had

analyzed 588 games, using  (they correfunctions ):

ANSWER, MANAGE, HAVE LUCK, SHOOT, CONSTRUCT/CREATE, BLOCK,

DESTROY, MOVE, AVOID, POSITION, TIME, SCORE. If any of these do not seem

applicable, the brick TOY is used (i.e. further classification is required). There are 8191

possible combinations of these bricks. However, in real games were found only 301 of

these and the classification turned out to be very one-sided 68.10% of all game

families contained only 1 brick, thus authors concluded that their original idea has

failed. However, they got some new insights. First, some seemingly rather different

games (different themes, graphics, sounds and/or interface) turned out to belong to the

same class, e.g. the platform game "Kong" (Clone of Donkey Kong), an arcade game

"Frogger" and a race game "Trackmania Nations ESWC" occurred in same class. In

the same class come out also a beat-them-up game "Comix Zone", the FPS "Doom"

and the classic platform game "Jazz jack Rabbit". However, this result can be explained

also another way - all these games are what Crawford [ 7] calls "Sensorimotor

Challenges" games which challenge rapidity and dexterity of the player.

On the positive side, there appeared 21 classes containing at least four bricks.

Analysis also showed, that there are some persistent combinations of bricks, which

  -          

SHOOT + DESTROY (Duck Hunt) and SHOOT-THEM-UP = DRIVER + KILLER

(Space Invoiders); for instance there were 9 families of games containing the

DRIVER+KILLER metabrick.

Raph Koster suggests in his grammar of gameplay [21] to consider time, as an

entire dimension of a game, i.e. time is not an objective in the same way as e.g. the

brick "AVOID". Time belongs to general structure of a game, the same way as the

brick "SCORE" - it is an indication of the performance of the player. After removing

these bricks and some further simplifications remained three meta-classes:

DRIVER + KILLER + MANAGE + POSITION

DRIVER + KILLER

DRIVER + KILLER + POSITION.

which all belong to the generic FPS class. All three classes maintain a strong

common feature DRIVER + KILLER, differences are in the way of presenting this

theme. The first class with additional bricks MANAGE + POSITION requires the

player to chase the enemy and to choose the appropriate weapon in order to face him.

The second class is only based on DRIVER + KILLER, the enemies appear continually

and automatically in great numbers just shoot, do not think (one fundamental rule

about enemies in a successful FPS games seems to be ,  . In the

third class POSITION usually makes the player to fight man-to-man with his enemies.

Another metabricks were GOD = MANAGE + CREATE (SimCity) and BRAIN

= ANSWER + AVOID (quizzes). Authors also suspected the metabrick TACTIC =

POSITION + BLOCK, but the evidence for this metabrick was not sufficient.

The idea of describing games  la Propp is definitely attractive. However, the

result seems to work sufficiently well only for FPS-s. But this is the most numerous

category of games, e.g. in the last ten years more than half of Annual Interactive

Achievement Awards from The Academy of Interactive Arts & Sciences (AIAS) (in

  , but also in several other categories) went to FPS. Maybe the

popularity of this genre has helped to understand the essence of this type of games

better than other types of games.

Since attempts to invent a generative device    have not been

successful, several researchers have tried to describe games by UML and other types of

diagrams. Flowchart-type diagrams were used to describe possibilities to advance in

simulations or adventure games [

], where gamers have to move around, find objects

and fill some tasks; similar approach was used in [

], [

]. These schemas describe the

 plan of rooms and what is in these rooms. The diagrams

are similar to story-beat diagrams [

] which describe the scene location, scene

description, the object and cast members in the scene, events game engine listens and

what actions they trigger, what happens in response to these events. The UML

diagrams used in [

] also describe the structure of a game, i.e. game settings, but not

what really happens in gameplay. In [

] were used colored Petri nets to describe on a

very high level       possible flows during

gameplay, but this very abstract model does not consider operational rules of the game.

3. How to see the "something "?

The current state of understanding of game design is sometimes compared with

 it was clear to the alchemists that  was generally being

conserved in chemical processes, even in the most dramatic changes of physical state

and appearance; i.e.      that could be hidden

under many outer forms, and revealed by proper manipulation [

]. Game designers

also are convinced, that in a good game there is It is

my belief that a highly mechanical and predictable heart, built on the foundation of

basic human psychology, beats at the core of every single successful game 

].

However, we still have not understood what   is and what are the

 .

People play games because they want to feel emotions and challenge [

]. Game

design is engineering of emotions. There are some studies of player

what happened before, during, and after play [

], [

], but in those studies the reason

for the player ns is only name of the game, no further details.

To build a scientific theory of something we need facts, gathered from experiments.

To build a theory of game mechanical and predictable heart data, gathered

by observing gamers and corresponding game states - the emotions, satisfaction, fun

depends on state of the game which they were playing.

Gameplay is like execution of a program. It consists of elementary actions (linear

code) and logic, which ties these elementary actions together. In gameplay, the

elementary actions (what player can do) are fixed by game rules. But players invent the

logic, which ties these actions into gameplay. Rules give only flow schema, decision

blocks are from player. Games are programs with variable logic, ballet with fixed pas,

but free choreography, tales, where character types and plot elements are known, but

the player determines how the story unfolds.

Player s emotion s, how they develop the story i  

G  

states game designer produces rules for interaction that, with the participation of the

player, generate game states that induce emotions in the player 

]. We need data

about this mapping, information about what happened in game and caused this or

another reaction. Arguments should be record ed parameters from game engine or

details of game (formal) specification. Otherwise understanding of games is

comparable with alchemy, the state of chemistry before discovery of the molecular

weight there is no base for periodic table of games.

Figure 1.  player in turn changes E.

3.1. Recording game's "inner" life

Objective, measurable data about gameplay is natural and easiest to obtain from

game itself. In static games (puzzles) game state can be recorded also from outside

screen capture + sound recording. This is a kind of bitmap image it shows, but does

not tell the structure of the state of the game. To restore the state of e.g. checkers from

an image positions of pieces should be recorded, i.e. bitmap should be transformed into

drawing. For dynamic video games, where the image on the screen is like

video/animation such outside recording is totally unsatisfactory.

A dynamic game is frame-based animation, similar to video. Static games can also

be considered like frame-based, only here frames do not change with constant speed,

but according to  actions/moves. The information (output to player) is changed

by the step function of the game engine. In order to get information about game state

       step function, which records the essential

information: state of game objects (position, speed, value of other attributes), amount

of player

when game is debugged [

] or when a recording feature is added which allows to store

gameplay as e.g. YouTube video [

].

Recording game parameters (usually only some of them) and presenting this

information on screen is common in many shooting games. For instance, in horizontal

shooter Star Track Ba   ship (on the left) has to fight attacking from right

enemies (lot of them the more the merrier!). Player  task is not to allow them to pass

his defense line. He can shoot them (orange circles are explosions where ship just had

destroyed some enemies), but there is a constant delay (reloading time) between his

missiles. He can move his ship only up and down (not out of the screen) and he has

from time to time contact his base (not visible) to get fuel. The last resort (if enemies

are approaching and he cannot shoot them

everything in a wide area before him, but after that, he should directly contact his base.

Figure 2. Star Track Battle (part of the screen) The upper band indicates amount of fuel, lower one number

of enemies approaching (on radar).

 - want to shoot

  speed and frequency of enemies etc, changing these makes game easier

or more difficult. We made with students some experiments about how reloading delay

and probability of the number of enemies, which appear during the reload time,

changed the overall appeal of the game.    

parameters the players themselves could change the parameters. Player can select the

difficulty, ( ) in many games, but usually it is not implicit,

which parameters are actually changed; here we revealed these parameters.

Table 1. Playe

Probability of new enemies

There were some other dependencies between game staotional

state, for instance all players agreed 

that, they wanted

to take more risks.

Some game data can make games easier to understand and thus increase the

enjoyment. In Tic-Tac-Toe an essential parameter for selecting the next square is the

: the number of all potential  rows (i.e. rows which do not have

any enemy symbols) minus the number of potential enemy rows (an application of

   ; after showing this value most players (even 6

years old!)  c-Tac-Toe after couple of plays. A

similar approach works well in many other combinatorial games, e.g. in -in-

Figure 3. Tic-Tac_Toe. 

R    is a standard procedure also in simulations where

emergent processes are studied. Usually these simulations are not games there is no

goal, but they are similar to MMOG-s and it is easy to transform them to games.

Figure 4. Visualization of simulation of emergence of common vocabulary. Agents are searching for food

(mushroom) and drink (bottle). Agents color indicates success of recent communications.

Probably the most natural way to study the function: game (inner) state

player's

emotional state is by  "games with a purpose" [

])

to prepare some simple games where recording function is added (ludems), put them

on-            tarted to

   yet

in initial state.

4. Game Specification

In order to study the function: game state

player

'

s emotional state we need

formal representation of the function argument - game.

Formal representation serves also many other purposes. Producing even a simple

game is not an easy (or cheap) task. It is virtually impossible to say beforehand,

whether the game will be good - we do not yet understand the nature of FUN. Game

implementers (programmers) should understand the idea of the game author (usually

they are different persons).

There have been several attempts to create a formal framework for game

description:

BOGuS - the BOard Game Specification language [

] to specify a board game

(using cards), to be played interactively by a user at a computer terminal;

The Trias Politica [

] - Game Specification in Normative Multiagent System,

which is based on Rao and Georgeff's specification language BDI{CTL} and uses

multiagent decision trees based on observations and recursive modeling and formal

obligations; it uses four kinds of agents, called legislators, judges, policemen and

citizens;

LOTOS - specifically developed for the formal description of the OSI (Open

systems Interconnection) architecture [

], is applicable to distributed concurrent

systems, e.g. MMORGs; system is seen as a set of processes which interact and

exchange data with each other and with their environment;

event/situation calculus, fluents [

], [

] etc

The best-known formal method for game specification is the GDL Game

Description Language, developed in Stanford [

], [

]. This is a special purpose

declarative language for defining games. The language is based on game states. The

state of a game is a series of facts, game mechanics - logical rules. The language is

designed to present game description in order to develop game-playing programs and it

is used in the AAAI General Game Playing (program) Competition, i.e. the purpose is

to automate game-playing, but creating game-playing programs gives little or no

insight to understand human  game.

GDL is a logical language, similar to Prolog, e.g. a GDL rule in Tic-Tac-Toe

is:

( ( ( ? ? ? ))

( ? ( ? ? )))

next cell x y player

does player mark x y

This rigorous (logical) form of specification allows presenting a game

unambiguously, but is not help humans to understand game nature. For humans,

especially for students participating in a game programming course far more useful is a

procedural language, which allows describing players and their actions, not

concentrating on relationships between them.

In the following is proposed a simple procedural game specification language ,

which is designed for use in game programming courses to introduce students to formal

methods of game description and allow them to present their games before

implementation. The language describes game as an event-driven system, using a

functional style, somewhat is considered also game visual and organizational structure.

The main elements of specifications are game objects, game events and objects

reactions to events. Game logic is considered only on the level of possible interactions

in gameplay how events are dispatched and what actions they trigger. The formal

level is not suitable for proving correctness of game-playing programs, but it allows

considering information flows in game program and thus finding inconsistencies in

specification very early. The formalism does not require end states and termination,

thus it can be also used to describe simulations and emergent processes.

5. The Game Specification Language

Game is an event-driven system, which players see as a frame-based animation.

Events trigger actions, which change the state of the system. Actions of players - how

they can change game states are defined by game rules.

The language assumes that specifications are implemented in a specific

environment, which implements the basic frame-based game loop, executing the

 start gameenter fame  etc.

It also assumes that the implementation environment is object-oriented and can create

some events created by interaction of game objects, e.g. collisions. The environment

should capture IO events (keyboard, mouse) and game-specific (i.e. defined in this

particular game) events and send information to players and create visual output.

For video games the visual side is very essential, thus the environment should

implement sprite graphics (drawing sprites on screen, scaling, rotating, flipping, alpha

blending and color transform) and also have vector graphics (2D or 3D). Graphic

objects - sprites and vector objects - should have coordinates and some attributes to

describe movement direction, speed. It should have collision detecting, at least the

simplest version, where the bounding box or sphere is used to detect collisions.

Several popular game programming environments: Gamemaker, Flash (AS3),

Openscript (Toolbook), Panda3D, Pygame etc satisfy (most) of these requirements,

thus are suitable as implementation environments for games, specified using this

language.

Specification is a 5-typle of disjoint sets

, , , , G Description O E A S

Description a brief description of the game in natural language (possibly with

images);

O classes of game objects. The set of classes O is hierarchically ordered, i.e. a

new class can extend some already existing class or some class defined by

implementation environment; notation

means that class

extends class

. Objects of classes (class instances) can get objects or data structures created from

other objects and/or their attributes as arguments when new objects are created, e.g.

object ship gets on creation event arrays missiles , enemies and explosions; when firing

a missile (creating a new object from the class Missile) passes these arrays to the

created object so that it can seek collisions with enemies and starts explosions.

The top object is constant

- this is the game engine, i.e. the

program, running the game.

Objects can receive and send events

, which are created by the system or by

other objects. The set of events of an object (class) O is denoted E(O); often it is more

compendious if the set of events is divided into input (what objects receive) and output

(what they send) events, denoted correspondingly

,

. In response to

received event objects perform actions and/or create new events. In event-driven

systems events are usually considered to be properties of the whole class, i.e. they are

sent to the class, not to some particular object of the class, but in game specifications it

is often very convenient to allow events which are sent to some distinguished object of

the class and not to the whole class. For instance, in turn-based game (e.g. Tic-Tac-

Toe) event turn is sent only to one player , won , loose are sent to different players and

e.g. it does not have sense to send event next (next frame) to enemies, who are dead.

This behavior is easy to implement using some object attributes in event specification.

Classes (both active and passive) have the set

of properties (attributes),

i.e. class variables. Attributes can have type public , private , static with usual

semantics. In most environments (Gamemaker, Flash) default type for all attributes is

private (local in Gamemaker), but for beginners it is often more convenient to set the

default type in specifications of attributes public beginners have often problems

concerning limited access to attributes. This also simplifies specifications, e.g. in the

Tic-Tac-Toe example (below) players do not need to manipulate their own arrays of

marked cells they can use the corresponding data structures of the game controller

(the top object).

All attributes have a fixed domain of allowed values. Objects

, which have

visual representation on screen, have attribute

- sprite of the object. Sprite

can be one image, but also a set of several images and/or animations, e.g. a DirectX or

Collada 3D-object can have built-in animation

.

For correct rendering to screen sprites are collected into an ordered display list or

(alternatively) objects have attribute Depth. Adding its sprite to display list is an action,

which objects must perform when they are added to game, i.e. as a reaction to event

Create. Since this depends on implementation environment, the feature is not shown in

specifications.

Usually domains of attributes are numeric and are (primitive) types in underlying

implementation language/system, i.e.

,

,

etc. There could be also

some operations defined on attribute domains (e.g. the negation operation on the

domain of sprites in example 1), i.e. attribute domains are abstract algebras. Common

properties for visual objects are their coordinates in game space (2D or 3D) and their

movement characteristics speed, direction. While coordinates are usually expressed in

Cartesian coordinate system, the movement can have several representations as a

vector (i.e. speed vector coordinates) but can be expressed also as direction angle and

linear speed along the direction line (polar representation).

Most classes allow generating several instances of objects from class, but some

classes are singular, have only unique object ( controller ).

The set of input events contains constant

- this is the event, when an

object (instance of a class) is added to the game (in object-oriented systems this means

executing the constructor function). Another common event is step - frame change, i.e.

new frame. To describe complicated interactions the event step (or some other event)

should be divided into several consecutive events: begin step, step, end step (as e.g. in

Gamemaker).

Common events are mouse and keyboard events: click , over, out, keypress and

interaction, collision of objects reaction to this event can make ball to bounce from a

pad. The collision event is not symmetrical; it occurs only when an object (e.g. object

bullet) executes testfunction collision(Other) and result is passed only to the object

who initiated test. Collision has different variations depending on how precisely it is

calculated whether only bounding boxes are used or it is necessary to find exact

contact of object surfaces.

Sending an event e to object O is denoted by

Here

are optional attributes of the event.

Game begins with event

This event is unique (for the object controller) and cannot occur later. This start

event may have attributes e.g. difficulty of level, addresses of servers where the game

is hosted etc.

To receive an event, object or class should be able to receive this event, i.e. be

event listener. In the following the listener declarations are omitted, it is assumed that

when an event

is sent to some class O or to some specific object

it has

corresponding reaction (action)

.

It is often convenient to allow objects to have states. Very common are states

based on attribute visible non-visible objects usually do not perform actions, thus

they also do not respond to several events, e.g. to animation event next. Structure of

object states can be more complex, e.g. a fighter can have states Creeping, Shooting,

Dead , a rocket can have states Flying, Landed, Fuelling etc. For objects with states,

the event actions become case-structures.

S stands for Sprites, visual (maybe also audio etc) denotation of objects. In

specifications, this is usually needed only to distinguish different objects from a class.

The set Sprites can have relations and/or operators, e.g. negation to indicate other (not

the same) object.

The following (partial) example illustrates the main ideas behind the proposed

high-level specification language.

In the example variable identifiers begin with capital letter, constant (object)

identifiers allowed value, prefix Arr denotes

an array (actually set, the order and indexing are not used) and actions are described in

a pseudocode.

         

implementation. Implementation depends heavily on implementation environment and

can be rather different in different environments.

Example1: Tic-Tac-Toe

Tic-Tac-Toe=

{ , , },{ , , , }, controller Player Square create turn move draw S

Description: two players take turns to mark a 3 x 3 grid; the player who succeeds

in marking a whole row, column, or diagonal wins.

xo

( ) { [], [], [], }

blank lines

attr controller Arr Arr Arr Arr

( ) { , ( , , )}

in

E controller create move Sprite i j

( ) { , , , }

out

E controller turn won loose draw

( ) { } attr Player Sprite

The operator acts on the set of sprites as negation, i.e.

The gameplay is described by reactions of objects to events:

( , ) {

( 1,2,3) ( 1,2,3)

{ ( ) . ( , ), . ( ( ))};

[[ (11), (22), (33)],

[ (21), (22), (23)],

[ (31), (32), (33)],

[ (11), (21), (31)

blank

lines

f controller create

for i for j

sq ij Square create r i c j Arr push sq ij

Arr sq sq sq

sq sq sq

sq sq sq

sq sq sq ],

[ (21), (22), (23)],

[ (31), (32), (33)],

[ (11), (22), (33)],

[ (13), (22), (31)]]

x . ( x);

o . ( o);

( x, )}

sq sq sq

sq sq sq

sq sq sq

sq sq sq

player Player create sprite

player Player create sprite

player turn

( , ( , , )){

. ( ( , ))

( ) {

(won, ( )),

(loose, ( )),

exit}

{

{ ( , )}

Sprite

lines Sprite

blank blank

f controller mark Sprite i j

Arr push sq i j

if Arr Arr

player Sprite

player Sprite

else

Arr Arr sq i j

( ){

(turn, ( }

{

(draw, ( }

(draw, ( }}}

blank

if Arr

player Sprite

else

player Sprite

player Sprite

( ) { , , , , }

in

E Player create turn won loose draw

( ) { ( , , )}

out

E Player move Sprite i j

( ( ), ) {

( ( , ) . ){

( , ( , , )}}

blank

f Player Sprite turn

sq i j controller Arr

controller move Sprite i j

6. Conclusions

Games have become a very significant factor in our society. They enable us to get

positive emotions and essentially shape our     

[3 ], but our current understanding of games is on the level of   

something, but is it logiston or  Here are proposed some new views games are

mappings from game states to player's cognitive and emotional statesgameplay

is like execution of an algorithm, where elementary action blocks are determined by

game rules, but the logic (decisions, connecting these blocks) by player(s), their

cognitive and emotional states. In order to understand games we should study the

function: gam e (inner) states

player's emotional states. The existing models of

game influence on player emotional state are based on subjective opinions. If player

emotional state is considered as a function of the game, the argument of this function is

usually    In order to investigate the mapping from game states to

player   here is proposed a formal specification method for games and

demonstrated on examples use of information from game engine at playtime.

References

[1] http://www.gamasutra.com/php-bin/news_index.php?story=21885 (14.01.2009)

[2] http://blog.wired.com/business/2009/01/six-ways-cellph.html (14.01.2009)

[3] Mark Prensky. Digital Natives, Digital Immigrants, On-line: http://www.marcprensky.com/writing/

(14.01.2009)

[4] M. Prensky (2001). Do they really think differently? On the Horizon, MCB University Press, Vol. 9 No.

6, December 2001, http://www.marcprensky.com/writing/ (12.01.2009)

[5] Wittgenstein, Ludwig (1953/2002). Philosophical Investigations. ISBN 0-631-23127-7

[6] Johan Huizinga (1955) Homo Ludens.A Study of the Play Element in Culture. Boston, Beacon Press

[7] Chris Crawford. The Art of Computer Game Design. McGraw-Hill/Osborne Media, 1984 , ISBN 0-

88134-117-7; On-line: www.vancouver.wsu.edu/fac/peabody/game-book/Coverpage.html

[8] Katie Salen, Eric Zimmerman (2004) Rules of Play. The MIT Press 2004

[9] http://en.wikipedia.org/wiki/Civilization_(computer_game) [14.01.2009)

[10] Ernest Adams and Andrew Rollings (2003). Andrew Rollings and Ernest Adams on Game Design,

New Riders 2003, ISBN-10: 1592730019

[11] Greg Costikyan: I Have No Words & I Must Design. http://www.costik.com/nowords.html

(14.01.2009)

[12] Markus Friedl. Online Game Interactivity Theory. Charles River Media 2002, ISBN-10: 1584502150

[13] Markus Friedl. Online Game Interactivity Theory. Charles River Media 2002, ISBN-10: 1584502150

[14] Joris Dormans (2008) Visualizing Game Dynamics and Emergent Gameplay. Meaningful Play 2008,

Oct 9-11, 2008, http://meaningfulplay.msu.edu/proceedings2008/mp2008_paper_40.pdf (14.01.2008)

[15] J. Henno (2007) Emergence of Names and Compositionality. Information Modelling and Knowledge

Bases XVIII, IOS Press, Amserdam, pp 80-100, ISSN 0922-6389

[16] J. Henno (2007) Emergence of Language: Hidden States and Local Encironments. Information

Modelling and Knowledge Bases XIX, Hannu Jaakkola, Yasushi Kiyoki & Takahiro Tokuda (eds), IOS

Press Amsterdam-Berlin-Oxford-Tokyo-Washington DC, ISBN 978-1-58603-812-0, pp 170-181

[17] Conway, H. J. (1982). What is life. In Berlekamp, E.,, Conway, J. H., & Guy, R. (Eds.). Winning ways

for your mathematical plays (vol. 2). New York: Academic Press (Chapter 25)

[18] http://mathworld.wolfram.com/CellularAutomaton.html (14.01.2009)

[19] Raph Koster (2004) Theory of Fun for Game Design. Paraglyph Press, ISBN 10: 1-932111-97 - 2

[20] Raph Koster. Theory of Fun for Games. Keynote speech at Game Developer s Conference 2005,

http://kotaku.com/tag/game-developers-conference/ (14.01.2009)

[21] Defining Games: Raph Koster's Game Grammar.

http://www.gamasutra.com/view/feature/1979/defining_games_raph_kosters_game_.php (14.01.2009)

[22] Jonathan B. Spira, David M. Goldes (2007) Information Overload.: We Have Met the Enemy and He Is

Us. Basex, Feb. 2007, http://www.basex.com/web/webdownloads.nsf/io?openform (4.01.2009)

[23] T. Klingberg (2008) The Overflowing Brain: Information Overload and the Limits of Working Memory.

Oxford University Press, 2008, ISBN-10: 0195372883

[24] Brain Workshop. http://brainworkshop.sourceforge.net/ (14.01.2009)

[25] S. M. Jaeggi, M. Buschkuehl, J. Jonides, W. J. Perrig. Improving fluid intelligence with training on

working memory. PNAS 10.1057, http://www.pnas.org/content/early/2008/04/25/0801268105.abstract

[26] Luc Steels (2005) The emergence and evolution of linguistic structure: from lexical to grammatical

communication systems. Connection Science, Vol. 17, No. 3-4, pp. 213-230

[27] Innocent, T., Haines, S. 2007. Nonverbal communication in multiplayer game worlds. In Proceedings

of the 4th Australasian Conference on interactive Entertainment (Melbourne, Australia, December 03 -

05, 2007). ACM International Conference Proceeding Series, vol. 305. RMIT University, Melbourne,

Australia, 1-9.

[28] Ed Diener, Robert Biswas-Diener (2008) Happiness: Unlocking the Mysteries of Psychological Wealth.

Wiley-Blackwell, ISBN 1405146613

[

] http://en.wikipedia.org/wiki/Portal_%28video_game%29

[29] R. Hunicke, M. LeBlanc, R. Zubek. MDA: A Formal Approach to Game Design and Game Research.

http://www.cs.northwestern.edu/~hunicke/MDA.pdf (14.01.2009)

[30]     . Patterns in Game Design. Charles River Media, 2005, ISBN

1584503548, 9781584503545:

[31] Raph. Koster (2005) A Grammar of Gameplay. Game Developers Conference 2005,: Futurevision

[32] Tracy Fullerton, Christopher Swain & Steven Hoffman (2004) Game Design Workshop: Designing,

Prototyping, and Playtesting Games. CMP Books, ISBN-10: 1578202221

[33] http://www.theinspiracy.com (14.01.2009)

[34] Markku Eskelinen (2001). The Gaming Situation. Game Studies, July 2001 -

http://www.gamestudies.org/0101/eskelinen/; revised version -

http://www.file.org.br/pdfs/english/TheGamingSituation2.pdf

[35] http://gamestudies.org/0802 (14.01.2009)

[36] http://www.ludology.org/ (14.01.2009)

[37] http://www.playauditorium.com/ (14.01.2009)

[38] Julian Alvarez, Jean-Pierre Jessel, Damien Djaouti, Pr. Gilles Methel, Rashid Ghassempouri.

Morphological study of the video games. Proceedings of the 3rd Australasian conference on Interactive

entertainment, ACM International Conference Proceeding Series; Vol. 207 2006 pp 36-43

[

] Propp, V. (1927). Morphology of the Folktale. Trans., Laurence Scott. 2nd ed. Austin: University of

Texas Press, 1968

[39] http://www.brown.edu/Courses/FR0133/Fairytale_Generator/gen.html (14.01.2009)

[40] Taylor, M. J., Gresty, D., & Baskett, M. (2006) Computer Game-Flow Design. ACM Computers in

Entertainment, Vol. 4 No. 1, article 5

[41] Bethke, E. .(2003) Game Development and Production. Wordware Publishing, Plano, TX.

[42] Siang, A., Rao, G. (2004). Designing interactivity in computer games: A UML Approach. Int. J.

Intelligent Games and Simulation 3, 2

[43] Games and Simulation 3, 2 (2004).

[44] Onder, B. (2002). Writing the adventure game. Game Design Perspectives. F. Laramee (ed.). Charles

River Media, Hingham, MA. pp 28-43.

[45] J. Dormans (2008) Visualizing Game Dynamics and Emergent Gameplay. Meaningful Play 2008 ,

http://meaningfulplay.msu.edu/proceedings2008/mp2008_paper_40.pdf (14.01.2009)

[46] S. Bura. (2006) Game Grammar. http://www.stephanebura.com/diagrams/ (14.01.2009)

[47] http://interpretivealchemy.blogspot.com/ (14.01.2009)

[48] Daniel Cook. The Chemistry Of Game Design.

http://www.gamasutra.com/view/feature/1524/the_chemistry_of_game_design.php (14.01.2009)

[49] Nicole Lazzaro. Why We Play Games: Four Keys to More Emotion Without Story.

http://www.xeodesign.com/xeodesign_whyweplaygames.pdf (14.01.2009)

[50] J. Asensio        A Social and Emotional Model for Obtaining

Believable Emergent Behaviors. LNCS 5253 (2008), pp 395 -399

[51] Amyris Fernandez. Fun Experience with Digital Games: a Model Proposition. Interact 2007, Sept 10-

14, Brazil. http://www.fun-of-use.org/interact2007/

[52] S.Bura. Emotion Engineering in Videogames. http://www.stephanebura.com/emotion/ (12.01.2009)

[53] Bac k to The Future. http://gamesfromwithin.com/?p=102 (14.01.2009)

[54] Share Your Experience: YouTube Integration In Games.

http://www.gamasutra.com/view/feature/3855/share_your_experience_youtube_.php (14.01.2009)

[55] Games With a Purpose. http://www.gwap.com/gwap/ (12.01.2009)

[

] http://www1.cs.columbia.edu/~sedwards/classes/2009/w4115-spring/proposals/Bogus.pdf (11.09.2009)

[

] G. Boella, Leendert van der Torre. Game Specification in Normative Multiagent System: The Trias

Politica. 2004 IEEE/WIC/ACM International Conference on Intelligent Agent Technology (IAT'04),

2004, pp504-508

[

] T. Bolognesi, E. Brinksma. Introduction to the ISO Specification Language LOTOS.

ftp://ftp.inrialpes.fr/pub/vasy/publications/others/Bolognesi-Brinksma-87.pdf (11.09.2009)

[

] M. Thielscher. A Unifying Action Calculus. http://www.fluxagent.org/download.php?file=07-UAC.pdf

(11.09.2009)

[

] S. Schiffel, M. Thielscher. Reconciling Situation Calculus and Fluent Calculus. Proceedings of the

Fourteenth National Conference on Artificial Intelligence (AAAI), Boston, MA, AAAI Press 2006, pp

287-292

[

] Game Description Language. http://games.stanford.edu/language/language.html (11.09.2009)

[

] http://games.stanford.edu/language/language.html (11.09.2009)

... It is an interactive form of generation that has game-like aspects to the conductors' interactions with the algorithmic modifications: a dynamic obstacle game. In this sense it resembles "4-way-confusion (4 agents)" games structure in which "four agents traveling in four opposing directions, meeting at nearly the same time [22] or (form the individual conductors perspective) a "Frogger"-like structure in which "one agent encounters many perpendicular crossing agents" [23]. The game analogy is perhaps amplified by the inclusion of an Audience View, allowing the audience both to hear and view the interactions of the streams, and the conductors' attempts to maintain control under conditions in which their choices are undermined and their ability to utilise the algorithmic modifications to subvert the control of the other conductors. ...

This paper describes the concepts, implementation and context of Tectonic: Rodinia, for four realtime composer- conductors and ensemble. In this work, an addition to the repertoire of the Decibel Scoreplayer, iPads are net- worked together using the bonjour protocol to manage connectivity over the network. Unlike previous Score- player works, Rodinia combines "conductor view" con- trol interfaces, "performer view" notation interfaces and an "audience view" overview interface, separately iden- tified by manual connection and yet mutually interactive. Notation is communicated to an ensemble via scores in- dependently generated in realtime in each "performer view" and amalgamated schematically in the "audience view" interface. Interaction in the work is enacted through a collision avoidant algorithm that modifies the choices of each conductor by deflecting the streams of notation according to evaluation of their "Mass" and proximity to other streams, reflecting the concept of shift- ing Tectonic plates that crush and reform each other's placement.

  • Jaak Henno Jaak Henno

Game programming is part of many IT study programs. In these courses and in game-programming texts games are not considered on abstract, implementation-independent level, but discussion is based on some specific implementation environment: a programming language (C, C++), a software package, preprogrammed libraries etc. Thus instead of discussing games on general, implementation-independent level only specific features of these programming environments are considered. Here is presented a framework for object-oriented, structural description and specification of games as event-driven object-oriented systems. At first should be considered game visual appearance and game mechanics --they create the "feel", player's experience. Game structure and logic are considered on implementation-independent level using an easy-to understand specification language. The framework emphasizes separation of data structures from game engine and game logic and thus facilitates maintenance and reuse of game assets and objects. Mechanisms for automatic adjustment of game's difficulty --so that it will be just suitable, not too easy but also not too difficult --are also considered. The specification method is illustrated with several examples. Specifications of games created with this method are easy to transform into implementations using some concrete game programming environment; this has been tested in a game programming course.

The aim of this article is first to present V.E.Ga.S., a tool which intend to classify video games, study their nature and to corroborate hypothesis by a pragmatic approach. It consists in studying a significant number of video games in order to index their composition of elementary "game bricks". Basing our study on this bricks and crossing them, we try to classify and study video games. In a second time, this paper presents the classification deduced from the results of V.E.Ga.S.

Utilizing sophisticated methodology and three decades of research by the world's leading expert on happiness, Happiness challenges the present thinking of the causes and consequences of happiness and redefines our modern notions of happiness. shares the results of three decades of research on our notions of happiness covers the most important advances in our understanding of happiness offers readers unparalleled access to the world's leading experts on happiness provides "real world" examples that will resonate with general readers as well as scholars Winner of the 2008 PSP Prose Award for Excellence in Psychology, Professional and Scholarly Publishing Division of the Association of American Publishers.