Friday, 8 July 2011

All fired up

A character is wielding a flaming sword (x3 fire damage), flaming gauntlets (x3 fire damage) and enchanted with an aura of fire (x3 fire damage).

Should he be doing:

1) x27 fire damage
2) x7 fire damage
3) +600% fire damage
4) x3 fire damage

This is an important decision that I have to make in the next version of Unangband, and it's vexing me, so I'd like your advice.

Option 1 is clearly overpowered, but one way of thinking about the problem. Options 2 and 3 are two different ways of explaining the same approach: x3 fire damage is short hand for 3 times damage against creatures not immune to fire, which could also be seen as +200% fire damage.

Option 2 is the less intuitive (how does x3 + x3 + x3 equal x7?) but option 3, which rewrites the original problem as "A character is wielding a flaming sword (+200% fire damage), flaming gauntlets (+200% fire damage) and enchanted with an aura of fire (+200% fire damage)." invites the player to think about weapons which might be +150% fire damage, or +87% fire damage. I'm designing Civilisation Revolution, not Civilisation with a V in it, so I like to work with nice whole numbers, not messy fractions.

Option 4 is the vanilla, balanced, safe option, so I have to ignore it.



Anon said...

Um, would it be crazy to assume the character would be doing x9 fire damage?

Andrew Doull said...

Yes, it would be crazy.

Christer Nyfält said...

I would say x6, and only have sword and aura stack. The gauntlets and sword do after all affect your melee weapon, while the aura does something different surrounding you with fire. (Or make the aura do damage when you gets hit instead.)

Andrew Doull said...

You're making the assumption that x3 damage is x3 extra damage. In Angband/Unangband, x3 includes the base damage, so it is only x2 extra damage...

Having said that, x2 x2 x2 = x8 which when added to the original, would be x9, so I can see your point.

Andrew Doull said...

Christer: You're avoiding the question. It's not important what the actual sources are, just how the damage adds up...

Copperbird said...

Maybe x3 fire damage isn't a useful stat?

Wojciech Gebczyk said...

IMO x9 would be most intiutive.

Additionally if modifiers could be of 2 kinds additive and highest.

All additive simply adds one to another (Value1) and from all highest is taken greatest one (Value2) finally max(value1, value2) is result.

It would allow to have many items with "goodies" but not overpowering equipment.

Jaco van der Westhuizen said...

You could say 'adds on double your base fire damage' (or whatever), which is equivalent to (c), and without the '200%' badness, but is less compact.

Maybe '+2xB.Fire' could be a compact way of saying it, for a total of '+6xB.Fire'

Tobias said...

You could say that 3x fire damage adds fire damage worth 3x your normal attack to your attack.
Which means a char with your setup has:
1x normal damage
3x fire damage
3x fire damage
3x fire damage
for a total of 10x damage to creatures not resistent. and 1x to resisted.

The usual angband way of describing multipliers might imply that you do NO damage to a immune enemy.

Keeping the extra damage as sepperate attacks solves a lot of problems here.

Stephen Brown said...

I like option 3 because it is obvious that the bonuses are added together.

Option a is insane...

Akhier the Dragon Hearted said...

If something doing x3 fire damage means that it is doing the damage then doing twice that in fire damage then x7 would be a good way to go(and the rest of my comment is using this as how it works). Each item is adding twice the base damage in fire damage. A better way to explain it would be like so:
Final Damage = Base Damage + (Base Damage * 2) Fire damage from sword + (Base Damage * 2) Fire damage from Gauntlets + (Base Damage * 2) Fire damage from Aura

The reason it would seem unintuitive is not because it is in fact unintuitive but because of how the ability is worded. If the sword did 1d6 damage and had the ability of x3 fire damage it sounds like you are doing 1d6 + result*3 instead of 1d6*3 of which two thirds is fire damage(1d6 + R*2[fire]).

William said...

While x7 makes sense if you know the underlying math, a player is going to be very confused by that and angry that they didn't get x9.

+600% on the other hand, will make perfect sense to them.

Nathan 'Vaevictus' Mahon said...

I vote x5:
normal x1,
sword/gauntlets +x2
aura +x2

or normal,sword,gauntlets/aura, same thing.

Another option would be some diminishing returns, so a 4x sword (+3x) and a 3x gauntlets (+2x) and a 2x aura (+1x) would give you +3x, +2x/2, +1x/3 for a nice round +4 1/3rd bonus :D

N items sorted biggest first and divided by their position.

If the division is nasty and unrounded, you could simply subtract the position (halved or otherwise adjusted perhaps).
Previous example would give +3x, (+2x -1 = ) +1x, (+1x - 2 = ) +0x (best not go negative); total +4x.
Position halved would be +3x, +2.5x, +0x; total +5.5x. Looks like that 3rd item gets diminished away pretty quickly.

With the original 3x3 items we get +3x, with +4.5x for the halved adjustment.

Kinda need to know where this should balance.

Jaco van der Westhuizen said...

I'm pretty sure the question is not about balancing the items, but rather about how to make the stacking intuitive.

kikito said...

Make gauntlets, globes, rings, etc. not count on attacks unless they are directly used - for example while fighting unarmed. It makes no sense that gauntlets can be used with words in the first place.

Make auras stack, but more difficult to use: limit their duration to 3 turns, for example. So they have to be "re-casted"often, consuming 1 turn.

Unknown said...

In my mind, gauntlets should only apply the effect because of unarmed combat. Aura should do its own damage and not be a multiplier.


Four Hands said...

As a player I would generally assume 3 items with 3x fire damage to give me 9x total damage. Additive is the most natural assumption I can see.

Four Hands said...

I should clarify, I assume that each 3x item is a _seperate_ source of damage, so it makes sense they're additive.

Isaac said...

The issue is really one of symbols rather than math. Part of the issue here is that choosing to have the bonus damage as a multiplier and restrict it to whole numbers severely limits the solutions that are both intuitive and balanced. Multiplying with "x3" has a meaning that is slightly different from what you actually intend it to mean, which is the root of the whole problem.

As I understand it, your flaming sword is doing
1 base damage
+2 fire damage.
Expressing it as a multiplier just confuses this issue even before stacking is brought in.

The intuitive reading of x3 implies
(1x3)+(1x3)+(1x3)=9 rather than 1+2+2+2=7.

Calling it "triple fire damage" or "plus double fire damage" might actually be more intuitive than using the symbols, at the cost of using more space. Something like "Fire 2" or "Fire *2" might be a compromise.

Unknown said...

I think it would be more intuitive if you just change "x3" for "+x2".
So, (+x2)+(+x2)+(+x2) = +x6 = x7

I think it is easier to read it that way.

Akhier the Dragon Hearted said...

Something else about the x7 method. It has the benefit of being easy to mix with other damage types. If say the gauntlets added x3 acid damage instead of fire option one no longer works and option four will be a problem once again but 2 and 3 are just fine. Option 3 would come out to +400% fire and +200% acid while option 2 would be x1 base + x4 fire + x2 acid. The detractor for option 3 has been said already leaving option 2 as the overall best.

kaypy said...

All of these options are far too likely to produce a logical and easily understood result. You need to add a logarithmic diminishing returns function. Then your players will *never* figure out how much damage they are supposed to be doing.

EpicMan said...

I vote for x7, or rather +(6xFire). It works well with different damage types ( +4xFire, +2xAcid ), the player gets a visual confirmation of the change in damage.

Although if resists don't stack in UnAngband (don't remember if they do or not), maybe brands shouldn't either, or maybe just permanent brand + temp brand = +4xFire.

As for gauntlets stacking, why couldn't you have magical gauntlets that make your melee weapon burn with fire, etc?

jdunson said...

First impression is 3), +600%; it provides a substantial benefit reflecting the (presumed) rarity and opportunity costs of having the gear in question, without cascading completely out of control.

