Source: https://github.com/ardalis/kata-catalog
This is a fun kata that has the programmer building simple combat rules, as for a role-playing game (RPG). It is implemented as a sequence of iterations. The domain doesn't include a map or any other character skills apart from their ability to damage and heal one another.
- 
Complete each iteration before reading the next one.
 - 
It's recommended you perform this kata with a pairing partner and while writing tests.
 
- 
All Characters, when created, have:
- Health, starting at 1000
 - Level, starting at 1
 - May be Alive or Dead, starting Alive (Alive may be a true/false)
 
 - 
Characters can Deal Damage to Characters.
- Damage is subtracted from Health
 - When damage received exceeds current Health, Health becomes 0 and the character dies
 
 - 
A Character can Heal a Character.
- Dead characters cannot be healed
 - Healing cannot raise health above 1000
 
 
- 
A Character cannot Deal Damage to itself.
 - 
A Character can only Heal itself.
 - 
When dealing damage:
- If the target is 5 or more Levels above the attacker, Damage is reduced by 50%
 - If the target is 5 or more levels below the attacker, Damage is increased by 50%
 
 
- 
Characters have an attack Max Range.
 - 
Melee fighters have a range of 2 meters.
 - 
Ranged fighters have a range of 20 meters.
 - 
Characters must be in range to deal damage to a target.
 
- Are you keeping up with the requirements? Has any iteration been a big challenge?
 - Do you feel good about your design? Is it scalable and easily adapted to new requirements?
 - Is everything tested? Are you confident in your code?
 
- 
Characters may belong to one or more Factions.
- Newly created Characters belong to no Faction.
 
 - 
A Character may Join or Leave one or more Factions.
 - 
Players belonging to the same Faction are considered Allies.
 - 
Allies cannot Deal Damage to one another.
 - 
Allies can Heal one another.
 
- Characters can damage non-character things (props).
- Anything that has Health may be a target
 - These things cannot be Healed and they do not Deal Damage
 - These things do not belong to Factions; they are neutral
 - When reduced to 0 Health, things are Destroyed
 - As an example, you may create a Tree with 2000 Health
 
 
- What problems did you encounter?
 - What have you learned? Any new technique or pattern?
 - Share your design with others, and get feedback on different approaches.
 
- Original Source: http://www.slideshare.net/DanielOjedaLoisel/rpg-combat-kata