request: damage formula

General game help topics.
Post Reply
Tolveor
Posts: 7
Joined: Fri Mar 17, 2017 9:02 am

request: damage formula

Post by Tolveor »

Hey,
could one of you write an easy to understand damage formula that can be used at anydice?
With the base numbers from hress raw data it should be doable i think?
Please add things for str/ward/riding/master etc

Thank you. And just for the record, the studies you guys do is pure awesomeness
Russ3Z
Site Admin
Posts: 19
Joined: Mon May 07, 2012 8:55 pm

Re: request: damage formula

Post by Russ3Z »

I'll try to summarize, though much more of this is Hress's work than mine so he may have some corrections or a better way to show this (very likely).

xdy - base damage of a weapon rolls x number of dice, each die has y number of sides, so 3d4 rolls 3 4-sided dice.
Hands - 1.5-handed weapons add 1 die roll if wielded 2-handed, so a 1.5-hand weapon with 3d4 dmg becomes 4d4 wielded 2-handed.
Ride - Spears and lance weapons add 1 die roll if mounted, same as above. Does not stack with 2-hand bonus above.
Class - Hunters gain a 50% dmg bonus vs Tree-type mobs, so dmg output (subject to any bonus above) is multiplied by 1.5 rounded down.
Hone - Honed weapons add 2d4 to dmg output
Master - Masters add 2d5 dmg to output
Str - Chars with 15 Str or above add a bonus equal to 2dx-8, where x = Str-10. Only resultant values >0 are added to dmg.

Str bonus addition formula (enter below on first line of anydice)

function: above NUMBER:n{
if NUMBER < 0 { result: 0 }
result: NUMBER
}

Examples

Code: Select all

Normal:

output xdy

Code: Select all

Mounted w/ Spear/lance:

output (x+1)dy

Code: Select all

1.5-h weapon wielded 2-handed:

output (x+1)dy

Code: Select all

Hunter vs Tree:

output 3*(xdy)/2

Code: Select all

Honed:

output xdy + 2d4

Code: Select all

Master:

output xdy + 2d5

Code: Select all

Str > 14:

function: above NUMBER:n{
if NUMBER < 0 { result: 0 }
result: NUMBER
}

output xdy + [above xd(Str-10) -8]

Code: Select all

19-Str Master Hunter vs Tree, 4d7 honed spear, mounted:

function: above NUMBER:n{
if NUMBER < 0 { result: 0 }
result: NUMBER
}

output 3*(5d7)/2 + 2d4 + 2d5 + [above 2d9-8]
I suppose my next job is to add this to the EQ Trainer...
Tolveor
Posts: 7
Joined: Fri Mar 17, 2017 9:02 am

Re: request: damage formula

Post by Tolveor »

adding to eq trainer would be great, but seems like helluva job

Can you paste in the function etc, or just the output things?
Tolveor
Posts: 7
Joined: Fri Mar 17, 2017 9:02 am

Re: request: damage formula

Post by Tolveor »

nvm, i figured out you could. Hmm, i just struggle to understand the function bit and why you put above in front of some of the calculations
Tolveor
Posts: 7
Joined: Fri Mar 17, 2017 9:02 am

Re: request: damage formula

Post by Tolveor »

so:

function: above NUMBER:n{
if NUMBER < 0 { result: 0 }
result: NUMBER
}

output 6d6 + 2d4 + [above 2d9-8]

is what i get for a 19 str warrior with a wickedly. I think i got it, and its pretty fun :)
Tolveor
Posts: 7
Joined: Fri Mar 17, 2017 9:02 am

Re: request: damage formula

Post by Tolveor »

assuming thats the correct way to do it, how do bodyparts and % hits figure into the calculation, as well as abs mitigation
Russ3Z
Site Admin
Posts: 19
Joined: Mon May 07, 2012 8:55 pm

Re: request: damage formula

Post by Russ3Z »

Sorry if I did not explain it so well. Technically, you can keep that "above" function in every time, since the "above" function basically means it will only return some output if it is above a number, 0 in this case.

So a 13-Str char will have some xdy + [above 2d3-8]

2d3-8 always evaluates as negative, so the "above" function just returns 0 every time. a 15-Str char, however, has 2d5-8, which has a 2/25 chance of ouputting 1 and a 1/25 chance of outputting 2.

The example you gave should actually be for a 19-Str warrior with a honed wickedly, btw.
Russ3Z
Site Admin
Posts: 19
Joined: Mon May 07, 2012 8:55 pm

Re: request: damage formula

Post by Russ3Z »

Body parts are simple enough. Assuming the melee comparison between OB and Def succeeds for the attacker, a body part is selected from a distribution based on the hit%. So the body will have a 50% chance of taking the hit, and so on for each part.

Abs then comes in. Your total abs% shown on screen is a rounded number corresponding to the sum of each part's hit% multiplied by its absorption%. As an example, if you're wearing just a breastplate that displays "25%", the piece itself absorbs 50% of dmg taken.

Example Steps:
1. Attack succeeds
2. Attacker rolls whatever modified xdy + z from rules previously laid out...let's say he rolls a 9 in this case
3. Body part chosen...chest takes hit, wearing a shining steel breastplate
4. The shiner needs mending, its new abs% of 87% is down to 79%
5. DMG = (1-0.79) * 9 = 1.89
6. At this point, testing hasn't been conducted to see just what sort of rounding occurs, but dmg taken is going to be 1 or 2 (barely tickle)

Warding vs Damage does something similar, though whether it adds to or multiplies the abs% is as yet unknown. Various other forms of attacks ignore abs.
Post Reply