title: Developing a game with complex (and undefined) rules?
body: <p>How would you develop a game that could end up with complex rules but you need to work on the rules (add, tweak, balance) a lot? I have looked at rule-based languages but I haven't found quite useful enough information regarding this.</p>
  
  <p>UI etc. will be developed later, first I'd need to iteratively develop the rules and formulas and test them out between iterations. The game in question would be a tactical two-player game where players select "troops" and a large part of the game is choosing the correct troop setup. So the rules could be something like</p>
  
  <pre><code>If attacker's skill A is greater than defenders skill B and defender does not have extra skill Z then ...
  </code></pre>
  
  <p>That's obviously a very simple rule, I expect there to be dozens, if not hundreds of rules, with paths (if A then if B....).</p>
  
  <p>For testing I would write a test framework that can run the rule sets through with large number of iterations and logging that allows me to see how the latest changes affected balance. It would also be useful to be able to define acceptable values and a possibility to see easily the changes. What tools are there for this?</p>
  
  <p>The language of choice is either Python or Java (depending on whether I want to target Android or not - probably I will).</p>