Advertisement

Your thoughts on damage reduction?

Started by July 17, 2004 04:40 PM
45 comments, last by CGameProgrammer 20 years, 5 months ago
Hey Wav I think you missed my post a while back :P
It's about damage classes to make the numbers more sensible (keep the HP always below 1000 or so). Now that I think about it, it has some more hidden advantages - it's easier to calculate damage (doing so for a battle between capitol ships can quickly become a hard task, negating the advantage of having "simple" HP), there's a sort of "fear factor" when you know that a tank will ALWAYS kill you if it hits you when you're on foot (unless you have 2nd class armour :P again, easier calculations), and it prevents the "death from a thousang cuts" syndrome (there's a reason why it's a thousand and not just 20, like if each one takes 1 HP a human would have 1000, so imagine how it would be for a battlecruiser...). On the other hand, I know you're all used to the D&D systems so I don't know why I bothered writing this ;)
Quote:
Original post by rmsgrey
I quite like the idea of straight damage reduction. If you have ships with excessive amounts of shielding, then two such may well be unable to hurt each other.


I think as long as I keep this from being the norm it will be okay, otherwise you'll get far too many stalemates.

Quote:

As a related afterthought, you could also have some amount of damage reflection - some amount of damage either as a percentage or as a fixed maximum gets reflected back at the attacker...


Yes, silvered armor for lasers and richochet are definite possibilities here.

Quote:
Original post by Jotaf
Hey Wav I think you missed my post a while back :P


Ah, sorry about that!

Quote:

It's about damage classes to make the numbers more sensible (keep the HP always below 1000 or so).


The funny thing is that if you use this you're almost doing the same thing as abbreviating damage in terms of display. For instance, let's say you have a 100 HP human that gets hit by a 24369 point laser (just to be foolish). I'd display the laser's damage as 24.4k or something, which is like 24.4 points of vehicle or capital ship class damage. IOW, you can message the display w/o affecting the numbers.

Quote:

Now that I think about it, it has some more hidden advantages - it's easier to calculate damage (doing so for a battle between capitol ships can quickly become a hard task, negating the advantage of having "simple" HP), there's a sort of "fear factor" when you know that a tank will ALWAYS kill you if it hits you when you're on foot (unless you have 2nd class armour :P again, easier calculations), and it prevents the "death from a thousang cuts" syndrome (there's a reason why it's a thousand and not just 20, like if each one takes 1 HP a human would have 1000, so imagine how it would be for a battlecruiser...). On the other hand, I know you're all used to the D&D systems so I don't know why I bothered writing this ;)


FWIW, I don't have any special attachment to AD&D (I'm more taking influence from GURPS [grin]), but I'm also leary of introducing a system that has another layer of complexity, because with classes there's an adding layer of abstraction when you go to figure interactions between classes.
--------------------Just waiting for the mothership...
Advertisement
Quote:
Original post by Anonymous Poster
First, a new suggestion: use flat damage reduction armor, but you could have a armor slowly drop (either a chance of losing 1 point, or always losing 1 or 2 points for eachhit you take). You would then slowly take more damage as you get hit, a bit more realist then just flat out damage reduction (a hand gun would take forever, however, to hurt a high-armor ship).


Its funny but doing 1 point of damage is almost the same as doing 0 in a one to one combat. However, I think at least scratching an enemy is psychologically satisfying.

Quote:

If Damage > Armor then
Damage = Damage - Armor
DamageChance = 1
Elseif Armor >= Damage then
Damage = 1
DamageChance = 1 / (Armor - Damage)


Do you know how DamageChance is used? Is it simply something like if RandomVariable < DamageChance then apply damage?
--------------------Just waiting for the mothership...
There are 3 general kinds of armor in use in games:
Damage Reduction = Subtract from damage as in OP
Damage Divisor = Multiply damage by some number 0 < X < 1
Dodge Chance = If % > Chance, Damage = 0, else Damage = 100%

These have been pretty much discussed already, and as stated the Damage Divisor can be relatively difficult to calculate quickly (for a person).

This leaves reduction and chance. These variables are both used in the RPG system GURPS to good effect IMO, but there can be the problem stated earlier of two equally skilled people fighting 'forever'(long battles in a game with dice is very slow, in the pc game it might not be so bad).

However, if you give each weapon a 'targetting skill' and each armor a 'dodge skill' (so to speak), you could end up with a very dynamic system that isn't too hard to understand easily.

If you keep reduction and chance low, so that together they form a good shield but individually they are not much helpful, and then make 'targetting skill' of weapons rather high so they hit most of the time then you can have a very dynamic battle system without much apparent complexity.

Two equally skilled _s might have DR 75, DC 25%, HP 100 and do 100 damage, then that means a quarter of the time they 'miss', and the rest of the time they do 25 points of damage. With properly scaled values, this system can work very well while still having the same overall effect of a flat DR system.

