New account registration is temporarily disabled.

MONSTERS, STATS, DAMAGE AND BALANCE. A GAME OF NUMBERS.

Posts

Pages: first 123 next last
I've started work on my first project, and I'm having some trouble with a design stage. And it's really bothering me because I for some unknown reason simply refuse to start mapping and eventing until I have some starting points done on the database.

I am, understandably, utterly confused by how I should balance the numbers in my game.

First of all, I have the overall stat spreads of my characters figured out, but I'd like to have numbers considerably lower than those on te default spreads. All stats will be lowered, but HP more than all the others. I just don't really like having HP in the hundreds at level one. My two problems in this area are:
  • How should I adjust the damage formulas to take into account the lower relative HP? Slapping a division on the previous formulas doesn't seem elegant.And speaking of that, how do I even know if a formula is good?
  • How much variance can I have in stats? For example, if I want to make a glass cannon character, how I can I make his attack and how low can I make his defense? I understand that this varies from game to game, but I'd like to have some concept of safe zones.

Then, there's equipment. I'm still trying to figure out how much it should influence stats. It doesn't seem to matter as much as the rest and I feel like I have some leeway. But is something like equipment influencing about 20% of the final stats a good number? It varies with the ammount of customization you want, of course... I've actually been toying with the idea of a game where all the characters have the same base stats, or different but with very little variance, and their final stat spreads are almost entirely determined by equipment with large and varied bonuses, but this shall not be that game.

