ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel

The Best Programming Games

Updated on February 12, 2016

Games For (Aspiring) Programmers!

Hey, can you program or would you like to learn how to? Would you like to put your skills to the test and perhaps even match them with others like you? Then you should definitely check out these awesome programming games.

These games are all actively supported, free and stable. They are also pretty educational, some (like Robocode) are even used by universities!

RoboZZle - A puzzle programming game

Robozzle, a puzzle programming game
Robozzle, a puzzle programming game

Robozzle is a singleplayer game where you need to instruct your arrow to collect all the stars in a level. This game is great if you feel like puzzling, is easy to learn and has a very active community.

RoboZZle is one of the simpler programming games though, and offers no interactivity with other players. Be sure to read on if you're looking for more advanced and competitive games.

Note: After you've seen the video on the homepage just click "Continue to limited version", if you don't have Microsoft Silverlight.

Robocode - Make battle tanks in Java!

Robocode Download & Installation tutorial
Robocode Download & Installation tutorial

Robocode is a popular freeware programming game where authors pit their creations against the included robots - and against Artificial Intelligences of other authors! The program has a 2D battlefield where you can put in robots and where all the action happens.

All robots are programmed in Java. Don't worry, there is an awesome collection of tutorials available on how to set Java up and put together your own robot. In fact, if you don't know Java yet this is a fun way to learn it! I found this game about a year ago, and playing with it made me realize I wanted to study Computer Science. :)

Quickstart guide

  1. Download robocode, and follow the installation.
  2. Download and Install Eclipse. Eclipse is my favorite Java Editor, and I definitely recommend it.
  3. Register and check out the Robowiki. If you have a problem or question don't hesitate to ask, the people there are a friendly bunch!

Robocode: See A Battle In Action! - A cool clip of advanced robots battling it out

RoboWar - The quick and the dead

RoboWar homepage
RoboWar homepage

RoboWar5 is an addictive programming game which is easy to get started with but very challenging to get good at. The game has its own built-in programming language and a large number of "hardware" options for your robot (including your own icons!). Fights can be over very fast: one good shot can completely destroy a robot. That's why it's important to make your robot move!

An interesting feature of this game is that different archetypes of robots have formed for it. For example, you can either try to let your robot win by attrition or by direct attack. Take a look at the video below and enjoy the action!

Quickstart

  1. Download RoboWar and install it.
  2. Read the "help" section (from the menu) for the instructions you can use and take a look at the sourcecodes of the robots that come with the game.
  3. Check out the mailing list for upcoming tourneys, and submit your entry!

RoboWar: A Battle In Action!

GRobots - Not for the faint of heart

GRobots homepage
GRobots homepage

GRobots is one of the hardest, but perhaps most interesting, games I've come across. In it you design a "side"; a group of one or more types of robots that can work together to collect resources, defend and attack the opponent. The robots can have any number of hardware options (more means the robot is more expensive) and actions associated with them (for example; move, gestate or transfer energy).

The documentation is incomplete and therefore it's hard being a newbie. But run a few games and finish the newbie tutorial, and you'll be as addicted as I am. :)

Core War - A direct fight between codes

ARES simulator homepage
ARES simulator homepage

CoreWar is a programming game where your code fights to survive in the core, a piece of memory in a simulated computer. At the start of each round 2 codes ("warriors") from opposing authors are activated and try to find and disable the other code (for example by inserting "divide zero by zero" instructions, which cause an exception).

Although this game is certainly one of the best programming games, I must warn you that it has existed for almost three decades. As such, in that time people have created some pretty badass codes. My advice is: just try to defeat the sample codes! If you do, in my book, you already belong to the elites.

Quickstart

  1. Download the ARES simulator. There are multiple simulators, but I find this one the most intuitive.
  2. Read The beginners' guide to Redcode, CoreWar's programming language (not an easy feat!)
  3. Read the extensive information about Core War on Wikipedia.
  4. Submit your entry to a King Of The Hill server. Or better yet, challenge a friend!

A thought only lasts a moment ... - ... a comment lasts a lifetime.

    0 of 8192 characters used
    Post Comment

    • profile image

      Code of Tanks 

      3 years ago

      You might also like Code of Tanks, an online PvP tank battle game, brand new as of this writing. It does require some fundamental .NET programming knowledge, but other than that it's pretty simple: you create or join a room with other players, get your AI ready and pick your tanks, and watch the battle live from anywhere in 3-D. It's in Beta and everyone's invited to check it out: http://codeoftanks.com

    • profile image

      anonymous 

      4 years ago

      Would like to suggest a new game: www.nessbots.com

      A really cool and more advance version of all the bot coding games!

    • profile image

      anonymous 

      5 years ago

      @DaanBakker: It got me into programming and I'm now sat here in work as a computer programmer thanks to games like these.

    • profile image

      anonymous 

      5 years ago

      Play Botbattle Reloaded. It's a fully in-browser game, where all you do is program the bot with the inbuilt language. I loved the original Botbattle years ago, and someone has put up a new server with slightly tweaked game.

      Go to botbattle.alwaysdata.net

    • profile image

      anonymous 

      5 years ago

      For people who don't mind spending a small amount of cash to get a decent high quality programming game, I highly suggest giving SpaceChem a try. You can get it on Steam for $10 at the time of this posting. There is also a free demo available.

    • DaanBakker profile imageAUTHOR

      DaanBakker 

      6 years ago

      @anonymous: Hey Matt,

      Yes I had the same experience! Especially grobots seems really special to me and has a lot of room left to explore, but I think what people dislike is that you need to learn a special programming language for it. Things like the AI challenge (http://en.wikipedia.org/wiki/AI_Challenge) are really popular at the moment.

    • profile image

      anonymous 

      6 years ago

      I played two of these games when I was younger and had free time (robowar and grobots). Robowar was probably my favorite (sorry Devon) because the strictly limited processor speeds made you write very efficient code. I spend lots of time counting instructions and optimizing where the chronon breaks would be.

      Grobots has more room to explore and be creative because on the complexity and youth of the game.

      The original community from robowar has largely moved on. It is at least 20 years old. To get the best out of the game you would need to recruit a new bunch of players.

      Grobots has never quite achieved a critical mass of players to make it really dynamic. There is some new interest. Come joint in and we might get there.

      Matt

    • Rankography profile image

      Rankography 

      6 years ago

      Great stuff. I want both of my kids to learn to program and I am going to get them to this page.

    • DaanBakker profile imageAUTHOR

      DaanBakker 

      8 years ago

      @MerylV: I'd imagine this would be a great way to make kids enthusiastic about programming. Thank you!

    • MerylV profile image

      Meryl van der Merwe 

      8 years ago from USA

      Great lens - I had not heard of any of these. Am lensrolling it to my lens on teaching kids computer programming.

    working

    This website uses cookies

    As a user in the EEA, your approval is needed on a few things. To provide a better website experience, hubpages.com uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

    For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at: https://hubpages.com/privacy-policy#gdpr

    Show Details
    Necessary
    HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
    LoginThis is necessary to sign in to the HubPages Service.
    Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
    AkismetThis is used to detect comment spam. (Privacy Policy)
    HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
    HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
    Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
    CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
    Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the googleapis.com or gstatic.com domains, for performance and efficiency reasons. (Privacy Policy)
    Features
    Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
    Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
    Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
    Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
    Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
    VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
    PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
    Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
    MavenThis supports the Maven widget and search functionality. (Privacy Policy)
    Marketing
    Google AdSenseThis is an ad network. (Privacy Policy)
    Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
    Index ExchangeThis is an ad network. (Privacy Policy)
    SovrnThis is an ad network. (Privacy Policy)
    Facebook AdsThis is an ad network. (Privacy Policy)
    Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
    AppNexusThis is an ad network. (Privacy Policy)
    OpenxThis is an ad network. (Privacy Policy)
    Rubicon ProjectThis is an ad network. (Privacy Policy)
    TripleLiftThis is an ad network. (Privacy Policy)
    Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
    Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
    Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
    Statistics
    Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
    ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
    Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)