Hello everyone, Nemekh here writing about a recurring topic that comes up where people ask:
What % value does a given status carry?
The Context For The Question
Often in a raiding scenario players will come across statuses where the description hints at a change in damage dealt or damage received, however, what is written is vague and does not detail the true properties of the status in question in terms of the numbers.
This can often lead to confusion and uncertainties as to what’s actually the case, as we had seen a while back with Grace of Light in E8s, where players assumed it was one of multiple possible values with varying reasons why.
Learning the genuine values can be significant for raid progression and speed running when it comes to learning how much a given Damage Down in an encounter, or a Damage Up on a boss amounts to.
The truth to the data is not present in client-side information as it comes from server-side tables specific to a given encounter.
So how can we find out how significant the unknown % of a status really is?
Method #1: Comparing Direct Damage
This is the method used by players in general, whether it is by eyeballing differences in damage numbers dealt or received, or by comparing the direct damage events as recorded in FFLogs reports.
Sometimes it may seem very obvious where an action that normally deals 2000+ would start to deal 200 damage with a Damage Down implying that it is -90%. Recent raids have been known to use a -50% Damage Down as punishment for failing to execute mechanics correctly.
While it is possible narrow down the range and claim a plausible value, without observing the full range of values for an action’s direct damage with vs without the status in question, there risks the possibility of assuming a value incorrectly due to lack of accuracy from the observed information. As such, this method requires a much larger volume of samples which takes time.
With an incomplete picture it is difficult to get exact results, particularly when dealing with smaller status numbers, such as Grace of Light’s 2%.
The alternative of this method is trying to ascertain if statuses with known % values, such as Addle’s -10% to outgoing Magic Damage actions, are affecting actions from a given enemy actor. With enough samples with and without various statuses, it can be proven if a given action is being affected by certain mitigation tools. This is at the heart of our Caster Mitigation Guidelines page.
Method #2: Comparing DoT Medians
A more exact variation of Method #1 but one that also carries its own flaws and difficulties.
DoTs are sent to the client from the server with the exact median in an incomplete form. If a DoT I cast was to resolve for a median of 1000, the data I would receive from the server would be 1000 Mod 256, or 232, which in hexadecimal would be 0xE8.
While I know that 1000 is 3 * 256 + 232, what happens for an unknown DoT median?
Let’s say instead I know that the median is somewhere close to 2300 from looking at flying text ticks (the observed range for normal damage ticks being between 2180 and 2350), however, the server sends 0xE8, or 232 again. I can then work out that the exact median is 8 * 256 + 232, or 2280.
How is this important for figuring out the unknown % value of statuses?
When you multiply a DoT’s median by a buff, the calculation is done as follows (for a spreadsheet):
=int(DoT_Median * (1 + buff%))
Let’s use the 2280 median case. This is a DoT snapshot before Lost Dervish’s 7% damage multiplier.
DoT with Lost Dervish:
=int(2280 * 1.07) = 2439
The server, however, would again only send 2439 Mod 256, 135, or 0x87.
What about when a buff’s % is not known? This case came up recently with AoE Lost Bravery from Lost Cure IV.
Firstly, we had to ascertain the true DoT median by comparing with a 5% damage buff and 15% damage buff.
While the 31 row could have also satisfied the hexadecimal data, the median far exceeds the damage range in question ruling it out entirely.
Then we had to test various buff %ages and see which one would satisfy the observed data.
Only one value within the range applied. AoE Lost Bravery was confirmed to be 10%.
This is the same method that proved that Grace of Light is 2%.
Method #3: Action Network Data
Over the years we have used the recorded network log data from ACT and XIV Plugin to great effect in better understanding the game’s numbers.
In particular, the numbers for Crit and DoT damage being very significant to our studies. These come from the Effect message that ACT XIV Plugin uses to interpret how much damage we are doing.
What if there was more that could be gleaned right under our noses?
One of our members, Fürst, observed that in the Effects message for actions that applied statuses that in the section where the Crit and DoT median data would be instead contained a different number than usual and began to compare the figures. In sharing his findings with us, we began to look at more statuses that further confirmed his observations.
Here is a list of some of what has been observed:
- Addle: 246
- Rampart: 236
- Sentinel: 226
- Tank LB 1: 236
- Tank LB 2: 216
- Tank LB 3: 176
- E9s Damage Down: 217
- E10s Damage Down: 212
- E11s Damage Down: 210
- E12s Damage Down: 206
- Trick Attack’s Vuln Up: 5
- Devotion: 5
- AoE Lost Bravery: 10
- E9s Cloud of Darkness Damage Up: 20 for the 1st stack
- Lost Focus: +15 for each stack, up to 240 at 16 stacks
The first obvious thing to note is that the Damage Buffs are listing their intended % value as expected, and Lost Focus, as an action that increases per stack, is in fact adding +15% per stack up to 240% at 16 stacks.
However, the curious thing is why are the Damage Downs and Mitigation statuses all so high? At first, this may not seem to make sense, unless you consider that these are negative numbers.
Let’s take Addle. We know it’s -10% Magic Damage. When we do -10 mod 256 we will end up with 246.
Tank LBs are -20%, -40% and -80% damage taken respectively. -20 mod 256 = 236, -40 mod 256 = 216, -80 mod 256 = 176.
The same also applies for haste buffs in game, where +15% haste is -15 to the SpeedMod variable and would show up as 241.
Another way to consider it for these in particular server_sent_value - 256 = % value.
One important thing to note is that a given status ID can have different properties in different instances. All of the Damage Down statuses from Eden’s Promise Savage share the same ID but they most definitely do not share the same % value. This is set in the server-side tables.
The applied status must have a source action that is observed.
There are numerous status applications that may not show values clearly. At the present it is not yet known how to infer the correct values from several cases using the net data method.
- ground AoE status applications (UCoB Neurolinks, Livewire)
- encounter Timeline status applications that are not associated with a particular action snapshot or actor (soft enrage Damage Ups, Grace of Light)
Obtaining & Reading The Values
The preferred general method for obtaining these values will be with XIV Plugin network logs.
In the net logs there is a line type which in ACT Encounter View is 0x15 and can be searched with
] 15:, but when opening up the net log in a text editor like notepad++ it will be in decimal as
21|. This is the Effects message that will contain the information for applied status properties from a given action event.
When reading the values from a XIV Plugin network log, it is important to remember that while the data being read is in hexadecimal, they remain numbers all the same.
Damage Buff Example
Let’s take an example Effects line for Lady of Crowns:
[03:06:26.587] 15:1072C783:Furst Blumier:1D15:Lady Of Crowns:1072C783:Furst Blumier:80E:7550000:
We can actually ignore the majority of the data here and instead focus on this specific part:
0x0E is 14, which is the message type for a status being applied. This is what you want to look out for.
0x8 is 8, which is the +8% damage of the Lady of Crowns buff.
Damage Buff With Stacks Example
[02:38:33.486] 15:40017A15:Hypercharged Cloud:560B:Hypercharged Dispersal:40017659:Cloud Of Darkness:100140E:1BB0000:
Once more we can focus on the part with
0E at the end.
The first 1 represents the current stack count at the time of the status being applied.
The 0x14, or 20, represents the % increase, for +20% damage.
Damage Down Example
[03:34:42.953] 16:40016AEA:Fatebreaker:569E:Shining Blade:1041C2ED:Meru Lucis:750003:94BA4001:D20E:
Once more, trimming the unnecessary parts.
0xD2, or 210, is the associated value for the Damage Down. 256-210 = 46%. So the status is -46% damage.
[03:01:19.176] 15:1072C783:Furst Blumier:11:Sentinel:1072C783:Furst Blumier:E20E:4A0000:
Trimming the unnecessary parts.
0xE2, or 226, is the associated value for Sentinel. 256 - 226 = 30. Sentinel is -30% incoming damage.
Multiple Variable Status Example
Some statuses will affect multiple variables, such as the Pure Essences in Delubrum Reginae.
21|2021-02-08T19:38:46.7430000+00:00|10736D75|Velox Vulpes|574B|Pure Essence Of The Elder|10736D75|Velox Vulpes|6432190E|
Trimming the unnecessary parts.
- 0x64 = 100
- 0x32 = 50
- 0x19 = 25
Pure Essence of the Elder increases Max HP by +100%, Damage by +50% and Defense by +25%.
Stormblood era logs will want to look for the segment ending in
TP being removed shifted things down by 1, so 0F became 0E.
Knowing that this is possible, we opted to look at the Damage Down, Damage Up and various other statuses in encounters.
Here are some of our findings:
- E9s: -39% Damage Down
- E10s: -44% Damage Down
- E11s: -46% Damage Down
- E12s (Eden’s Promise): -50% Damage Down
- E12s (Oracle of Darkness): -50% Damage Down
- E5s: -20% Damage Down
- E5s: +20% Damage Taken per stack
- E6s: +20% Damage Taken per stack
- E7s: +20% Damage Taken per stack
- E8s: -50% Damage Down
- E2s: -25% Damage Down
- E2s (Infirmity): -15% Less Healing Received per stack
- E2s (Diabolic Curse): +5% Damage Taken per stack
- UCoB Oviform (Hatch) Explosions: -50% Damage Down
- UCoB Megaflare Tower Explosions: -50% Damage Down
- UCoB Nael Paralysis (Chain Lightning): 75% proc chance per tick
- UCoB Earthshaker Earth Resistance Down II: -100% Earth Resistance
- UCoB Twintania Slashing Resistance Down II: -100% Slashing Resistance
- UCoB Nael Piercing Resistance Down II: -100% Piercing Resistance
- Thrice-come Ruin (Earlier Savage Encounters Only): -3% Damage Down per stack, up to -6% for 2 stacks. 3 stacks = Doom
- Twice-come Ruin (Savage Trinity Avowed, Stygimoloch Lord & The Queen): -3% Damage Down for the first stack. 2 stacks = Doom
- Fiendhunter Cure II Slow = ? (Need to find log lines)
Alliance Raids (24 Mans)
- Copied Factory: +20% Damage Taken per stack
- Copied Factory (Hobbes): +20% Magical Damage Taken
- Copied Factory (Hobbes): +20% Physical Damage Taken
- E9s Cloud of Darkness: +20% Damage Up per stack for Cloud of Darkness, up to 4 for +80% total
- E8s (Grace of Light): +2% Damage Up on the party
- UCoB Nael Bahamut’s Favor: +5% Damage Up on Nael Deus Darnus
- Dynamis Dice (Haste+): 5% haste
- Dynamis Dice (High Wire): +30% Damage Up, -30% (unknown, Mitigation?)
- AoE Lost Bravery: +10% Damage Up on the party
- Pride Of The Lioness (Savage Duel Buff): ? (May require Method #2)
- The Heroes’ Gauntlet Spectral WHM Absolute Protect: 20% Mitigation. Interruptable
- Bloodbath: 25% Life Drain (decays at higher levels, cause unknown, confirmed bug)
- Six-sided Star: +20% Movement Speed
- Peloton: +20% Movement Speed
- Sprint: +30% Movement Speed
- Lost Swift: +100% Movement Speed
Some numbers are prominent in content all over the game. Others, like in Savage, are more fine tuned.
As we find out more they will be added onto the end of this post as a record of numerous values. Some statuses are difficult to verify due to not being as apparent in the net data if at all. There may be some incorrect interpretation of the numbers, however, for the most part they should hold.
We hope this is useful information for those of you curious about the numbers happening in encounters, be it for progression or optimising.