Balance by Design

Balance by Design

Discuss game development here, from a distinct game project to an accessible third-party mutator, down to the interaction and design of individual units if you like.

Moderator: Moderators

User avatar
FoeOfTheBee
Posts: 557
Joined: 12 May 2005, 18:26

Balance by Design

Post by FoeOfTheBee »

rather than trial and error...

For the next release of Xect vs. Mynn, I've used the following formulas for balance (E is energy cost, M is metal cost).


BuildTime = E*2.3+M
MaxDamage = (E*M*M)^(1/3)*2)/(2*IsAir+1)
MaxVelocity = (E*E*M)^(1/3)*(2*IsAir+1)/(M*M*E)^(1/3)

The default damage for all weapons but the d-gun is set to 100, and
DamageModifier = (E*M)^(1/2)/1000

This is of course experimental. I wanted to get a few comments before I post it, which I will probably do in 48 - 72 hours.
User avatar
PauloMorfeo
Posts: 2004
Joined: 15 Dec 2004, 20:53

Re: Balance by Design

Post by PauloMorfeo »

Foe OfTheBee wrote:... I wanted to get a few comments before I post it ...
All i'm gonna say for now is:
- Yay, a balance out of a formula! I'm not expecting great stuff to come out of it, for now, but i'm interested in seeing how it turns out.

More technically, in the formulas, you need to add these:
- Unit's quality modifier!
For example, you have a unit that moves fast, you use a high modifier to calculate it's costs. If it moves over water and stuff (hovers), also a high modifier. If it is airborne, an even greater modifier. This would allow you to account for diferent kinds of mobility, including stationary buildings, other stuff like cloacking ability and would allow you to substitute the "IsAir" modifier from the formula. Of course this crucial value it would still be subjective and error prone but i think that it's probably best like that.

- Weapon's quality value!
You only seem to be using damage to define a weapons's quality. That can't be. The dmg/sec must be modified by a modifier that's defined by how good the weapon is.
This modifier can, probably, be broken down into another formula:
# Range (BB's weapons should be costly because of they're range)
# Something else?
# Projectile's quality value!
This one is the true subjective value of the weapon like the other one for units. For example, in TA, one of the worst projectiles there are is the Rocko's missiles. They're slow, they don't arc meaning they hit every obstacle, meaning they deserve to deal greater damage (as they do). Probably even worst is the bomber's projectiles which means that the unit must be plane and pass on top of the target in runs. This is why bobmber's bombs should be so deadly.
User avatar
PauloMorfeo
Posts: 2004
Joined: 15 Dec 2004, 20:53

Post by PauloMorfeo »

Unit:
Qualities-Costs = 1 (?) Qualities/Costs = 1 (?)
(Costs shouldn't include things like energy spent per shot. That's a weapon decreasing modifier. Only costs needed to build the unit)

Qualities:
- Mobility
- Durability (armor)
- Special abilities (Cloacking, ressurecting, build trees, etc)
- Offensive capabilities (how good at dealing damage or paralising)

Costs:
- Metal
- Energy
- Build Time

#############
Costs:
This is a tricky part because it must be dicided how much more Metal is important than Energy. Tricky because people don't seem to use standard placement of resources. In oTA Metal was much more important than anything else. Now, with all the metal-bloated maps in Spring, things aren't quite the same and we saw that in the early times where a Metal beast like the Goliath should be hard to build but people were making them easily enough.
How much more important Metal and Energy are than Build Time. They're all related and we have the problem with the Metal. Also, Build Time value is related to the builders. The faster they build, the less valueable Build Time is.

One aproach is to use these relations as ... ... premissas (the key factors that define a thing). Meaning you would define these and then adapt the mod to these key factors, instead of the other way around, trying to find out which key factors are already defining the mod's balance.

#############
Qualities:
- Mobility
It capability to move. Hover is better than not and, thus, should be more expensive. Airplane is even better. Faster airplane is even better. And so on.

- Durability (armor)
The most simple of them all.

- Special abilities (Cloacking, ressurecting, build trees, etc)
How much valuable is cloacking, etc, etc? Can be seen as very subjective, no? But i think not. I think establishing these values is defining key factors of the balance. The mod wouldn't be unbalanced because of them. It would just be based on diferent key factors. Of course it wouldn't mean than people wouldn't dislike the key factors on which the mod was balanced but i regard it as, merely, key factors the define the mod's balance. There are no perfectly correct values here. There are, just, diferent balances.
Think about Starcrap/Warcrap. In them, user targeted special abilities are extraordinariyl powerfull, unlike TA. That doesn't means that those games have unbalanced sets of units, just that the balance is based of diferent key factors.

- Offensive capabilities (how good at dealing damage or paralising)
Most of what i think about this i've already spoken of above.

