Weapon Skill – STR vs Attack

Weapon Skill Damage Formula:

 

Damage = [( D + fSTR + WSC) * fTP] * PDIF

D = Weapon Damage
fSTR = number the represents our STR vs target VIT difference (note: there is lower and upper cap; see more info on fSTR here).
WSC = Secondary Attribute (see more info on WSC here)
fTP = multiplier for weapon skill (usually dependent on TP, see more info on fTP here)
pDIF = uses your attack and enemy defense to determine your damage lower and upper range. (see more info on pDIF here)

The weapon skill we will look at is Yukikaze, Gekko, Kasha which have the same fTP and WSC.

Values:
fSTR = (STR – enemy VIT +4)/4

α = variable to scale down your WSC when you level up (α = 0.83 for lvl 75)
WSC = floor( floor((STR * 75%)) * α )

fTP = 1.5, 2.0, 2.5 for 100%TP, 200%TP, 300%TP respectively.

Ratio = Attack /Defense
dlvl = Enemy level – your level (if you are higher level dlvl = 0)
cRatio = Ratio – 0.050 x dlvl

pDIF max:

Ratio Range Function Value
0 < cRatio < 0.5 fMax(cRatio) = 0.4 + 1.2 x cRatio
0.5 < cRatio < 0.83 fMax(cRatio) = 1
0.83 < cRatio < 2 fMax(cRatio) = 1.2 x cRatio

pDIF min:

Ratio Range Function Value
0 < cRatio < 1.25 fMin(cRatio) = -0.5 + 1.2 x cRatio
if fMin < 0 < fMin = 0
1.25 < cRatio < 1.5 fMin(cRatio) = 1
1.5 < cRatio < 2 fMin(cRatio) = -0.8 + 1.2 x cRatio

We compare weapon skill at 100% TP with Hagun, fTP = 2.0.

Effect of Attack on Damage

if we derive the damage w.r.t. attack we can see the effect of attack on damage,

for simplicity,

let B = [D + fSTR +WSC] * fTP and C = 0.050 x dlvl

Ratio Range Function Value – MaxD
0 < cRatio < 0.5 B * [ 0.4 + 1.2 * [(Att /Def)- C] ]
0.5 < cRatio < 0.83 B * [1]
0.83 < cRatio < 2 B * [ 1.2 * [(Att /Def)- C] ]

now lets find d(MaxD)/d(Att)

Ratio Range Function Value – d(MaxD)/d(Att)
0 < cRatio < 0.5 B * 1.2 * (1/Def)
0.5 < cRatio < 0.83 0
0.83 < cRatio < 2 B * 1.2 * (1/Def)

for MinD

Ratio Range Function Value – MinD
0 < cRatio < 1.25 B * [ -0.5 + 1.2 * [(Att /Def)- C] ]
1.25 < cRatio < 1.5 B * [1]
1.5 < cRatio < 2 B * [ -0.8 + 1.2 * [(Att /Def)- C] ]

457

find d(MinD)/d(Att)

Ratio Range Function Value – d(MinD)/d(Att)
0 < cRatio < 1.25 B * 1.2 * (1/Def)
1.25 < cRatio < 1.5 0
1.5 < cRatio < 2 B * 1.2 * (1/Def)

We are usually most concerned with EXP monsters and high level monsters.

Merit Monster

Greater Colibri Level 82 Def 327 VIT 67 AGI 67 Evasion 341

For Hagun, Tarutaru, SAM/THF on lvl 82 Greater Colibri (WS w/o SA gear shown here)
STR = 65 Base + 47 Gear +5 meat mithkabob + 10 Hasso = 127
fSTR
= (127 – 67 +4) / 4 = 16
WSC = floor( floor((127 * 75%)) * 0.83 ) = 78
fTP (100) =
with Hagun and weapon skill gorget 2.1
B = [D + fSTR +WSC] * fTP = (75 + 16 + 78) * 2.0 = 354.9

Therefore,
B * 1.2 * (1/Def) = 354 *1.2 * (1/327) = 1.30..

I weapon skill in 390 Attack, with meat mithkabob (+ 22% caps at 60, +5STR) with Hasso, which gives me 457 Attack with out Bard. My cRatio = 457 / 327 – 0.05 * 7 = 1.048..

cRatio = 1.048.. which is 0 < cRatio < 1.25 and 0.83 < cRatio ≤ 2 will give me,

