Mar 27 2009
Core War: the King of Programming Games
In a programming game, players write programs to compete towards some goal, for example destroying all opponents or capturing a flag. There are two main types of programming games:
- inspired by RobotWar - programs control a robot or tank which moves around an arena firing at the opponent - RobotWar was written in the 1970s.
- inspired by Darwin - programs execute in a virtual computer and attempt to modify and crash the opponent. Darwin was first played in the 1960s.
Each game has spawned a series of clone - the most popular being CRobots (1985) and Core War (1984).In Core War, players write programs in Redcode, the assembly language of a virtual computer. The aim of the game is to survive while causing all opponents to terminate. There are three basic techniques which the majority of battle programs use in some combination:
- paper - the program spawns off new copies of itself in the hope at least one on the copies will survive.
- scissors - the program searches for the opponent. When something is found, it attempts to disable it.
- stone - the program drops instructions in a pattern through memory to hopefully damage the opponent.
A couple of years after A. K. Dewdney introduced the world to Core War, A society was formed, which held an annual tournament. The First International Core War Tournament held in the Computer Museum, Boston MA was a great success, with a paper coming out on top, Mice by Chip Wendell.Core War is now played as a King of the Hill tournament. Players submit their entry by email to a hill containing some of the top Core War programs, receiving results a few minutes later. If the program is successful, it enters the hill, knocking off the lowest warrior.Despite having reached it’s 25th birthday, Core War still has a community of regular players. Although the major techniques appear to have been discovered, new ideas are constantly being tested, occasionally with impressive results. If you’d like to find out more about Corewar, here are some useful links for beginners:
- The Beginner’s Guide to Redcode
- Core War Strategy Guides
- Core War King of the Hill
- Koenigstuhl Core War Archive
- The Core War Bibliography
If you’re planning to try your hand at writing a battle program, good luck and may the core be with you!