You could even just hard code a DC of 25% and reduce all DR values to 75% or somesuch if you want to hide that completely from the player (presuming you don't already have such a system).
"Walk not the trodden path, for it has borne it's burden." -John, Flying Monk
You say you're hiding most of the irrelevant numbers from the player, so why are you so committed to making the damage system easy to calculate? Many games have simple bars for health, and absolutely NO numbers when it comes to damage, and they're just fine. I like these better because instead of relying on your capabilities as a human calculator, you can develop a *feel* for the battles, like any other real world skill. So players can be better at playing your game, out of pure instinct burned in by hours of play. Some weird people actually have fun playing with charts (AKA having fun filling your tax forms), but there are already a lot of games for them (hardcore RPGs)... this is just my personal opinion but you must admit that there's some value in it :)
Quote:
Original post by Extrarius
This leaves reduction and chance. These variables are both used in the RPG system GURPS to good effect IMO, but there can be the problem stated earlier of two equally skilled people fighting 'forever'(long battles in a game with dice is very slow, in the pc game it might not be so bad).

However, if you give each weapon a 'targetting skill' and each armor a 'dodge skill' (so to speak), you could end up with a very dynamic system that isn't too hard to understand easily.

If you keep reduction and chance low, so that together they form a good shield but individually they are not much helpful, and then make 'targetting skill' of weapons rather high so they hit most of the time then you can have a very dynamic battle system without much apparent complexity.

Two equally skilled _s might have DR 75, DC 25%, HP 100 and do 100 damage, then that means a quarter of the time they 'miss', and the rest of the time they do 25 points of damage. With properly scaled values, this system can work very well while still having the same overall effect of a flat DR system.

You could even just hard code a DC of 25% and reduce all DR values to 75% or somesuch if you want to hide that completely from the player (presuming you don't already have such a system).


Thanks for the input and thought put into this, Extrarius.

I've got Targeting and Evasion skills which when juxtaposed create a pretty wide variance in values. It's set up so that equally skilled opponents have a 50% chance versus one another, but that (for the sake of gameplay) even a noob will have a chance against an elite opponent. This, combined with a critical hit system and weapons and tactical positioning that can increase the chance for critical hits should make the system dynamic.

I'm not sure about hardcoding the hit chance simply because I want you to notice the increase as you level up. However, recently I was thinking about something just like this and it occurred to me that there are times when you don't want to let the player improve a stat because it's been perfectly balanced.
--------------------Just waiting for the mothership...
Advertisement
Quote:
Original post by Anonymous Poster
As I stated above, I belive the exact formula used is on the offical StarCraft site. If the above address doesn't work, it can be found though http://www.battle.net/, and if you can't find it there it may be on http://www.starcraft.org/. At this time, I can not look it up however.


No worries, and thanks for the info anyway. It just gives me different approaches and considerations in what might be both fair and challenging to play.
--------------------Just waiting for the mothership...
Quote:
Original post by Jotaf
You say you're hiding most of the irrelevant numbers from the player, so why are you so committed to making the damage system easy to calculate? Many games have simple bars for health, and absolutely NO numbers when it comes to damage, and they're just fine. I like these better because instead of relying on your capabilities as a human calculator, you can develop a *feel* for the battles, like any other real world skill. So players can be better at playing your game, out of pure instinct burned in by hours of play. Some weird people actually have fun playing with charts (AKA having fun filling your tax forms), but there are already a lot of games for them (hardcore RPGs)... this is just my personal opinion but you must admit that there's some value in it :)


Oh, definitely. I agree that it can be fun to develop a feel for how the game plays and I have met players who don't want to get down and dirty with the calculations.

But you have to strongly keep in mind that not only is this a science fiction game with hopefully a wide variety of possible challenges, but its one that (again hopefully) extends well into unfamiliar territory in terms of challenges.

You know that if you have a crossbow and someone has a tank that it's probably a bad idea to go up against them. But what if you have a phase fusion rifle and you're fighting a Sieger tentacle? These concepts have no frame of reference. How long and with how much will it take to kill it? How easily can the thing kill you?

Now if you were talking your average mission-based, scripted sequence game I'd say that it's no problem for the player to develop a feel. But if you're in an open-ended environment with a wide variety of solutions to a problem, you need some good (and quick) indicator of which one will be more likely to be better. Combat on one level is just really puzzle solving, and the numbers tell you if you have the right pieces. Without the numbers, you have trial and error.
--------------------Just waiting for the mothership...
My point was that trial-and-error is good :p A real space explorer doesn't have a frame of reference for every encounter. That's part of the fun of exploring things :)

Although I totally understand that, because it's a science fiction game, a large portion of the player base would dislike the lack of control. I'd just like you to replace the numbers with something else. Bars are just one idea, I'm sure there's more. Numbers and calculations always break the immension, and I'm sure your game is relying heavily on it :) I'd prefer to see if my "power" or whatever bar is higher than the tentacle's, than comparing numbers and doing math.
Quote:
Original post by Jotaf
I'd just like you to replace the numbers with something else. Bars are just one idea, I'm sure there's more. Numbers and calculations always break the immension, and I'm sure your game is relying heavily on it :) I'd prefer to see if my "power" or whatever bar is higher than the tentacle's, than comparing numbers and doing math.


I actually agree with you here Jotaf. What I want is the best of both worlds: Normally, you deal with just the health bars, but by either looking at your character sheet or scanning your enemy you get some of the math involved.



Quote:
Original post by Anonymous Poster
The idea of durability is all fine and dandy, but it seems that certain armors would only be durable against certain weapons. Kevlar, for example, is very effective against bullets. Against needles, however, kevlar is rather weak.

Plastic armors may be able to resist impacts more easily, but against heat-based weaponry, it's near useless.


Unfortunately, I have to balance between the fun of strategizing for different attacks and placing you in situations where there are so many attack types that you can never be prepared. FWIW, I am dealing with heat for different types of energy as well as armor that may lower attacks by a certain percentage based on the class of attack (chemical, electrical, directed energy, kenetic, etc.).
--------------------Just waiting for the mothership...

This topic is closed to new replies.

Advertisement