Programming game

A programming game is a computer game where the player has no direct influence on the course of the game. Instead, a computer program or script is written in some domain-specific programming language in order to control the actions of the characters (usually robots, tanks or bacteria, which seek to destroy each other). Most programming games can be considered environments of digital organisms, related to artificial life simulations.

Programming games of note include Darwin, RoboCom, Grobots, Core War, Robocode, RoboWar, Robot Battle, Crobots, CodeWar, Marvin's Arena, OMEGA, Carnage Heart, BattleCode, Terrarium, and AI Wars. Final Fantasy XII also includes some elements of a programming game, as the player creates the AI of his characters, although the player can also choose to directly control the action.

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.

Programming games may be derived from almost any other type of game. For example, the World Computer Chess Championship consists of matches between programs written for the abstract strategy game of chess. Also, some non-computer games borrow elements of programming games; in the board game RoboRally, players arrange cards to "program" their pieces with a sequence of moves, causing moves to be made without the knowledge of one's opponents' preceding moves.