Robo Home | Changes | Preferences | AllPages

I've always thought it would be interesting to see a full history of Robocode somewhere, but the closest to it is the fireside chat over at the Minibot Challenge. So I've decided to see what I can pull out of my head and record it here.Unfortunately, I wasn't around at the very early stages, and I'm not sure anyone who's currently active on the wiki was either. My guess is that ABC has been around here the longest. Anyway, I hope someone will add to this or correct my mistakes. --Alcatraz

/Concepts - /FirstBots - /Competitions - ChronicleOfTheYear2003
The History of Robocode

Robocode was first released around July 27, 2001 by AlphaWorks? at IBM. The man behind it - Mat Nelson. The first site to upload and download bots from was created soon after - [[The Bot Exchange]]. The source code to seventeen bots is available there, and I can only guess that these were the first bots - after the samples created by Mat Nelson. Among them are Jazzbot and SquigBot - the top two bots of the early days of Robocode.

HT-SPY? was the first successful closed source bot and it led the way for others of the same ilk.

Cynical came out soon after that - the bot that spawned "The Rule Change." Cynical proved that in early Robocode at least, movement was more important than targetting. Cynical won battles without firing a single shot, simply because no bot at the time could hit it. (I'd love to see how SandboxDT does against it now.) Because of subsequent "boring battles" Mat changed the scoring rules to what they are now.

Tobe's first bot, Strategic? should probably be noted here, for its pluggable framework. Rapture entered the scene as a dominant bot around this time, and still today is notable for it's extensive design. Tarsier? was a top 1vs1 bot of the time and [EcomLargeUnsortedDataFeedMapEvent 9]? still holds the record for longest name. Also coming along was ShootingStar? a master of close combat that performed far better than its contempories in Qohnil's later 1vs1 challenge (discussed later).

Relativity entered the scene with the first AntiGravity movement scene in Robocode and, along with Rapture, ruled the melee charts for sometime. Then came the first true dominant bot - Wolverine, which was the 1vs1 ruler for quite some time. Wolverine may also posess the most unique end of battle strategy of any bot. It would gradually allow the enemy to disable itself, back up and then charge the enemy, firing a series of different powered bullets that would hit the disabled bot simultaneously.

The top ranking site of this time and continuing for awhile after was The Gladitorial League. "The top spot has previously been occupied by Rapture, TNT, Predator?, PrairieWolf, Tron, Shadow, JollyNinja, Viper?, SanboxLump?, Fermat." reads the site, referring to melee rankings. Of those bots, Tron, SandboxLump, PrairieWolf and Fermat remain especially strong today. Just recently, Shadow has been rebuilt by ABC and is near the top of the 1v1 world. Predator was one of the very top melee bots for a long time, as was JollyNinja. The latter is a very good example of "clean" coding.

Rey Vermette's RayBot succeeded GrayGoo?'s Wolverine as the king of 1v1. RayBot, then One?, then TheArtOfWar all ruled the dominant rating site of the time - Qohnil's 1v1 Robocode Rankings until it was no longer updated. LoneDragon? was up at the top there as well.

Sometime during RayBot's rule, Miguel Sousa Filipe began discussing his EVA robots, and his desire to keep them small in codesize. The Robocode community immediately took hold of this idea, with Tobe spearheading the idea, starting a site called the MiniBot Challenge. The competition spawned some of the fastest arms race in Robocode history. New bots took the lead weekly and every day the community was shrinking the code. Nanobots evolved especially fast. Mike Dorgan's Butterfly and his later UltimateDeathToNanoBots won with regularity. A whole subhistory could be devoted to the evolution of the nano's. (Which I may do sometime).

Then along came the Robocode Rumble - IBM's last concerted interest in the game. Turnout for the competition was extremely high, and some notable bots entered in it were MogBot a very successful pattern matcher, Vapour a top melee bot, and MorbidPriest. The winners, of course, were Ares, Fermat, and Yngwie. We mustn't forget SandboxLump, either, which was upset by Yngwie in the finals. There were a few bots that could beat SandboxLump, Yngwie of course, as well as BlotBot, but then Paul Evans released SandboxDT.

SandboxDT has fallen from the top of the rankings (now held at the Eternal Rumble) only twice. Version 1.21 was beaten by Duelist, and version 2.41 was beaten Shadow. Paul has stayed one step ahead of the curve and has most of the Robocode world gunning for him.

The Duelist series was the first to have members in practically every size category and was successful in all. The current Flood series does the same - well, FloodHT and FloodMini at least are very successful. Of course, now we've reached today, and I'm afraid of leaving people out. iiley has coded many of the top minis and micros, as well as BlestPain. Albert developed a variety of strong guns and was the chief developer of RoboRumble@Home. Pez, of course, has given us this Wiki, as well as some top bots, Marshmallow getting mention here.

It wasn't until January 2004 that SandboxDT was finally bested by Shadow, which instantly became the new target for all other Robocoders. Paul however vowed to return now that his contract work was finished and could spare some time again.

And by the beginning of February 2004, SandboxDT was king again. Would 2.61 be the same kind of milestone as 1.61?

Chat: There's so much I've left out, that I hope others will add. I don't know where to put RoboChina in all of this because I don't speak Chinese and have no idea what goes on there. That's all for now. --Alcatraz

This is a very interesting history, and I like reading about this; however, I was expecting (and am far more interested in) more of an overview on the history of concepts rather than bots. Things like bullet dodging, circular targeting, the evolution of the linear lead fire algorithm (now on one line of 20 some bytes); multiple guns, statistical analysis of success; pattern matching, VirtualBullets, bullet 'traffic'? mapping (iirc JollyNinja did this); saving data, compression; packhunting, TEAMS, CoopRobot (i promise i'll start working on this again), BulletShielding (*grin*); Wave aiming, VirtualGuns, movement graphing; NeuralTargeting, SegmentedData, RobocodeGLV014, mirror movement, RoboRumble@Home; and the new concepts in development, such as my AnalyticArray? (soon to exist), Neural Evolution, Temporal Difference NN, and anything else I may have missed... -- Vuen

Yes, well that's harder... I'd actually have to LOOK for the information. Nevertheless, I'll see if I can research this, but I'm sure I'll give credit to the wrong person in many cases. That's how history goes, though. --Alcatraz

Don't worry about credits going the wrong way. This is a wiki and not the Nobel Prize Commitee =) Anyone that spots an error is obliged to correct it. This history initiative is great by the way. I suggest you split it in /Bots? /Competitions and /Concepts and whatever other splits might be interesting. -- PEZ

Help! Most of the early bot sites are no longer up, and I fear that some bots may be lost completely. Does anyone have any very earlier bots? I'm especially looking for counterwallrobot.Cynical. --Alcatraz

I just had some dates posted, so I added them to the /Concepts and /Competitions page. -- Albert

I was just dropping by, having stumbled on the wiki by accident. Perhaps you could mention that the inspiration for Robocode came from Brad Schick's Robot Battle, which was itself inspired by Robot Wars on the Apple ][. They have a lot in common on the surface, including the name of functions (a custom language - RSL - is used in Robot Battle). Matthew Nelson was a very successful bot author in his time as an RB regular. -- Jacques Chester.

Well, now you mentioned it. =) Thanks! -- PEZ

According to archived results, today september 28 is the anniversary of the first (at least, stored) ranking of RoboRumble.
Congratulations to you all robocoders! Thanks for the tough competition! -- Axe

And mega big thanks to Albert for giving us RR@H! The best present given to the Robocode community since Robocode itself. -- PEZ

Man, the nanobot arms race was fun. We went from aim at the target, lame movement, no radar and being beat by sample bots, to linear aiming, decent movement, and locking radar, to some absolutely amazing bots in about a month. I remember getting up in the morning, downloading the latest geek, gem, and such, getting my butt kicked, and being forced to upgrade. Having all nanos being "open source" also helped alot. No secrets and as such the innovation was quick. No shame in grabbing a linear cannon from one bot, a radar from another, and a movement theme from a third as long as credit was given and improvements were made. Then we got our first pattern matching nanobot and it destroyed all comers for weeks. After a few weeks of "size optimizations", we got roughly the bots we have now. Great fun. Anti-grav in a nano impossible? We did it. Pattern matching? Good random movement? Sure. Those bots became great beginnger downloads as they had great themes and tended to be eas(ier) to understand due to the code only being about 1 page long. It makes maintainance easy and upgrades quick - it's the reason I stuck (stick) to them. A great history! --Miked0801

Man, I wish I was into the game back then. That would of been cool to battle against Lump and DT for domination. Now the bar is so high its crazy. There are few if any revloutionary techniques or such that can change robocode, such as guessfactor guns or wavesurfing. However I might be wrong, and someone may discover a critical flaw in wavesurfing that it might end up here as only a memory and all the wavesurfers are pushed down the rankings to make way for bots of a new and revolutionary design. That however seems unlikely. --Chase-san

Robo Home | Changes | Preferences | AllPages
Edit text of this page | View other revisions
Last edited November 20, 2006 17:12 EST by Martin Alan Pedersen (diff)