#############
The final part! Put all that in a meaningfull mathematical formula. That's really not my speciality. Definetly!
User avatar
PauloMorfeo
Posts: 2004
Joined: 15 Dec 2004, 20:53

Post by PauloMorfeo »

PauloMorfeo wrote:...
Qualities:
- Mobility
- Durability (armor)
- Special abilities (Cloacking, ressurecting, build trees, etc)
- Offensive capabilities (how good at dealing damage or paralising)
...
1 more quality:
- Where is it built?
A unit that needs a costly lvl-2 factory to be built shall have a modifier decreasing it's value.

A final modifier to aply to the sum of all other qualities:
- Concentration of power!
It is very important and, as i mentioned above, subjective but not impossible to balance.
It is known that a Krogoth with the same carachteristics as 1000 Rockos (1000x Armor, 1000x damage) is much better than an army of 1000 Rockos.
This is another key factor to define that will influence the mod's balance.

Ho, and beware of Gnome's wrath at formulae. :p
Warlord Zsinj
Imperial Winter Developer
Posts: 3742
Joined: 24 Aug 2004, 08:59

Post by Warlord Zsinj »

Yeuch.

Balance out of forumulas leads to stagnated, repetitive, predictable and robotic gameplay.

A game which is hollistically balanced is far better, even if it has a few flaws.

Indeed, it is the flaws in a game balance design that makes balance so interesting.
User avatar
Optimus Prime
Posts: 755
Joined: 03 Oct 2005, 14:31

Post by Optimus Prime »

hehe i thought about a formula depending on the costs too, but i think this is the wrong way. If u make the strengh of a unit out of its costs like the way u do, there will be no much difference in for example the damage. I mean u will not have a Unit which costs more than another one, but does less Damage which i would say should be sometims. And u dont look at important values like range and so.
I would go the other way and calculate the costs of a unit out of its other values. But this will be a very complicate formula... u have to look at speed, HP, Damage, Range, special abilities (cloak, stealth), weaponspeed, and even more.
User avatar
Guessmyname
Posts: 3301
Joined: 28 Apr 2005, 21:07

Post by Guessmyname »

To make a formula for balance you'd need to take into account all these things:

Average Map Terrain
Average Terrain Hardness (or: how long it takes for the average map terrain to be shelled into an impassable swamp)
Max Slope
Max Speed
Movement method (air, sea, underwater, hover etc)
Unit Size
Acceleration
Average Map Speed Modifier
Average Map Gravity (Ballistic weapons / Planes)
Brake Speed
Turnrate
Max Health
Armoured States
Weapon Arcs
Weapon bursts
Weapon burstrates
Weapon paths (ballistic, laser, bomb etc)
Repulsors
Repulsor effectiveness
Weapon Energy Costs
Weapon Metal Costs
Weapon Ranges
Weapon projectile size
Weapon Splash Damage
Weapon Edge Effectiveness
Weapon Guidance
Weapon Speed
Weapon Acceleration
Weapon Turnrate
Weapon accuracy
Weapon accuracy vs moving targets
Weapon Badtarget categories
Weapon TargetOnly categories
Weapon Slaving
Weapon Causes Paralysis
Weapon Damage
Weapon Reload Times
Weapons that get disabled for various reasons (there are units with two weapons, but only one can be active at a time, and are switched between using on/off. There are also units whose weapons are disabled after they lose a certain amount of health)
Weapons that do different damage to different units (ie, can only damage a krog or something)
Can it be captured?
Radar
Radar Jamming
Cloak
Cloak discovery distance
Cloak Cost
Cloak Cost (Moving)
Energy Cost (constant)
Energy Build Cost
Metal Cost (constant)
Metal Build Cost
Corpse Metal
Corpse Energy
Ressurect Cost Metal
Ressurect Cost Energy
Can Ressurect?
Can Reclaim?
Can Capture?
Can Move?
Can Repair?
Can Build?
What it can build
Air repair pads
Paralysable?
Where it's built
Kamikase?
Death Explosion Damage
Death Explosion Splash Radius
These stats, for but all the other units it'll come into contact with (sure, it has 500 health, but what if most weapons do 600 damage?)


I've probably missed out quite a few too

Good luck
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

I think the best method here would be to generate several seperate algorithms to generate a set of constants, such as mobility etc......

Those constants would be used in several different formulas as to its efficiency as an artillery unit which would obviously weight things differently from a strike unit.

A generic formula would never be accurate enough.
User avatar
Guessmyname
Posts: 3301
Joined: 28 Apr 2005, 21:07

Post by Guessmyname »

Missed some:

Mass
Max Transportable Mass
Max Transportable units
Building Transporter
Can transported units fire while transported?
Cruise Height
Flares
Crush Strength
Flammable Corpse?
Corpse Size
Autoheal
time to idle
User avatar
Weaver
Posts: 644
Joined: 07 Jul 2005, 21:15

