ArqadeWhat are some programming games that are out there?
[+41] [21] Mechko
[2010-07-28 23:11:04]
[ game-rec programming ]

By programming game, I mean a game that involves programming, like Conway's Game of Life, or games in which you give your character a series of instructions to complete.

The other option, though it's not really fully a game, is something like this [1] which requires actual coding and computer knowledge to complete imaginary objectives (I consider it an educational game).

Finally, I have heard of games where individuals program AI's for certain tasks and they compete against other players' AIs.

Unfortunately (other than Conway's game of life and hackthissite) I don't actually know what they are called.

This question belongs on SO. - WillfulWizard
(27) This would probably get closed on SO. I believe it belongs here. - Neil Aitken
(3) @Willful what are you talking about? SO doesn't accept questions about games unless you are asking about how to make them, not about which ones to play... If this question gets asked anywhere on SE, it's here. - Mechko
Well, I seem to have been outvoted, but to explain: The tone sounds to me like "what games are like Life" which qualifies to me as a programming exercise. A list of programming exercises belongs of SO. If the list does end up containing more traditional games, then I'm all for it. That's my vote, but you make great counterpoints, so I'm not sure anymore. - WillfulWizard
This question is definitely site appropriate. It would probably be site appropriate on SO too as it does require actual programming, though might garner different answers. - tzenes
(3) @Willful sorry my comment was a bit too harshly worded. I want these as games because they are fun, not as educational tools, so they are games, not programming aides. - Mechko
(1) @Mechko You didn't offend me, and that sounds like an excellent reason for it to be here. (Even though I happen to think programming is VERY FUN!) Thanks for clarifying. I think I misread the tone of your question, for which I am sorry too, but I got corrected and it all worked out. So lets get back to Q&A! - WillfulWizard
Fantastic question. I had no idea there were so many of these types of games out there (I knew only about Robocode). I'm looking forward to going and trying out some of the other answers here! - Zemm
What we need is a code RTS. Instead of workers, we have programmers who generate code, you build registers (instead of houses) to run your codes, etc... If anyone is interested, let me know and we should start our own project. - Mechko
(6) @WillfulWizard et al — - Ben Blank
@Mechko Nice idea. You could try recruiting at GameDev or SO. - Tobias Kienzler
@Ben Blank You oughtta post that as an answer :-p - Mechko
@Mechki @Ben Michael Pryor already did so - Tobias Kienzler
@Tobias good point. I still haven't made it past Manufactoria. - Mechko
(8) Why is this closed? It should be open and community wiki, as it really is a pretty cool question. - Stuart B
To contribute, Dragon Age has, to some degree, programming elements in the tactics system. See if you can program it well enough to fight unattended! (you probably can't) Plus, it's a great game anyway. - Stuart B
(3) this should be reopened. There are enough annoying people on SO who are pedantic about the FAQ for all stack exchange sites, we don't need anymore here. - Jonathan.
@Jonathan Go to Meta. there are several discussions about it. I think it's safer to have such questions closed until the discussion is over though (even though I'm on the side of having them open) - Mechko
(1) I think all the upvotes prove that this question has been accepted by the community. See - BlueRaja - Danny Pflughoeft
@BlueRaja That's about SO, and it definitely doesn't apply here. Gaming is a separate community. Besides, this question doesn't satisfy rule #3 anyway. - Arda Xi
@BlueRaja I'd have to agree with Arda. All other questions of this type are closed too. - Mechko
(1) This question should not be closed. The community seems to have liked this question. As of now the question has 32 upvotes and 21 answers. Even the answers have quite a number of votes. Would it be a good idea to close questions like these only when it has maximum 5 upvotes and 1 answer for a period of day or two? - Mugen
Well, this question should be closed, but I will change the reason. Instead, it is now off-topic, as per the new policy we have setup for our site and added to our FAQ. - Grace Note
[+20] [2010-07-28 23:57:44] Corv1nus

Robocode [1] is fun. You build your robot tank(s) off the Java based API and watch them go at it. We've done up to 10 man VS and 1v1 tourneys with it.

alt text


[+13] [2010-07-28 23:14:48] Neil Aitken

Corewar [1] is a battle game which uses an Assembly style language called Redocde.

There are a few GUIs available and plenty of documentation to get started


(2) +1 : Flashback. - uncle brad
[+13] [2010-07-28 23:35:22] user929

Rubicon [1] and Manufactoria [2] may be of interest.


halp. I'z stuck on RC-cars. - Mechko
nvm I'm an idiot. it's a queue, not a stack - Mechko
+1, Rubicon is brilliant. - tzaman
Argh, can't stop. - Agos
where did that day go? - alexanderpas
[+8] [2010-07-28 23:27:10] Oak

There are some games in which you program a robot in advance to perform a specific task. The flash game Light-Bot [1] is a nice example. The range of instructions is limited, but they are modular and there are even subroutines that can be activated repeatedly.

Tobias [2] pointed out that there's a newer version, with a new if mechanism (which means recursion is also enabled): Light-Bot 2.0 [3]. The main challenge of these two games is to fit the requires task in less than X instructions, as the instruction count is limited.


+1! I was going to suggest this one. :) - FallenAngelEyes
(1) you might want to include LightBot 2.0 in your answer, now update to a if-mechanism and including a level-editor. - Tobias Kienzler
@Tobias I'll just upvote you instead, give credit where it is due :) - Oak
@Oak♦: I already deleted that answer, no need to have almost-dupes around - Tobias Kienzler
I've decided to write a roguelike-lightbot clone :D - Mechko
[+7] [2010-07-30 01:02:22] Nitrodist

