A game of CoreWars (or Corewar) is played between two or more programs written in Redcode. These Redcode programs (warriors) are written by players in a kind of simplified AssemblyLanguage. Programs fight to destroy all opponents in the core memory of the MARS VirtualMachine.
Most of the activity takes place on the hills. When a warrior is sent to a hill it battles against those currently there. If the challenger scores high enough, it enters the hill, displacing the warrior scoring lowest.
Hills are located at:
AkDewdney published an article in the May 1984 issue of ScientificAmerican describing Corewar. This led to the formation of the International Core Wars Society the following year. The ICWS published a quarterly newsletter, The Core War Newsletter and held a yearly tournament.
Corewar became popular online in 1991, with the formation of the newsgroup rec.games.corewar and the creation of William Shubert's play by email King of the Hill (Koth) server.
Redcode has evolved over the years and Corewar is now played using Extended '94 Draft Redcode:
CoreWarrior is the currently published ezine for Corewar and Redcode programming. The latest issue can be found at:
'But I'd still rather write warriors in Lisp'
Perhaps, but one has to realize that the warriors almost have to be optimized for memory and speed - something one has to do by hand, especially on programs so small. A high-level corewars language would be nice, even if one had to optimize it later by hand. Too high, though, and too much time will be wasted on abstractions.
There are a few "CoreWars" clones for Unix or Win32 environment. Do a search for "CoreWars" on Yahoo and you will find them. The original CoreWars is not used any more (I think), but probably being the first strategic programming game, it has probably been the inspiration for many others. Try out RoboCode which is an incredible game based on RobotWars? from the Apple ][ platform.
The really exciting thing about NanoTechnology is that we'll be able to play CoreWars in real life - do away with the sand box and run the code on real atoms. The problem is, we need first to be sure that God is ready to reset the arena after the first imp "wins". (See also GreyGoo) -- MatthewAstley