d(MaxD)/d(Att) = B * 1.2 * (1/Def) = 1.30..
d(MinD)/d(Att) = B * 1.2 * (1/Def) = 1.30..

In my worst situation without a BRD and Dia 2, I will be gaining 1.30 points of damage of max and min damage for every attack increase. That’s 1 more weapon skill damage every attack I add into my setup.

High Level Monster with High Defense

Since we do not know the Higher level monster’s VIT and their defense. We will just have to make assumptions and guess to generalize things.

Assumptions: Our attack < their defense (Att / Def < 1) and their level is 85. cRatio = Att /Def -0.05 * dlvl = Att /Def -0.05 * 10 = Att /Def -0.5 , then cRatio < 0.5 so we know our,

d(MaxD)/d(Att) = B * 1.2 * (1/Def)
d(MinD)/d(Att) = B * 1.2 * (1/Def)

Since they are the same we know it takes the same amount of attack to raise the min and max damage.

Hagun’s weapon rank = floor (75 / 9 ) = 8
which means the fSTR range is -8 to 16. (see more weapon rank info here)
since B = [75 + fSTR + WSC] * fTP
B [fSTR= -8] = [75 + -8 + 78] * 2.1 = 304
B [fSTR= 16] = [75 + 16 + 78] * 2.1 = 354
therefore B has the range of 304 to 354.

Monster Defense High VIT
B * 1.2 * (1/Def)
Low VIT
B * 1.2 * (1/Def)
Attack needed to increase 1 Damage
500 304 *1.2 *(1/500) = 0.730 354 *1.2 *(1/500) = 0.850 1.1 to 1.3
600 304 *1.2 *(1/600) = 0.608 354 *1.2 *(1/600) = 0.708 1.4 to 1.6
700 304 *1.2 *(1/700) = 0.521 354 *1.2 *(1/700) = 0.607 1.6 to 1.9
800 304 *1.2 *(1/800) = 0.456 354 *1.2 *(1/800) = 0.531 1.8 to 2.1

Effect of STR on Damage

Now we need to look at STR’s effect on Damage by deriving it w.r.t. STR. Since Attack is also a function of STR we will keep things simple here and keep Attack constant.

Damage = ( D + fSTR[STR] + WSC[STR]) * fTP * PDIF

let E = fTP * PDIF
Damage = (D + floor((STR -VIT +4)/4) + floor(floor(STR * 75%)*0.83)) *E
d(Damage)/d(STR) = E*floor'(STR/4) + E*floor'(floor'(3/4STR) *0.83)

Merit Monsters

Using the same example,

Greater Colibri Level 82 Def 327 VIT 67 AGI 67 Evasion 341

fTP = 2.1
cRatio = 1.048..
PDIF min = -0.5 + 1.2 * 1.048.. = 0.758..
PDIF max =
1.2 * 1.048.. = 1.258..

E min = 0.758.. * 2.1 = 1.592..
E max =
1.258.. * 2.1 = 2.642..

Weapon Rank = floor ( D /9 ) = 8
fSTR max = 2 * Weapon Rank = 16
fSTR min = -1 * Weapon Rank = -8

fSTR = (127 – 67 +4) / 4 = 16
therefore increasing anymore STR in this case will not increase fSTR

d(maxD)/d(STR) = 1.592.. *floor'(floor'(3/4STR) *0.83)
d(minD)/d(STR) = 2.642.. *floor'(floor'(3/4STR) *0.83)

Since we cannot derive the floor function I will list the effect per STR increase.

STR
increase
(total STR)
min
increase
max
increase
min
increase
per STR
max
increase
per STR
1 (128) 3 4 3 4
2 (129) 3 4 1.5 2
3 (130) 5 6 1.66 2
4 (131) 6 9 1.5
2.25
5 (132) 9
13 1.8
2.6
6 (133) 9 13
1.5 2.16
7 (134) 11 15
1.57 2.14
8 (135) 13
18 1.62 2.25
9 (136) 16 22 1.77 2.44
10 (137) 16
22 1.6 2.2
11(138) 19 26 1.72 2.36
12 (139) 20 27 1.66 2.25
Average : 1.62 2.24

The average min damage increase per STR in these 12 STR increase is 1.62 damage and max damage increase per STR in these 12 STR increase is 2.24.
High Level Monster with High Defense

Since we do not know the Higher level monster’s VIT and their defense. We will just have to make assumptions and guess to generalize things.

Assumptions: Our attack < their defense (Att / Def < 1) and their level is 85. cRatio = Att /Def -0.05 * dlvl = Att /Def -0.05 * 10 = Att /Def -0.5 , then cRatio < 0.5 Defense: 500

STR
increase
(total STR)
max
increase
max
increase
min
increase
per STR
max
increase
per STR
1 (128) 0 4 0 4
2 (129) 0 4 0 2
3 (130) 0 7 0 2.33
4 (131) 0 9 0 2.25
5 (132) 1 13 0.2 2.6
6 (133) 1 13 0.16 2.16
7 (134) 2 15 0.28 2.14
8 (135) 2 17 0.25 2.12
9 (136) 3 21 0.33 2.33
10 (137) 3 21 0.3 2.1
11(138) 4 24 0.36 2.18
12 (139) 4 25 0.3 2.08
Average : 0.19 2.2

which is 0.45 STR per 1 MAX damage increase.

Defense: 600

STR
increase
(total STR)
max
increase
max
increase
min
increase
per STR
max
increase
per STR
1 (128) 0 4 0 4
2 (129) 0 4 0 2
3 (130) 0 6 0 2
4 (131) 0 7 0 1.75
5 (132) 0 11 0 2.2
6 (133) 0 11 0 1.83
7 (134) 0 12 0 1.71
8 (135) 0 14 0 1.75
9 (136) 0 17 0 1.88
10 (137) 0 17 0 1.7
11(138) 0 20 0 1.81
12 (139) 0 20 0 1.66
Average : 0 1.84

which is 0.54 STR per 1 MAX damage increase.

Defense: 700

STR
increase
(total STR)
max
increase
max
increase
min
increase
per STR
max
increase
per STR
1 (128) 0 3 0 3
2 (129) 0 3 0 1.5
3 (130) 0 5 0 1.66
4 (131) 0 6 0 1.5
5 (132) 0 9 0 1.8
6 (133) 0 9 0 1.5
7 (134) 0 10 0 1.42
8 (135) 0 11 0 1.37
9 (136) 0 14 0 1.55
10 (137) 0 14 0 1.4
11(138) 0 16 0 1.45
12 (139) 0 17 0 1.41
Average : 0 1.5

which is 0.66 STR per 1 MAX damage increase.

Defense: 800

STR
increase
(total STR)
max
increase
max
increase
min
increase
per STR
max
increase
per STR
1 (128) 0 2 0 2
2 (129) 0 2 0 1
3 (130) 0 4 0 1.33
4 (131) 0 5 0 1.25
5 (132) 0 7 0 1.4
6 (133) 0 7 0 1.16
7 (134) 0 8 0 1.14
8 (135) 0 9 0 1.12
9 (136) 0 12 0 1.33
10 (137) 0 12 0 1.2
11(138) 0 13 0 1.18
12 (139) 0 14 0 1.16
Average : 0 1.2

which is 0.83 STR per 1 MAX damage increase.

ConclusionMerit Monster-

Each STR will an average of 1.01 point of min damage and 1.67 max damage increase while every point of attack will give you 1.048 point of min and max damage increase therefore STR is better than attack for this situation.

High level Monster-

Amount of STR needed vs Attack needed to increase max damage by 1 point of damage is as follows:

Defense STR Attack
500 0.45 1.1-1.3
600 0.54 1.4-1.6
700 0.66 1.6-1.9
800 0.83 1.8-2.1

Again STR will not increase the minimal damage (only the attack from 2 STR can).

As you can see STR increases slightly more damage than attack but does not bring up the minimal damage. It cost about double the amount of attack to increase than STR which makes STR and attack very close in the amount needed to change the median in damage by 1 point of damage.

High defense monsters you will need high amounts of attack to increase minimal damage, so increasing minimal is not always the case with attack.  But when you are in range to increase minimal damage attack is better than STR.

There is no strict rule for which one is better, but choose what gives you the most points of STR and attack for high level monsters. But keep in mind that adding large amount of STR will also increase a good amount of attack as well as 2 STR also gives 1 attack. So in most cases STR will out weigh attack.

Note: This does not take into the case of Sneak Attack + Weapon Skill damage, as a Critical WS will get a minimal damage increase for high defense monsters.

STR is always better than attack for WS on merit monster. STR is better than attack on high defense monsters when minimal damage is 0 and STR is slightly better than attack when minmal damage is higher than 0.

Leave a Reply