New Feature Documentation

I’ve implemented a lot of features and had to interface with several cross-functional teams who were all balancing competing priorities which didn’t always align. This can be very challenging when management is asking for updates and you are stuck waiting for someone.

After iterating several times I’ve found a strategy that works well for me and I will provide you with an example below. Let’s say that the new feature is to add a Flak cannon to our Robot.

Here is the way I document new features, I hope this helps you:

Robot Wars 2.0 – Flak Cannon


  • Scope
  • Goals
  • Tasks
  • Notes
    • Fixed Problems
    • Benign Problems
  • Overview
  • References


Several new weapons need to be added to facilitate player progression into new content that will have more life than previous releases.

The Flak Cannon is a shrapnel firing weapon that has an Area-of-Effect.


  1. Add Flak Cannon Object so that others can start parallel development work
  2. Make Flak Cannon fireable
  3. Balance stats for Flak Cannon
  4. Have 95% coverage for Flak Cannon


ID Priority Task Owner Target Delivery Date Status Comments
1. Create Flak Cannon Object
1a 1 Create the Object  Alice  1/2/2101  [started]  The objects exist and have been checked-in, but the ability to add a graphic is still missing.
1b 1 Add to the WeaponFactory Alice  1/4/2101  [blocked by 1a]
2. Create Flak Cannon Assets
2a 1 Create the Cannon Firing Animation  John  1/3/2101 [done]  The animation glitches at the end. John is investigating, see CR 101
2b 1 Create the Firing Sound  Bob  1/3/2101  [not started]


  1. While creating the Flak Cannon we found that the Cannon Ball weapon has a lot of similarities and a new parent class called OURCannon.cxx was created

Fixed Problems

AoE Calculations

There were problems with adapting the AoE Calculations to this new weapon, we had to add an entirely new weapon pattern called TightConePattern.

Benign Problems


The animation of the cannon looks a little funny with recoil, but we ended up removing recoil from this weapon and did not need to debug, but we did notice that the animation time of this weapon is different than all others, which may be leading to this problem.


The new Flak Cannon that we added in release 2.0 can be disabled by setting arena flag:

DisableWeapons = [“FlakCannon”]

The damage of this weapon can be altered using:

unsigned int damage = 20;
setWeaponDamage(“FlakCannon”, damage);


The documentation for the WeaponFactory can be found here: WeaponFactory.html