Looking at it in more detail, I think that very few things should actually multiply. The default behavior for element brands should be to provide additional (additive) damage of the elemental type; the weapon should still provide the base type. In many cases this might be fixed (such as a minor flame enchantment that adds +1d4 fire damage to any weapon, or gauntlets that do +1d6 fire damage for punching or when wielding Short weapons), some cases might be +weapon damage or +some multiple of weapon damage.

Something like an "Aura of Flame" might well be a multiplier; "Increases all flame damage by +200%". Some cases might provide base damage as well, some not.

Another thing to consider is lesser enchantments (etc.) that provide non-cumulative bonus elemental damage. "+1d4 Flame damage if not already flaming" would give lower-level characters an interesting elemental option without accumulating to dangerous levels. (Effectively a x2 weapon in Vanilla).

I strongly feel that the weapon's base damage should remain its base type; if you have a sword that does 1d6 Cutting and 2d6 Fire, you should be able to use it for 3d6 against most monsters, 2d6 against cut-immune monsters, 1d6 against fire-immune monsters. If you then were granted a rare "doubles fire damage" effect, it should be 1d6 Cutting and 4d6 Fire at that point.

Worthstream said...

I'll throw another coin in the "*9" hat.

It's the most intuitive way of doing it, and the way most commercial AAA games do it (you know, the ones with paid game designers behind this kind of choices)

If you want to keep the Unangband way of expressing damage, simply restate the *3 including base damage to "physical damage +(*2 fire damage)"

Paul said...

I don't see that the multiplier even makes sense. If I drop the dagger in my hands and pull out a trident, the fiery aura around me is suddenly 3 times hotter? Even for the weapon, why does an electric flail produce a larger wattage than an electric mace? Suspension of disbelief is fine, but if stacking is a point of confusion, why not just break the damage out?

Then I can do 1d8 dmg + 2d8 fire + 1d8 ice + 3d8 poison, instead of 1d8 x3 fire x2 ice x4 poison. And the stacking is logical, because it's all addition. It's clear how to resolve damage to enemies with various immunities and susceptibilities.

The downside is you'd pretty much have to standardize all the non-weapon damage dice. 1d12+2d8+3d4+5 is a bit much. Still, I don't know that every unit of elemental damage being a d8 or whatever is such a bad thing. You could abstract it into generic "power" if you want to attract those from a less table-toppy background. And you can still have tradeoffs between consistent damage and high ranges by balancing dice and +n bonuses.

Andrew Doull said...

kaypy: Completely agree. What would a geometric progression look like? (I currently do this for resists). I'm guessing reverse triangle numbers (3+2+1) but even then that's a bit logical. Howabout treating damage as log^10(n/10) when adding it?

Paul: Having separate sources of damage makes it much harder to balance. If you have a weapon which does 1d8+2d8fire+3d8 acid vs. a weapon which does 1d8+4d8 fire, the weapon with lots of individually small elemental abilities is actually more powerful; not only are monsters less likely to have the whole range of resists, but the sum of damage against monsters which don't resist anything is higher. I much prefer Angband's use the highest multiplier approach, but I want to allow multiplier stacking from different sources of damage boost.

everyone else: I suspect that I'm going to be using the 'extra damage' approach that several people have suggested. I'm not sure of the most straightforward notation:

something else

It also raises the question of whether a sword which is (+x1) looks powerful enough (It actually does double the damage of the equivalent non-elemental sword, but that '1' doesn't suggest it).

Nathan 'Vaevictus' Mahon said...

Of course, you could fix the intuitiveness problem with a different method of displaying.

a Sword with +7 Fire and +12 Unlight could be a Sword (FFFFFFFUUUUUUUUUUUU).

all kidding aside, I don't see that would be so horrible. a Sword (1d8) (FFIII) for +2 Fire, +3 Ice

Akhier the Dragon Hearted said...

If you use some mark like an "R" in the equation to mean the result of the roll it would be a farely simple 1d6 + R[fire] or 1d6 + R*2[fire]

Sid Menon said...

It should just crash the game and produce an error message telling the player they did too much damage.