HOME

TheInfoList



OR:

A programming game is a
video game A video game or computer game is an electronic game that involves interaction with a user interface or input device (such as a joystick, game controller, controller, computer keyboard, keyboard, or motion sensing device) to generate visual fe ...
that incorporates elements of
computer programming Computer programming or coding is the composition of sequences of instructions, called computer program, programs, that computers can follow to perform tasks. It involves designing and implementing algorithms, step-by-step specifications of proc ...
, enabling the player to direct otherwise autonomous units within the game to follow commands in a domain-specific programming language, often represented as a visual language to simplify the programming metaphor. Programming games broadly fall into two areas: single-player games where the programming elements either make up part of or the whole of a puzzle video game, and multiplayer games where the player's automated program is pitted against other players' programs.


As puzzle games

Early games in the genre include '' System 15000'' and ''
Hacker A hacker is a person skilled in information technology who achieves goals and solves problems by non-standard means. The term has become associated in popular culture with a security hackersomeone with knowledge of bug (computing), bugs or exp ...
'', released in 1984 and 1985 respectively. Programming games have been used as part of puzzle games, challenging the player to achieve a specific result once the program starts operating. An example of such a game is ''
SpaceChem ''SpaceChem'' is a puzzle game, puzzle and indie game by Zachtronics Industries, based on principles of automation and chemical bonding. In the game, the player is tasked to produce one or more specific chemical molecules via an assembly line b ...
'', where the player must use its visual language to manipulate two waldos as to disassemble and reassemble chemical molecules. In such games, players are able to test and debug their program as often as necessary until they find a solution that works. Many of these games encourage the player to find the most efficient program, measured by the number of timesteps needed or number of commands required. Other similar games include '' Human Resource Machine'', '' Infinifactory'', and '' TIS-100''.
Zachtronics Zachtronics LLC is an American video game developer, best known for engineering-oriented puzzle video games and programming games. Zachtronics was founded by Zach Barth in 2011, who serves as its lead designer. Some of their games include ''Space ...
is a video game development company known for its programming-centric puzzle games. Other games incorporate the elements of programming as portions of puzzles in the larger game. For example, '' Hack 'n' Slash'' include a metaphor of being able to access the internal programs and variables of objects represented in the game world, pausing the rest of the game as the player engages this programming interface, and modify the object's program as to progress further; this might be changing the state of an object from being indestructible to destructible. Other similar games with this type of programming approach include ''
Transistor A transistor is a semiconductor device used to Electronic amplifier, amplify or electronic switch, switch electrical signals and electric power, power. It is one of the basic building blocks of modern electronics. It is composed of semicondu ...
'', '' else Heart.Break()'', ''Glitchspace'', and '' Pony Island''. Another approach used in some graphical games with programming elements is to present the player with a command line interface to issue orders via a domain-specific language to direct objects within the game, allowing the player to reissue commands as the situation changes rather than crafting a pre-made program. Games like '' Quadrilateral Cowboy'' and '' Duskers'' have the user command several small robotic creatures in tandem through the language of code to reach a certain goal. '' Hackmud'' presents the player with a simulated mainframe interface through which they issue commands to progress forward.


As competitive games

Many programming games involve controlling entities such as
robot A robot is a machine—especially one Computer program, programmable by a computer—capable of carrying out a complex series of actions Automation, automatically. A robot can be guided by an external control device, or the robot control, co ...
s,
tank A tank is an armoured fighting vehicle intended as a primary offensive weapon in front-line ground combat. Tank designs are a balance of heavy firepower, strong armour, and battlefield mobility provided by tracks and a powerful engine; ...
s or
bacteria Bacteria (; : bacterium) are ubiquitous, mostly free-living organisms often consisting of one Cell (biology), biological cell. They constitute a large domain (biology), domain of Prokaryote, prokaryotic microorganisms. Typically a few micr ...
which seek to destroy each other. Such games can be considered environments of digital organisms, related to artificial life simulations. An early example is '' Core War'' (1984), where programs written in a standardized assembly-like language battle for space in a finite memory (virtual magnetic ''cores''). Players are given tools to develop and test out their programs within the game's domain-specific language before submitting the program to a central server. The server then executes the program against others and reports the results to the player, from which they can make changes or improvements to the program. There are different
tournament A tournament is a competition involving at least three competitors, all participating in a sport or game. More specifically, the term may be used in either of two overlapping senses: # One or more competitions held at a single venue and concen ...
s and leagues for the programming games where the characters can compete with each other. Usually a script is optimized for a special strategy. Similar approaches are used for more traditional games; the World Computer Chess Championship consists of matches between programs written for the abstract strategy game of
chess Chess is a board game for two players. It is an abstract strategy game that involves Perfect information, no hidden information and no elements of game of chance, chance. It is played on a square chessboard, board consisting of 64 squares arran ...
. The competitive programming game has also found its way to various board games such as '' RoboRally'' or ''Robot Turtles'', typically where a program becomes a premade deck of playing cards played one by one to execute that code. Researchers presented ''RoboCode'' as a "problem-based learning" substrate for teaching programming.


Related areas

Open world games that feature the ability for players to construct environments from an array of building blocks have often been used by more advanced players to construct logic circuits and more advanced programs from the fundamental blocks. ''
Minecraft ''Minecraft'' is a 2011 sandbox game developed and published by the Swedish video game developer Mojang Studios. Originally created by Markus Persson, Markus "Notch" Persson using the Java (programming language), Java programming language, the ...
'' is one such example, as while the game provides a limited set of blocks that mimic switches and electric circuits, users have been able to create basic functional computers within the virtual world, and at least one modification is aimed to teach children how to program on the virtual computer in a simplistic language. Several sites, such as '' Codecademy'', help to teach real-world programming languages through gamification, where video game principles are used to motivate the user.


See also

* Programming games category * List of digital organism simulators * Visual programming language *
Zachtronics Zachtronics LLC is an American video game developer, best known for engineering-oriented puzzle video games and programming games. Zachtronics was founded by Zach Barth in 2011, who serves as its lead designer. Some of their games include ''Space ...


References


External links


The Programming Games Wiki
{{VideoGameGenre Video game genres