Open Source

From Robowiki
Jump to navigation Jump to search

Open source has played a significant role in the history of Robocode. Robocode itself was released as open source in 2005, which later led to the project being taken over by Fnl, who has since added a wide range of new features. There are many open source Robocode bots which have served as guidance to other Robocoders, accelerating the evolution of many Robocode concepts. The rapid evolution of NanoBots was largely impacted by many of them being open source, as authors borrowed ideas and code and continued to offer their own improvements.

Some notable open source robots

  • FloodMini (and the GuessFactor Targeting Tutorial) ‒ This MiniBot by Kawigi played a key role in the spread of GuessFactor Targeting, as well as putting a lot of focus on the concepts of movement profile and curve flattening. He wasn't the first to use GuessFactor targeting, but he provided an excellent example of how simply it could be implemented. He also authored an excellent tutorial to show how to create a GuessFactor gun.
  • HawkOnFire ‒ This MicroBot by rozu brought with it a revolutionary Melee movement, an implementation of Minimum Risk Movement. It remained closed source for a long time before rozu eventually released the source for it. At the time, ABC (another top Melee bot author) called it the "best melee movement I've ever seen," and called the release of its source a "big spoiler."
  • RaikoMX ‒ One of the first top Wave Surfers to be released as open source, as well as the top 1-vs-1 bot for a while.
  • CassiusClay ‒ For a long time, this bot by PEZ was the top rated open source 1-vs-1 bot, holding the #1 and #2 spots at different times. It served as an excellent guide to advanced concepts for many Robocode authors.
  • BasicSurfer (and the Wave Surfing Tutorial) ‒ This is a tutorial bot by Voidious that provides a simple (but bug free) implementation of Wave Surfing for others to learn from. Some strong bots find their roots in this code, including WeeksOnEnd, DrussGT, and GresSuffurd.
  • Chalk and DCBotCorbos' duelist Chalk was the first open source implementation of Dynamic Clustering (then called TronsGun). Shortly after, ABC released an open source version of his own DC gun in DCBot. Before these, the only DC guns were closed source and found in ABC's bots, Tron and Shadow; since 2007, at least 10 of the RoboRumble's top 20 bots use it for movement and/or targeting.
  • DrussGT ‒ The reigning 1v1 general champ for nearly 10 years. Features VCS GT Wave Surfing, KNN targeting, bullet shadows, bullet shielding, gun heat tracking, an anti-surfer gun, a flattener, and many other state of the art techniques. Many things can be learned from its code and writeup.
  • Diamond ‒ A world-class, modern top bot. Uses a carefully calibrated Minimum Risk Movement in melee and DC Wave Surfing in 1v1. Has been #2 in both 1v1 and melee for a long, long time.
  • Neuromancer ‒ The first Melee Surfer and the current #1 bot in MeleeRumble, by a wide margin.

See also