Ruby Warrior [1] is a AI challenge game where you write the AI for a little character from scratch. if you don't know Ruby, it's a great oppourtunity. If you know a little bit about programming and Object-Oriented paradigms, then you'll find it very easy to write for this program.

Basically it's just logic the whole way. Put your self in the shoes of a little-ASCII warrior and become the Ruby Warrior!

Uses the Ruby [2] programming language.


This one looks cool. I'm setting it up right now. - Mechko
[+6] [2010-07-29 14:27:01] Michael Pryor

There is a list of good programming games here on Stack Overflow [1].


+1 it is unfortunately flooded with "oh, was it RobotWars" and similar "answers", but the upvoted ones are really worth a shot - Tobias Kienzler
[+6] [2010-07-28 23:24:59] Oak

Not so much programming, but the game NERO [1] is composed of two parts: first you train your bots to perform certain strategies, using evolutionary machine learning. You can then pit your team of bots against another team, possibly made by another player. Very impressive results if you invest enough time into it.

The training phase is done by settings "point value" to each one of several traits, and by evolution-like algorithms - only the best-performing bots are used as the prototypes for the next generation. You can also forcefully converge the evolution to a single prototype.

The combat phase is basically a zero-player game - (almost) all you do is just sit back and watch your bots fight other teams.


[+5] [2010-07-29 09:22:51] RAGNO