Lastly, there's the matter of enemies. This, to me, seems like the hardest part. The default database does come with some examples of (bland) enemies, but I have no indication of what level they are intended to be fought at, so I can't derive any balance rules from them. How strong should the enemies be relative to a party of average level for the area? How should the stats scale down with the increase number of enemies in a battle? Should some stats decrease more harshly that others? (I think defensive stats should scale less harshly than offensive ones, and speed shouldn't even be considered in the equation, but I might be wrong.) How much should, on average, the difference in stats between a single enemy random encounter and a boss be?

I understand that most of this is trial and error. I understand I'm going to spend countless hours coing through the same content over and over again making small changes to the numbers every time until I get it right. But I'd like to have some guideline I can follow so I start on the right path.
Craze
why would i heal when i could equip a morningstar
15170
I'm not going to tackle all fifty of your questions in a single post, but I'll start off with a general response.

First off, if you're scared of stats (which is understandable and okay!), then there is absolutely no issue with having all characters have the same base stats. If both Cynthia and Harold have 15 ATK to start and 240 ATK at L99, you can still influence their relative ATK via equipment -- if Cynthia gets swords and Harold gets daggers, then Cynthia might wind up with 400 endgame ATK and Harold with 320. You have stats consistently increasing to make levels desirable, and you also can easily allow balanced customization this way. If you don't drop a +50 ATK sword until the fourth dungeon, then Cynthia can't very well use it, now can she?

As for HP totals, I follow a basic rule of "eight hits does it." What this means is that I balance enemies to deal enough damage so that eight average hits (whether they be attacks, spells, etc.) will kill a character with average defenses. Abilities are measured in "hits," so, using Final Fantasy terms (please don't base your skillsets on FF, and maybe don't even use normal attacks in the traditional sense? k thnx):

Basic attack = one hit
Fire = two hits
Attack, charged up = three hits
Fira = four hits
Firaga = six hits
Limit Break = eight hits

So, a character with average defenses against a foe with average stats would die from four blasts of Fire, eight basic attacks, three charged attacks, or Firaga followed by Fire. A boss enemy might be able to withstand 36 hits, while a typical monster could only sustain three or four.

Now, I'm working on a very healing/tanking-heavy project, so eight hits might be extreme for your game. If you keep damage outputs the same, but up HP so that enemies will take out a character in, say, twelve hits, you'll allow the player a bit more room to breathe.

Note that healing counts as "negative" hits, so a potion might be "-2 hits" and Cura might be "-4 hits" (25% and 50% HP, respectively).

I know this doesn't address everything in your post, but you have a lot of stuff crammed into it. I'll let other people take a stab at it now ~ !
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
Oh man, a topic where someone wants me to rant for ten pages about combat formulas? Hell yes. My favorite kind of topic.

First of all, in addition to the stuff you mentioned it being dependant on, a lot of this also depends on how hard you want your game to be, how long you want normal battles to be, and how much you want grinding to matter.

Game difficulty is impossible to get "right". The best difficulty for a game is one that pushes the player almost to his breaking point, but then lets him succeed. But this is obviously very different from one player to another. Chances are, if you're thinking enough about this stuff to start a forum topic about it, you're better at RPGs than most players. But that doesn't mean you have to dumb it down. It's certainly easiest (by far) to make a game at a difficulty level appropriate for yourself, instead of appropriate for someone else - because just by playing it once, you can immediately tell if it's right. You might also consider creating multiple difficulty levels? I generally give enemies higher speed and offense in higher difficulty levels, without adjusting their defense or HP. However, in key battles where the player can die from taking too long, such as a timed boss battle, I might increase the enemy's HP too. I say "increase for harder difficulties" but that's kind of incorrect - I actually create the hardest difficulty first, and then nerf the enemies for the easier mode(s), so that I don't have to do extensive re-testing.

Normal battle length is mostly a factor of how many normal battles you plan to have. Short, frequent normal battles are the norm in many games, with battles lasting about two rounds of attacks from the hero party (i.e., each character attacks twice). This can put more focus on exploration instead of combat, if the battles are easy and mostly just wear down your resources. It gets the player back to exploring before he forgets what he was doing. It also makes the bosses stand out more. However, making the normal battles short means that either you're going to have to create a lot more variety of normal battles for your game, or you're going to have a lot of repetition as the player encounters the same battles over and over. On the flip side, making fewer, longer normal battles, maybe taking as much as 5-8 rounds of attacks to win, will make your entire game's combat more tactical, and will give you more chances to have enemies act like miniature training versions of the upcoming bosses, which I think is a nice way to prepare the player. Pick which way you want your game to feel, and set your enemy defense/hp accordingly.

The two biggest factors that I think affect how much your stats grow by are the amount of character customization you want the player to have, and the effectiveness you want grinding to have. If you make stats to go up by a lot, then fighting older enemies will become an extremely effective way of levelling up - it'll be in the player's best interest to run away from battles in the current dungeon and fight battles from four dungeons ago instead. They might give half as much XP, but they'll take a fifth as long. Also, if levelling up causes your stats to go up by a lot, then grinding enemies to gain levels becomes really important and effective, whereas if equipment causes your stats to go up by a lot, then grinding's effectiveness is sharply diminished because the player's primary way of getting stronger is to find and buy upgrades. Getting lots of stats from equipment also lets the player choose who gets those stats and which stats they get - though if you have a more complex level up system than the basic one, you can get the same result without equipment. Meanwhile, if your stats only go up by 2-3x from the beginning to the end of the game, then the choices the player makes about how to build his characters aren't going to have much effect.

For another giant post I made a week or so ago about damage formulas, see this post.
Craze
why would i heal when i could equip a morningstar
15170
OH LOOK CRAZE AND LOCKEZ BOTH IMMEDIATELY RESPONDED TO THIS TOPIC

HOW SURPRISING

LockeZ
Game difficulty is impossible to get "right".


FALSE.

CHRONO TRIGGER.
chrono used a lot of boss attacks that diminish your HP by percent, like dropping it by half, or even 99. so regardless of level that attack is as proportionally devastating. do you think that was part of the success?
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
I think Chrono Trigger did about a million things right all at the same time, so no one element of it is going to make your game good by itself, and saying anything like "CT was good because of gravity attacks" would be an oversimplification to the point of ridiculousness. I uh, also think it was a really easy game? But it was so fucking fun that I didn't care, and didn't even notice how easy it was until I started designing games. (Related: CT hardtype hack)

But gravity-type attacks aren't particularly uncommon in RPGs in general. Attacks that deal a percentage of your current HP are a decent way of seeming threatening without actually being threatening. Attacks that deal a percent of your max HP are a good way of limiting the effectiveness of defensive buffs and defensive equipment that the player is using, if there are battles where that's something you want to do. I don't like using either one very much in games where the player has a lot of semi-permanent stat customization (like picking stats at level up), because they deal more damage to people who specialize in taking less damage, which is counterintuitive. They flip the effect of your stats upside-down, which is okay occasionally but kinda stupid to do very often.

In general, I actually like the stats game, as a player. I like minmaxing my rogue to give him 37 attacks before the enemy gets a turn (in a row!?) and boosting my mage's matk until he can deal a billion area damage exactly once and then immediately die. So if I can't switch specializations at will, then I dislike it when my stats' effects are suddenly totally nullified in certain battles.
How do you know a damage formula is good? It's hard to take it entirely on its own, but I think most games are trying to accomplish a couple goals with one:

- Setting up specialization. At the most basic level, this could be something like letting the warrior do more damage than the healer, making some enemy weak to fire, or letting a character spend more MP for a stronger attack.
- Setting up an overall power curve. How far off the level and equipment strength you had in mind does it take for an enemy to be impossible or trivial?

Just for one example, with a basic subtractive Atk - Def system:
If Def values are close to Atk values, a 10% increase in an Atk value will change effectiveness of that character (measured in the number of hits it takes to kill something) a lot. But if Def values are a few times lower than Atk values, a 10% increase in an Atk value isn't going to increase damage much more than 10%. That may not even reduce the number of hits it takes to beat most ordinary enemies.

Without considering other factors, I don't think I'd say that any set of these is necessarily bad. If the warrior kills enemies in three hits, the game will play differently depending on whether the healer kills enemies in four hits or fourteen, but whether that's an effective choice still depends on what other options you open to the player. Hopefully you can figure out approximately the balance you're looking for.

There's a third goal I should mention:
- Transparency to the player.
Opinions may differ and this varies with visibility into enemy stats, but IMO generally you want your player able to make informed choices about the amounts of damage things will do. This isn't exactly "simpler is better", but that's probably how it'll usually work out.
author=Craze
As for HP totals, I follow a basic rule of "eight hits does it."


That is actually a pretty good rule of thumb. Thanks! And I hate the FF skillset just as much as you. I remember making an epic rant about it not too long ago.

author=LockeZ
Normal battle length is mostly a factor of how many normal battles you plan to have.
...
On the flip side, making fewer, longer normal battles, maybe taking as much as 5-8 rounds of attacks to win, will make your entire game's combat more tactical, and will give you more chances to have enemies act like miniature training versions of the upcoming bosses, which I think is a nice way to prepare the player.


This, dude. I want every battle (maybe with the exception of the "tutorials") have a tactical aspect, so I may be going with that route. Smaller dungeons, less encounters, everything is a threat.

author=LockeZ
The two biggest factors that I think affect how much your stats grow by are the amount of character customization you want the player to have, and the effectiveness you want grinding to have.
...


And so I reach the conclusion that I want weak level ups and strong equipment. And I'll certainly make sure that I read the post you linked. There's few things more interesting than a wall of text about damage formulas.

author=LockeZ
In general, I actually like the stats game, as a player. I like minmaxing my rogue to give him 37 attacks before the enemy gets a turn (in a row!?) and boosting my mage's matk until he can deal a billion area damage exactly once and then immediately die. So if I can't switch specializations at will, then I dislike it when my stats' effects are suddenly totally nullified in certain battles.


You said it! I also love doing completely crazy stuff. I'm always looking for ways to completely break the game and do something awesome, and I think my game design style will entertain other Johnnies. For example, there's a spear I have planned in my game that when equipped on the party's cleric and combined with a certain accessory allows you to set up a two turn party wide condition wipe, and when equipped on the warrior and combined with a certain piece of armor lets him boost his attack to ludicrous levels, but by itself it's certainly good stat wise, but the ability it grants is poor by itself.

And thanks for the input. I may not have adressed all your points, but I have read them all and right now I'm getting pumped for design. Thanks a lot!
i love this kind of shit.

but unless i'm mistaken you're witholding a crucial piece of information.


WHAT ENGINE ARE YOU USING?
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
What engine you're using doesn't really have anything to do with design and theory. We're talking about whether stuff is a good idea, not whether it requires a CBS to do in RM2K3. :)
riposte: implementation is everything

admission: this is 'design & theory', but OP seemed to want practical advice which is, let's be pragmatic, engine dependent.
Riposte: The implementation of something purely mathematical like a damage formula will have the same result regardless of engine, not taking into account things like rounding, which make so small a difference that they are irrelevant.
" until I have some starting points done on the database. "

You mentioned the "database" word two times in your first post. So in this topic, i think, that the engine question matters.
My use of the word "database" makes it likely that I am using some sort of RPG Maker engine. But who knows, maybe I'm using something else that uses a database. Maybe I am making that database from scratch and coding the game to acces that database in a different engine. Maybe I'm making the whole thing from scratch in Assembly.*

It does not matter. We are discussing the design of the mechanics themselves, not their implementation. The implementation is outside the scope of this topic.

I'd like to keep discussion of game mechanics as engine agnostic as possible...

* But if that matters so much, I'm using Ace. Watch as this information fails to change anything about this discussion.
I'm glad you want to talk in an engine agnostic way. That's about the only time I'll get to share anything meaningful.

You wanna know the formula I've used for years, in two RTS games, a final-fantasy style game, and in a fire emblem style game?

Damage = Math.sqrt(ATK)+(ATK/DEF)

I've always been most concerned with the interactions of different level/strength units.

And if you made it in assembly, I would pay to see that show.
Craze
why would i heal when i could equip a morningstar
15170
what the fuck is that damage equation, wouldn't it average out to "1" most of the time unless you used really low DEF numbers (and I hate it when all stats aren't equal on a point-by-point basis)
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
Hmm, attack growing faster than defense doesn't actually bother me. Enemies having very different stats than player characters also doesn't bother me - actually it makes me happy, because it allows for more variety in enemies. If both of those things bother you, though, you're probably going to have to pick a damage formula that raises the attack power by an exponent.

