Back

ⓘ Programming game




Programming game
                                     

ⓘ Programming game

A programming game is a video game that incorporates elements of computer programming, 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 game, and multiplayer games where the players automated program is pitted against other players programs.

                                     

1. As puzzle games

Early games in the genre include System 15000 and Hacker, 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, 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, SpaceChem, and TIS-100 were created by Zachtronics, a video game development company known for its puzzle games that implement programming into their game mechanics.

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 objects 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, 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.

                                     

2. As competitive games

Many programming games involve controlling entities such as robots, tanks or bacteria which seek to destroy each other. Such games can be considered environments of digital organisms, related to artificial life simulations. Players are given tools to develop and test out their programs within the games 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 tournaments 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.

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.

                                     

3. 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 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.

                                     
  • average per game The Nash equilibrium for a two - player, zero - sum game can be found by solving a linear programming problem. Suppose a zero - sum game has a payoff
  • computer science, functional programming is a programming paradigm - a style of building the structure and elements of computer programs - that treats computation
  • methodology. Extreme programming has 12 practices, grouped into four areas, derived from the best practices of software engineering. Pair programming means that
  • Facebook. There are several organizations who host programming competitions on a regular basis. A programming competition generally involves the host presenting
  • programming about gaming or involving gaming The service will offer programming including shorts and Canadian original programs about gaming that will be
  • Match Game survive see episode status below In the early 1970s, CBS vice president Fred Silverman began overhauling the network s programming as part
  • educational programming language is a programming language that is designed mostly as an instrument for learning, and less as a tool for writing programs to perform
  • function of design and programming As games became more complex and computers and consoles became more powerful, the job of the game designer became separate
  • The ICFP Programming Contest is an international programming competition held annually around June or July since 1998, with results announced at the International

Users also searched:

best programming language for games for beginners, game programming courses, game programming in c++, game programming languages, how to code a game,

...
...
...