• Create Account

## How to design the price of a weapon in tower defense games

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

4 replies to this topic

### #1sunnior  Members

108
Like
1Likes
Like

Posted 27 May 2013 - 06:56 AM

I'm trying to design a tower defense game. Every weapon has its price. More powerful weapon is more expensive.But how to design the exact value, so the game is balanced. Is there any rule?

### #2C0lumbo  Members

4072
Like
2Likes
Like

Posted 27 May 2013 - 08:00 AM

I thought this was a nice approach http://www.gamasutra.com/view/feature/186088/postmortem_intelligence_engine_.php?page=2. TLDR version: Have the AI play millions of games against one another every single night with genetic algorithms to optimize their behaviour, then see what the results are like. If the genetic algorithms are coming up with a very unbalanced strategy, then you probably have an unbalanced game.

I have a similar, far cruder approach in my RTS, where I simulate many games overnight and randomly assign a tactic to each AI, then see if any of them are succeeding too well and adjust costs/effectiveness accordingly.

These are very programmer-centric approaches though. I'm not a designer, but I think the more common approach is to take a good guess with the help of some spreadsheets (you probably want to define weapon strength in some common unit, like damage per second, and make sure no weapon offers too much damage per second per dollar), then refine it with a lot of play testing. Of course it'll be tricky to calculate damage per second when you account for splash damage, accuracy and non-damage effects (e.g. slowing down enemies), so you'd need to introduce formulas to fudge the damage values a bit according to these sorts of properties.

Edited by C0lumbo, 27 May 2013 - 08:01 AM.

### #3SimonForsman  Members

7586
Like
1Likes
Like

Posted 27 May 2013 - 09:52 AM

I thought this was a nice approach http://www.gamasutra.com/view/feature/186088/postmortem_intelligence_engine_.php?page=2. TLDR version: Have the AI play millions of games against one another every single night with genetic algorithms to optimize their behaviour, then see what the results are like. If the genetic algorithms are coming up with a very unbalanced strategy, then you probably have an unbalanced game.

I have a similar, far cruder approach in my RTS, where I simulate many games overnight and randomly assign a tactic to each AI, then see if any of them are succeeding too well and adjust costs/effectiveness accordingly.

These are very programmer-centric approaches though. I'm not a designer, but I think the more common approach is to take a good guess with the help of some spreadsheets (you probably want to define weapon strength in some common unit, like damage per second, and make sure no weapon offers too much damage per second per dollar), then refine it with a lot of play testing. Of course it'll be tricky to calculate damage per second when you account for splash damage, accuracy and non-damage effects (e.g. slowing down enemies), so you'd need to introduce formulas to fudge the damage values a bit according to these sorts of properties.

Also, if space is nearly unlimited (free tower placement such as in desktop tower defense for example) you probably want higher dps/dollar for expensive towers (since you want it to be worthwhile to buy a few large towers rather than multiple weak ones(allthough you can use armor effects on some enemies to reduce the effectiveness of cheaper towers in the late game instead)), if you got fixed tower placements it might be better to give the really powerful towers a lower dps/dollar value than the cheap ones (to keep some use for the weak towers while still pushing the player to get some powerful towers with their spare cash), it could also be a good idea to have more strategic towers (fast shooting but weak towers might chew through unarmored enemies while being almost useless against armored foes(if you implement armor as a straight damage reduction it will have a far larger effect on weaker towers) and slow hard hitting towers could be unable to deal with large swarms of fast moving units.

Personally i'd just go with my gut feeling and adjust after its been tested, your enemy and level design will(or atleast should) have a huge impact on the effectiveness of various towers. Preferably no tower should be perfect against all enemies and different levels should require slightly different tactics.

I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

### #4mippy  Members

1013
Like
3Likes
Like

Posted 27 May 2013 - 10:58 AM

Set the price of the cheapest tower to 1 and then start testing.

The cost of the other towers should be a result of how much progress you want the player to do in a certain timespan. Lets say you want them to play for 5 minutes to get to tower 2, then the cost of this tower should be 5. Then make sure the player will earn about 1 money per 5 minutes.

The timespan can be replaced with some kind of skillspan or some kind of levelspan.

To make it perfectly balanced you need to play it a lot, or build a AI that does it for you - but that can be really, really hard.

### #5Orymus3  Members

18543
Like
0Likes
Like

Posted 27 May 2013 - 08:51 PM

What is your intent? Is it, as mipmap mentionned, a progress kind of thing, or do you want to keep the game competitive?

If this is a single player tower defense game with no afterthought, then yes, you should measure mostly the progress the player needs to make in order to acquire the new tower.

If the intent is competitive play (there's a few examples...) and score matters, then you're probably going to do a big theoretical balancing document, which will get trashed as soon as you see the synergies in-game. If all of your weapons only deal damage though, it probably won't be as bad, but be careful with slowing effect, AoE and other special effects (including faster firing rates)

-=- My Articles -=-
Getting Games Done - Method and tools on how to start a hobby project and get it Done!

The Art of Enemy Design in Zelda: A Link to the Past - Reverse-engineering functional enemy design from applied example.

Retro Mortis - "RTS" - Article Series (4 Parts) on the history of RTS development (4th part finally released!!!)

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.