1. 4 Weeks Ago  

    Question about warrior rage reconstruction from raw combat logs

    Hi everyone,

    I am working on a small tool to reconstruct warrior rage from raw WoW 3.3.5a combat logs, and I have reached a point where I am not sure whether I am seeing a mistake in my logic, a missing mechanic, or a limitation of the raw combat log itself.

    I am not claiming this is a server bug. I am mainly looking for feedback from people who have worked with raw combat logs, rage formulas, UnitPower readings, or similar post-fight analysis tools.



    What I am doing

    I have two sources of information:

    • A simulator that replays the raw combat log in textual order.
    • An addon that tracks the warrior's rage progression from the client side, using what the player actually sees on the rage bar.


    The idea is to compare both timelines and see whether the simulator can reproduce the rage shown to the player.

    In some places, they match well. But in other places, I see this pattern:


    SPELL_CAST_SUCCESS happens for a warrior ability,
    but when I replay the raw combat log in textual order,
    there is not enough rage before that line to pay the ability cost.

    The ability was accepted by the server, so I assume the warrior really did have enough rage at that moment. The problem is that the raw log, when read strictly in textual order, does not always seem to expose that rage before the accepted spend.


    Example of the suspected issue

    In one case, the addon/player-side rage progression looked like this:

    Bloodrage +20
    Bloodrage +1
    white hit +11
    = 32 rage

    However, around the same moment, the raw combat log order can make the rage-related events appear in a slightly different order.

    That means later abilities may look impossible if I only trust the textual order of the raw log.

    To be clear: I am not saying the player used an ability without rage. I am saying the raw log order and the client-observed rage order may not be perfectly synchronized at this micro-timing level.



    Rage formula being used

    For outgoing main-hand white damage, I am using the standard 3.3.5a warrior rage formula.

    First, the rage conversion value:


    c = 0.0091107836 * level^2
    + 3.225598133 * level
    + 4.2652911

    if level > 70:
    c += 13.27 * (level - 70)

    For a level 80 warrior:

    c = 453.32215678

    For a main-hand white hit:

    weapon_hit_factor = weapon_speed_seconds * 3.5

    rage = (damage / c * 7.5 + weapon_hit_factor) / 2

    Example:

    damage = 876
    weapon speed = 2.6

    weapon_hit_factor = 2.6 * 3.5
    weapon_hit_factor = 9.1

    rage = (876 / 453.32215678 * 7.5 + 9.1) / 2
    rage ~= 11.7

    The simulator stores rage internally as rage multiplied by 10, so:

    int(11.7 * 10) = 117 internal rage
    117 internal rage = +11 displayed rage

    For damage taken, I am using:

    rage = (damage + absorbed) / c * 2.5

    With Berserker Rage active, that value is doubled.


    The main question

    Has anyone here analyzed raw WoW combat logs deeply enough to know whether their textual order can be slightly different from the actual internal rage/power update order?

    For example:


    • Can damage, rage gain, and spell cast events be written to the combat log in an order that is not exactly the same as the internal server/client power timeline?
    • Can a warrior ability be accepted by the server while the raw log only shows the rage gain that made it possible a few lines later?
    • Is this a known limitation when reconstructing rage from raw logs?
    • Or am I more likely missing a mechanic, modifier, truncation rule, or rage source?



    What I am trying to avoid

    I am trying to keep the analysis conservative.

    • I do not want to invent hidden rage.
    • I do not want to force the numbers to fit.
    • I do not want to assume the server is wrong.
    • I do not want to treat the addon as a replacement for the combat log.


    The addon is only being used as an external check of what the player saw on the rage bar. The simulator itself is based on the raw combat log and known rage formulas.


    What I would like to know

    If anyone has experience with:

    • raw WoW combat logs,
    • warrior rage reconstruction,
    • UnitPower / rage tracking addons,
    • server-side rage formulas,
    • or post-fight combat log simulators,


    I would really appreciate your opinion.

    Have you ever found this kind of barrier when analyzing raw logs?

    If yes, how did you handle it?

    Did you reorder certain event types, add a tolerance window, use client-side power readings as validation, or conclude that exact rage reconstruction is not always possible from the raw log alone?

    Any correction to the formula or interpretation above is also welcome.

  2. 4 Weeks Ago  
    I don't know if this is going to help you, but recently I noticed that when, as a paladin, you use judgement on an enemy, you get four events (judgement, seal for judgement, white, seal for white); most of the time they appear in the "right" order, but often they are misordered in the combat log.

  3. 4 Weeks Ago  
    Thanks, Shred. That actually helps a lot.

    It confirms the kind of issue I am seeing with warrior rage too: related combat log events can appear slightly out of the real
    internal order. So this is probably not just something wrong with my addon or my specific character, but a broader combat-log
    ordering limitation/bug.

    I will keep treating it conservatively: raw log remains the main source, but exact power reconstruction may need to account for these
    small ordering mismatches.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •