Battlecode Specs and Software

The latest release is version 1.3.0 (3 days ago).



Improve bugs and fix improvements.

  • Game and Specs:
    • Gardener HP in bcd17 corrected to 40 to match actual game (HP has always been 40).
    • Clarify that the bottom left corner is the origin and that its coordinates are offset by up to 500, to match change from 1.1.7.
  • Server:
    • Reduce cost of various trigonometric functions by an order of magnitude (so calling Math.sin now costs 1-2 bytecode)
    • Fix the SLF4J error on server startup
    • Specify that robot sensing methods return robots in sorted order
  • Client:
    • View your matches at many speeds using the new speed slider
    • Add other robot types to the map editor
    • Moved error logs out of the way in the 'Queue' tab


Bug fixes and improvements.

  • Game and Specs:
    • Tank HP increased from 100 to 200.
    • Sensor radii redefined to be based from the robot's center point, not their outside perimeter.
    • Robots/Trees/Bullets from senseNearbyRobots/Trees/Bullets() are now returned in order of increasing distance from the specified center point.
    • (Fixed later: Gardener HP in bcd17 corrected to 40 to match actual game (HP has always been 40).)
  • Server:
    • canWater() now returns false for neutral trees.
    • Gardeners and Archons no longer heal for the first 20 turns they exist.
    • All senseNearbyBullets now takes into account the bullet sight radius, rather than the normal sight radius.
  • Client:
    • Display error output when clicking "Run Match".
    • Sprites for trees containing bullets and robots.
    • Press "N" and "M" to see sight radius and bullet sight radius.


Bug fixes and improvements

  • Game and Specs:
    • Specs: neutral tree min radius is 0.5, which is consistent with GameConstants.
    • Robots correctly execute their turns in the order they were spawned. Spawned robots do not execute code until the round after they are spawned.
    • Scouts in trees take damage before the tree if the bullet hits both at the same time.
    • Added "MagicWood" and "LineOfFire" maps.
  • Server and IDE:
    • Direction's North and South and rotation methods are consistent with the map origin moving to the bottom left.
    • Fix enums and custom classes.
    • Fix canInteractWithLocation(), canInteractWithCircle(), canSenseAllOfCircle(), canSensePartOfCircle(), GameConstants.LUMBERJACK_STRIKE_RADIUS.
    • Indicator lines and indicator dots improved / fixed.
    • You can now shake big trees from inside of them.
    • Fixed a bug where Javadocs would not appear in Eclipse.
    • Fixed NullPointerException when a robot and a bullet shared the same location.
  • Client:
    • Map origin is now at the bottom-left corner instead of the top-left corner.
    • Console bugfixes, and allow newline characters.
    • Show map location coordinates when hovering over the map.
    • Map editor improvements.
    • Fixed a bug where starting a match from the client would sometimes not cause it to play.


Bug fixes and improvements

  • Server:
    • Reaching 1000 victory points actually ends the game now.
    • New method getCooldownTurns() added to RobotController.
    • Scouts can now sense trees they are on top of without NullPointerExceptions.
    • canChop() now checks if Lumberjacks haven't attacked yet.
    • Changed how Directions work.
    • senseRobotAtLocation()/senseTreeAtLocation() now return null for empty locations.
    • Clarified, corrected, and otherwise improved javadocs.
  • Client:
    • Logs (i.e. System.out.println's) displayed in 'Console' tab.
    • Ability to step forward/backward by one step.
    • Click a robot to display bytecode use.
    • Map editor now has clear and validate.
    • Faster map and player loading.
    • Game area has better resizing.
    • Client freezing issue fixed.
    • Fixes on buggy game queue.
    • Unit counting fixed.