12.0.5 in-combat error #4


  • Defect
Open
  • Veyska created this issue Apr 22, 2026
    430x Broker_Speed/core.lua:22: attempt to compare local 'newspeed' (a secret number value, while execution tainted by 'Broker_Speed')
    [Broker_Speed/core.lua]:22: in function <Broker_Speed/core.lua:14>

     

    Works fine OOC, spams above error in-combat.  Apparently Blizzard has locked down movement speed data now too.  🙄  https://us.forums.blizzard.com/en/wow/t/player-speed-now-secret-in-combat/2294813

  • Veyska added a tag Defect Apr 22, 2026
  • Carnitaas posted a comment Apr 22, 2026

    Recent WoW changes can cause GetUnitSpeed("player") to return a secret value in some situations, especially in combat, which makes normal addon math like converting speed to a percent throw Lua errors. This update adds a small guard so Broker_Speed checks for that case before doing any calculations; when the speed value is secret, the display now shows ∞ instead of erroring, and normal percentage output resumes automatically once WoW returns a usable value again.

     

    Core.lua diff is here:
    https://paaster.io/69e8df3ec74750322e83865f#lNlB8mRU_QJzu4RG7LTh1M3-KcaqGTQaDTC-SmDEvmw

  • Veyska posted a comment Apr 22, 2026

    I'm not able to hop in-game right now and see if the alternative fix I put together works (I give it 50/50 odds, I was half-asleep and mostly running on spite) but it would be nice to not *completely* lose speed data in-combat just because Blizzard decided to be a jerk.  We should still be able to show the raw movement speed, yes?  (Hopefully truncating to not be umpteen decimal points isn't also An Unfair Advantage or something stupid.)  Maybe something like "XX% (Ym/s)" with the XX% going to ??% or something in-combat?  Possibly with an added option to not show the raw data.

     

    (Also FWIW C_PlayerInfo.GetGlidingInfo still seems to work fine in-combat, my skyriding HUD wasn't throwing any errors, so could probably lean on that for some of the speed values.  Though given current/past trends Blizzard might well lock that down too Because.)


    Edited Apr 22, 2026
  • Veyska posted a comment Apr 22, 2026

    Possibly of relevance, from the WoWUIDIscord, posted by Ninjarobot (in the #retail channel, if you want to go see additional chatter):

     

    *****

    if all you care about is displaying it as a percentage you can pass it through AbbreviateNumbers with the following breakpoint data
    local abbrevData =
    {
         breakpointData =
          {
               {
                    breakpoint = 0,
                    abbreviation = "%",
                    significandDivisor = 0.0007,
                    fractionDivisor = 100,
                    abbreviationIsGlobal = false,
               },
          }
    }

    edit: this will keep it to two decimals

    *****


    Edited Apr 22, 2026
  • Veyska posted a comment Apr 22, 2026

     Bah, can't tell if my attempt at kicking over to raw values in-combat is working or not because LibDataBroker can't output anything secret.


To post a comment, please login or register a new account.