Post by Weaver »

And more:

Metal Make
Metal Storage
Energy Make
Energy Storage

Basically every tag you can think plus any other applicable measure the game uses.

It would be an amazing formula, it would have to account for tha fact that very simple unit can be cheap and fast to build if it is small. Where as that smallness makes a powerful unit more difficult to build.

I would love to see this formula working as it could create a whole new way to play, we could have teams of people designing units in secret using "the formula" for 2 or more sides. The completed units could be submitted for evaluation and inclusion into to next update of the WAR!

I'm thinking we'd start small with just a few units on each side for the first release, then at each subsequent release we could allow a number of modifications/upgrades and some more units incuding higher tech levels.

Sorry to hijack Foe', I've sitting on this idea for a little while and I was unsure if the community was really interested in a formula for cost.
User avatar
Guessmyname
Posts: 3301
Joined: 28 Apr 2005, 21:07

Post by Guessmyname »

...

As I said before, good bloody luck to anyone who tries to make a formulae that covers everything. I, for one, shall simply playtest my mod into a good balance (with some help, hopefully)
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

ahk, I need these formulas to improve my AI building selection routines.
User avatar
FoeOfTheBee
Posts: 557
Joined: 12 May 2005, 18:26

Post by FoeOfTheBee »

I will try to change damage to damage/sec, and make health inversely related to weapon range. I think game play will be good, but soon we'll be able to try and find out. Often these formulas give results very close to the previous values.
User avatar
Guessmyname
Posts: 3301
Joined: 28 Apr 2005, 21:07

Post by Guessmyname »

Thats not too hard. Balance via formula is hard.

EDIT: This post @ Atlantai
User avatar
Nemo
Spring 1944 Developer
Posts: 1376
Joined: 30 Jan 2005, 19:44

Post by Nemo »

Balance via forumula leads to StarCraft gameplay.









This doesn't have to be a bad thing, just thought I'd mention the name of gaming satan and compare you to it and see what happens <_<


Good luck though. From what I've read so far, these are the absolute must have variables: turnrate, movespeed, damage per second dealt, HP, weapon range, metalcost, energycost, metal make/use, energy make/use (if you include storage....half it, or something, its not a big deal) tech level its built at, and ability to transport/be transported

Okay, I realize that my list pales in comparasion, but I'd imagine that you're looking for fewer variables rather than more =P

All of the weapon related ones can be reduced to damage per second and range. Cloaking, capturing, radar, jamming can all be called special abilities, which can be assigned different values. Cloaking is very powerful (high value) but its generally balanced with a large detection radius and high energy cost. I'd reccomend trying to take values seperately, and balence each unit as a whole, rather than inherently balance one characteristic across the board.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Yes if I just wanted to evaluate how threatening a unti is it'd be easy, I'd use soemhtign along the lines of (energycost + metal cost /2 )/maxweapondamage.

But I've got a lot more to handle than just that.


Also the balance by formula leads to starcraft play is only true if you apply a generic singular formula one ach unit without taking into account the other untis. What you would want is to do it for each unit of a race then sum it all up and compare to the other side.

You might also want to take into account certain other aspects, such as how long does it take to get 1 of the unit from startup given the quickest route up the build tree without stalling. All in all at the end the best formula would give a probability not a value, with a percentage of error either way.
User avatar
FoeOfTheBee
Posts: 557
Joined: 12 May 2005, 18:26

Post by FoeOfTheBee »

Switching to damage/sec and inversely relating health to range are too tedious to do manually.

So, I was setting up a database solution this afternoon, parsing all the fbi's and tdf's with python, and I remembered that paulada was already doing something like this.

So I'm holding off for the moment, and the balance won't take these factors into account until it is easier to take them into account.

And regarding Starcraft gameplay... could be. This is experimental, we'll find out how it works.
BadMan
Posts: 146
Joined: 07 Oct 2005, 03:05

Post by BadMan »

Don't make a mountain out of an ant hill.

Also don't turn to math and equations when common sense will do.

Having an equation that will do everything is nice, but that equation has to have absolutely every var. in it and has to account for everything. If not, the equation is wrong and the results will be too. You will prob put so much work into the equation that you can prob hand balance all the units in the same time or faster than trying to perfect an equation.
User avatar
Nemo
Spring 1944 Developer
Posts: 1376
Joined: 30 Jan 2005, 19:44

Post by Nemo »

but if he does manage to make a useable one, others can use it for their own work later on.
User avatar
Guessmyname
Posts: 3301
Joined: 28 Apr 2005, 21:07

Post by Guessmyname »

And what if they have a different resource or build system?
Post Reply

Return to “Game Development”