In my current project, the damage formula is att*10/def. Starting values for players are about 30 att/10 def. Player attack power goes up by about 50% every two dungeons, while player defense is sort of unpredictable because it doesn't increase with level, and from about the fourth dungeon onward you have to choose between offensive or defensive equipment. Meanwhile enemy stats are so wildly unpredictable that it's tough to come up with average numbers even though I'm looking at their stats while I write this. This happens partly because you keep changing and losing party members, and partly because I am going way out of my way to add a lot of variety from one battle to the next (do you want the stats for the enemy sniper who attacks every other turn for huge damage, or the enemy cannon fodder who does almost no damage and dies in two hits, or the comm guy who keeps summoning allies and has low attack to make up for the fact that he prevents players from healing, or the the medic who never attacks, or the patrolman who casts attack and defense buffs and sometimes becomes invincible? That plus three bosses is my entire second dungeon).
These were our formulas for damage and other things (note, that this is actually for a real time system):

We had 3 stats, Strenght, Agility and Willpower. The average base was 12 for each. Average base health was 40.
Damage: weapon_base+((str-10)*weapon_coefficient)
Weapon base was 4-8 for a regular sword, with 1.0 coefficient.
The final damage was this damage above - armor rating. Armor rating was entirely from armor, and if you had a shield, and you hold down the block key, that value was added to the armor rating, but only for attacks you face directly. Armor rating was an integer value.
Ranged weapons used to calculate damage from agiity, and spells also, in the same fashion, from willpower.
all resistances was percent based.

