I'm starting to build a online PVP (duel like, one-on-one) game, where there is leveling, skill points, special attacks and all the common stuff. Since I have never done anything like this, I'm still thinking about the math behind the levels/skills/specials balance.
So I thought a good way of testing the best builds/combos, would be to implement a Genetic Algorithm. It'd be like this:
- Generate a big group of random characters
- Make them fight, level them up accordingly to their victories(more XP)/losses(less XP)
- Mate the winners, crossing their builds, to try and make even better characters
- Add some more random chars, emulating new players
- Repeat the process for some time, or util I find some chars who can beat everyone's butt
I could then play with the math and try to find better balances to make sure that the top x% of chars would be a mix of various build types.
So, is it a good idea, or is there some other, easier method to do the balancing?
Edit: Interesting thoughts in all those answers, still waiting to mark just one as resolved. I can see the problem with the AI implementation, but in my specific case, the AI is pretty straightforward. It'll be based directly on the opponent build and chosen parameters for the duel. (The human player will not have access to those info, so can not foresee the enemy stats and strategy). I've read a topic about testing, and I think I'll starting with simple automated tests and in the future evolve it to a genetic algorithm.