Specs and Software Downloads

The latest release of the BattleCode software is 1.0.9 (March 10th, 2009).
  • Download the installer (recommended) or the archive. If you require Java 5 for development, you can use this installer (recommended) or this archive.
  • View the installation/software documentation (in a new window).
  • View the game specs (in a new window).
  • View the javadocs (in a new window). The javadocs are also included in the software download.
  • (You can also download a map editor for the creation or modification of BattleCode maps. DISCLAIMER: There is a good chance that maps you make will be dissimilar to official maps and thus may be unhelpful for testing your player.)
Please note that we may still make a few adjustments to anything already released.


Software Changelog:

v1.0.9

Gameplay:

  • Raised cannon spawn cost to 30
  • Lowered cannon attack damage to 12 per 12 rounds
  • Lowered cannon attack angle to 45
  • Raised scout attack damage to 2.0
  • Raised gain / cost ratio for flux burn

v1.0.8

Client:

  • Added flux burn animation to 2d and 3d client
  • Added map min points to 3d client

Gameplay:

  • Added maps from MIT qualifying and final tournaments

v1.0.7

Client:

  • Up to 12 characters of package name are displayed instead of red/blue team text in 3d client
  • Workers carrying a block now display as such in the 2d client
  • Lightened the terrain and removed the blue coloring of voids in the 2d client
  • Terrain heights are much easier to distinguish in 2d client
  • Red/blue teams now have attacks that correspond to their color

Gameplay:

  • Added new maps: adobe, corners, daisies, gem, stronghold
  • Revised all new seeding maps to better reflect future maps

Bugs:

  • Negative block height bug fixed
  • Scouts now display their attacks properly in 3d client

v1.0.6

Client:

  • Corrected coloring of flux deposits when blocks are loaded and unloaded

Gameplay:

  • Added rushplayer
  • Added refplayer

Bugs:

  • Fixed a few missing method costs in idata
  • Fixed cost of System.arraycopy (it's no longer free)

v1.0.5

Client:

  • Improved domination bar in 3D client to show progress towards victory

Gameplay:

  • Added map tricksandtraps.xml
  • Slightly improved simpleplayer

Bugs:

  • Fixed scout sensor range

v1.0.4

Client:

  • Fixed domination bar in 3D client to show progress towards victory

Gameplay:

  • Made transformation wakeDelay stack with current movement or attack cooldown
  • Increased Scout range to 6
  • Added map quarry.xml
  • Added map pharaoh.xml
  • Adjusted rounds and points values on other maps
  • Improved simpleplayer

Bugs:

  • Fixed FluxDepositInfo minimumMiningHeight calculation

v1.0.3

Client:

  • Pressing 'h' toggles between displaying air/ground -> ground -> air -> neither -> air/ground
  • Fixed rectangular map issue in 3d client
  • Channelers now display draining area when they are draining in both clients
  • Applicable keyboard shortcuts now work in the 3d client as well
  • The 3d client now displays workers carrying blocks
  • Added improved flux deposit state display with team colors and approximate available flux in 2d and 3d clients

Gameplay:

  • Workers can no longer move greater than WORKER_MAX_HEIGHT_DELTA upwards while carrying a block
  • Workers can no longer lift blocks that are WORKER_MAX_HEIGHT_DELTA or greater below them
  • Flux deposit flux-per-round value is no longer linear with height -- see spec for exact formula
  • Added RobotController.senseHeightOfLocation
  • Added RobotController.getCurrentAction
  • Added number of blocks in cargo to unit specification
  • Added simpleplayer
  • Added cannonfodder.xml
  • Added bridge.xml

Bugs:

  • Transformation into workers no longer causes ClassCastExceptions when loading blocks
  • Transformation immediately updates the unit's sensor range to the new RobotType
  • Channelers deal full damamge when dealing a final blow -- they still only absorb a unit's remaining energon before production or energon reserve is applied
  • Old archon memory during the first match is now correctly an array of length 6
  • Yield bonus is now correctly applied to all units
  • RobotController methods that sense num blocks now correctly throw GameActionExceptions when sensing items outside of unit's sensor range

v1.0.2

Client:

  • Fixed explosion animation for flying units

Gameplay:

  • Added small energon cost for using channeler drain attack
  • Lowered FLUX_BURN_COST

Bugs:

  • Fixed broken channeler drain attack
  • Fixed empty array returned by senseNearbyBlocks

v1.0.1

Client:

  • Fixed "quantum blocks" that reached their final location before they were even picked up
  • Fixed click selection in 3d client
  • Scaled terrain height units to be the same as block height units
  • Fixed dissapearing archon bug when scrolling timeline

Gameplay:

  • Added RobotController.canBurnFlux
  • Added RobotController.senseFluxDepositAtLocation
  • Added FluxDepositInfo.roundsAvailableAtCurrentHeight and FluxDepositInfo.roundsAvailableAtMinimumHeight
  • Added MapLocation.directionTo
  • Changed the name of TerrainType.WATER to TerrainType.VOID
  • Changed number of arhcons from 8 to 6
  • Removed maps/dogfood.xml
  • Changed other maps and tightened map specs
  • Added basicplayer

Misc:

  • Added a Java 5 build to the release
  • Fixed a lot of typos in the javadocs and spec

Bugs:

  • Sensing canUnloadBlockToLocation with empty squares works now
  • Sensing FluxDeposit rounds available no longer throws ArrayIndexOutOfBounds exceptions
  • Channeler and Worker TerrainTile memory is fixed
  • Terrain delta now affects movement delay as expected
  • 'Save match to file' no longer causes game to crash