On each level up, you can distribute one stat point, or +5 health, or mana. This system was really good for us. Of course, in abs, there are much more factor here, like positioning, manual dodge... we kept a regular enemy to be around 5 hits to kill.
I use a different damage formula for every project. I start with deciding what I want the damage formula to accomplish and then design one accordingly. There are a lot of questions to ask oneself. How much defense does the character with the highest defense have compared to the one with the lowest defense? How much more damage is the character with the lowest defense supposed to take compared to the high defense one? How are the numbers supposed to change when you're attacked by a strong respective a weak enemy?

Often the database values changes as the formula is developed. For example, I may start with "the fighter should have about 200% the defense of the black mage" and later find out that maybe 175% or 225% works better.

Currently, I'm handling defense the following way: Reduced damage = Old damage * attack / (attack + defense). This is done since in my game, for various reasons, the attack and defense value between characters and enemies varies greatly and I needed a formula that that lets defense have an impact even if it's low while still not getting a massive amount of zero damage situations.

I usually make character stats and equipment about equal. There are some variances, agility is usually unaffected by equipment, attack is about equally affected by character and equipment and defense is mostly affected by equipment. To be honest, that's usually done so because of personal preferences rather than me checking what works the best. Still, I design the formulas so that the game works with those premises.

I keep characters and enemies on the same scale. This doesn't mean I necessarily make them have equal values, but I avoid situations like where characters have way more attack than enemies while enemies have way more hit points. If the average enemy has about half the hitpoints of the average character, they will have somewhat close to half the average even near the end game (it may be a little higher to make the game harder and to account for the player have more tricks available.) This is to allow the confusion stat to make sense and I find it easier to plan things that way.

The first step should always be to think trough what you want. I have seen a lot of RPG maker games where the author implemented a stat distribution script, but it didn't work so well because the author stuck to the default formulas and those aren't made for such a level of player control.
I increase damage for higher ATK and DEF values to offset increased HP at higher levels. In my formula, the lowest possible values for ATK or DEF are 5, and the highest possible are 255. All characters and enemies are treated identically, except for a couple scripted battles.

Really, you need to experiment to see what damage formulas you like. I used an online graphing calculator to find them out, graphing to see what, say, two equal players would do, at high and low level, and what a high level player would do to a low level defender, and vice versa. That also helped me decide the HP range and growth per level.
Pages: first 123 next last