Official Forumwarz Blog

The official blog for the web game, Forumwarz

BalanceBot 9000

Episode 2 of Forumwarz gives us a great opportunity to introduce changes to the gameplay balance. Since it’s a large content update we can piggyback on it with a bunch of adjustments to the balance between classes.

We have been collecting feedback on the balance between classes forever, and we have a bunch of great ideas for where to start tweaking.

The only problem is, tweaking even small stats on our classes means a lot of additional testing is required. When developing Episode 1, the best tool I had for this was my “Clone character” and “Reset character” tools.

In other words, I’d get a character to a point in the game, make a clone them, test something, revert, clone, test, revert clone, test, etc until I was happy with things. Unfortunately, if I got to a point late in the game where I wanted to make a change to something that would affect the earlier gameplay, I’d have to start all over again. Not only was this incredibly time consuming but it was mind numbing too. After a while I wouldn’t be able to objectively test the game, as I’d be so desensitized to the gameplay and storyline.

We are fortunate going into Episode 2 that we have an installed user base who are eager to test all sorts of permutations for us. We will definitely take advantage of that. However, I think it’s very important to get things as stable as possible from a balance standpoint before handing it over to actual users.

After thinking about it for a while, I came up with the idea of writing a bot to play Forumwarz for me. Since I have access to all the back end methods, it wouldn’t have to play through the interface, it would simply have to call methods, examine their results, call others.

Hence, BalanceBot 9000 was born. He turned out to take a lot more code than I initially thought, but earlier this week I got him to the point where he could beat Episode 1 from beginning to end. He’s smart enough to stock up on items, buy equipment, collect junk and sell it, fight threads (with different strategies for each class) and even grind in lower level forums in order to gain experience to beat higher level ones.

The main thing he doesn’t do is have conversations with NPCs, he just skips them and gains the desired ending effect. But those don’t need to be tested for balance anyway.

The idea is we can have BalanceBot run the game over and over, gathering stats as to how many attempts it takes him to beat a particular forum. After running it many times, we can get some cool numbers out of it. For example, we’ll know if a camwhore is slightly stronger than an emo kid at a particular level and weaker at another.

After every adjustment to the game balance, no matter how minor, we can run BalanceBot again and see how it affected the overall gameplay. Of course, this takes some time to run: It takes BalanceBot 9000 2 minutes to beat the game from beginning to end on my Quad-Core Xeon machine, and to get good stats we have to run the game many times.

I have already learned some interesting things about Episode 1’s balance that I didn’t before, and I haven’t even started tweaking things. I’m pretty sure we will see a much smoother gameplay experience as a result, both for Episode 1 and Episode 2!


Written by eviltrout

June 13, 2008 at 9:05 PM

Posted in Episode 2, Home, Site Updates

Tagged with ,

10 Responses

Subscribe to comments with RSS.

  1. Sweet…

    I like your approach to the touchy subject of class balance 🙂



    June 13, 2008 at 9:05 PM




    June 13, 2008 at 9:05 PM

  3. That’s pretty awesome. An empirical approach to game testing.

    The only problem would be if a real user comes up with a strategy you didn’t anticipate and breaks the game…;)


    June 13, 2008 at 9:05 PM

  4. We’re looking at you Myspace Tom!


    June 13, 2008 at 9:05 PM

  5. Could you post some of the results?

    Oh, and I like class imbalance. It stirs up gameplay.


    June 13, 2008 at 9:05 PM

  6. Try BalanceBot on the Great Firewall of China maybe? I wonder how he’d do on that.


    June 13, 2008 at 9:05 PM

  7. You REALLY need to give us the chance to challenge BalanceBot 9000. And there should be E-Peen involved for doing well.


    June 13, 2008 at 9:05 PM

  8. @Thingysomeone I probably won’t publish anything until we’ve done more balancing.

    @TheFiendOfPizza There’s no way would Balance Bot be good enough to beat that forum 🙂

    @Robert That might be fun! I’ll keep it in mind.

    Evil Trout

    June 13, 2008 at 9:05 PM

  9. What does Robert mean? Does he mean like the pvp aspects you’re planning, or what?


    June 13, 2008 at 9:05 PM

  10. How’s it feel to be a much better, smarter coder than Radium?

    Are you gonna buy a 1000$ chair?


    June 13, 2008 at 9:05 PM

Comments are closed.