Whilst having no code, the game UPLINK by introversion studios requires planing, technical skill in execution and the ability to adapt quickly to a given scenario, in the guise of a dystopic future 'hacking' sim. - Tobias Kienzler
It even has a CLI to the "servers" in the game. You are at a command prompt for much of the game (if you're doing it right, that is. :) ) - glowcoder
I love this game. It's so much fun destroying identities and emptying bank accounts. - Neil Aitken
(1) A very cool game but with zero relation to programming, in my opinion. - Oak
[+4] [2010-07-28 23:35:39] aslum

It is a board game, rather then a video game, but Robo-Rally absolutely fits the bill. Every turn you program 5 registers, and then all players run their programs simulatenously.

Looks like there's an electronic version online: - Oak
Well, there you go! - aslum
[+4] [2010-08-01 13:42:28] Hostile Fork

Any game turns into a "programming game" if you start automating it. Some are friendlier to this than others, like Asheron's Call...which Wikipedia says is:

"...known for its friendly stance toward third-party software, particularly Decal, which allows the creation of gameplay-altering plug-ins. At first, plug-ins were only used by the most computer-savvy players, and were well guarded between allegiances. Several public 'macros' eventually became an extremely popular and defining point of Asheron's Call..."

It's not precisely a game, but ToonTalk [1] is an interesting way of physicalizing programming. Rather surreal, with birds nests and boxes and bombs representing elements of programs that can be composed together to do various tasks:

"ToonTalk's syntax is animation, as in cartoons. The programmer takes on a persona and shows robots what to do by example."

Taking a bit more liberty with the "programming" part than the "game" part, I think The Incredible Machine [2] series is worth a mention. I like the systems mindset it encourages, instead of pigeonholing programming as an imperative robot that you control at will. (Sometimes there are reasons why balloons float up, and grabbing a particular balloon and saying "this one goes down because it's expedient" may not be as good as finding another way.)

StackOverflow sort of qualifies as a massively-multiplayer online programming game, though a better example would be something like TopCoder [3] where it's an actual competition.


hehe SO is a mmopg. - Mechko
[+4] [2010-08-01 14:30:00] Isxek

If you're into the text adventure/interactive fiction variety, there's Lists and Lists [1], which teaches the basics of Scheme (a dialect of Lisp).

Another example is Inform School [2], based on Lists and Lists but it teaches Inform instead.


hehe I like Scheme. - Mechko
[+3] [2010-08-01 09:34:05] Tobias Kienzler

In Bug Brain [1] you program a bug, a worm and finally an ant using Neural Networks [2].

Bug Brain Worms

As a "bonus" feature, Braitenberg Vehicles [3] and a Learning Lab are also included.


Installer won't launch on Windows 7 64-bit. Too bad, it sounds interesting. - Ben Blank
@Ben Blank: Doesn't win7 provide a Win-XP mode? Also it doesn't need much resources so you might be able to run it with a virtual machine + some older windows. Actually, I run it using Linux + Wine, you could try it with Wubi, which installs Ubuntu directly on your NTFS system without requiring repartitioning. - Tobias Kienzler
[+3] [2010-07-29 07:14:31] Steve Bosman

Carnage Heart [1] for the original PlayStation


Hell yeah, the ultimate programming game! - Task
[+3] [2010-07-30 14:44:48] Wayne Werner

If you want a really awesome version of Conway's Life, check out Golly [1] - there are some really amazing things done with it.


[+2] [2010-07-30 02:25:51] Mag Roader

I briefly tried out Colobot [1], which has quite a lot of programming. It has a C-like language built in you can use to make robots perform various tasks.

I believe the game is mostly educational, but if you like programming you can create crazy algorithms for stuff like:

  • Go out, find stuff, collect it, bring it back
  • Go over to the recharge station to refill your battery
  • Go attack any aliens you find

You scared me there. For a second, I thought there actually was a robot war game where you write your AI in COBOL... - Cort
Thinking about it, it's the internet, there probably is. I'm not gonna do that Google search, I'm not gonna! - Cort
[+2] [2010-07-29 14:30:37] Task

There are a lot of degrees you can go to in a 'programming game', which end of the spectrum are you looking for?
Many older programming games are a tad on the 'so hardcore you better know how to program already' side. Newer programming games try to simplify programming in some manner.
On the 'light fun' side there's Armored Core: Formula Front [1] where the programming is done via slider bars.
Another direction that's been used is in MindRover [2] where programming is done by connecting electronic devices with wires.
Then there's the 'walk-over programming' method employed in games like LightBot [3] and IQMarathon [4] (cows!). Those are programming games, but they try to hide it really well.
In the category of 'still obviously programming', there are many excellent options, some of my favourites being The Codex Of Alchemical Engineering [5] and Bureau of Steam Engineering [6].


[+1] [2010-07-30 05:28:04] Juha Syrjälä

C-Robots [1]

The robots are controlled by a program written in a stripped-down version of C. The robot's mission is to seek out and destroy other robots, each running different programs. The robots can be controlled in order to move around the battlefield, scan the environment to find enemies and fire at enemies using a cannon.

C++ Robots [2] is similar but the programming language is different.

There are clones several other languages.


[+1] [2010-07-31 10:10:13] Merlyn Morgan-Graham

If programming included logic gates: Robot Odyssey

[+1] [2010-07-29 09:45:30] Tobias Kienzler

Kara [1] is about programming a bug(!) coming up in various versions, e.g. Finite State Machine, Java, Turing Machine, Multithreading



[0] [2010-07-29 15:34:59] bwarner

Facebook has Dinosaur Island [1] where your Dinosaur AI competes against others to earn survival points. And doing well might even get you a job offer!


[0] [2010-07-30 00:25:32] Muad'Dib

Hey, don't forget Robowar! It started out on the Mac ( a long time ago ) but, I think there's a PC port of it now, done in VB. It's alot like RoboCode.