Maintenance for the week of June 24:
• PC/Mac: No maintenance – June 24
• ESO Store and Account System for maintenance – June 26, 4:00AM EDT (08:00 UTC) – 12:00PM EDT (16:00 UTC)

Percentage Calculation 101 - ZOS Edition

lolo_01b16_ESO
lolo_01b16_ESO
✭✭✭✭✭
You might have learned about percentage calculations at school and you might or might not remember how it worked. But don't worry, in eso percentage calculation is easy, you just need to remember the following definitons:
1. When a skill costs 3410 magicka and restores 100% of the skill costs when it fails to pull the target to you, then you'll get back 2940 magicka when it fails.
2. When a skill costs 3897 magicka and restores 10% of it's costs per target you hit with it you'll get 336 magicka when you hit 1 target.
3. When a skill costs 8526 magicka and you skill a passive that reduces skill costs by 1%, your skill will cost 74 magicka less than before.


@ZOS_GinaBruno Pls have someone look into how percentages are calculated, it shouldn't be that hard to write code that can calculate 100% of 3410.

Btw. All numbers above are from a naked v16 char with no cp spend and no other skillspoints set, but the calculations stay wrong no matter how many cps or skill points you put anywhere and no matter what gear you use.
  • BullNetch
    BullNetch
    ✭✭✭
    It's probably "base stats."

    I remember something like this from WoW.

    It's probably based on what the skill would cost with no gear on, no passives, no mundus stone.

    strip naked, change your mundus stone to the shadow, reset attribute points, reset champ points. How much does the spell cost?
    Edited by BullNetch on February 28, 2016 2:57PM
  • yodased
    yodased
    ✭✭✭✭✭
    ✭✭✭✭
    Yeah the way maths works in games like this is every is set to a null value and then given a base cost

    Your particular variables will make that base cost higher or lower, but the code is set for a global variable of base number for all.

    The reason is because you write the code (if process return 2091 health) or whatever, not a complex formula with unlimited variables.

    Imagine the computing power needed to check (all passives and actives vs base cost vs % rng vd environmental variables) return %.

    .... no thanks even fastest machine code would throw up and die.
    Edited by yodased on February 28, 2016 4:05PM
    Tl;dr really weigh the fun you have in game vs the business practices you are supporting.
  • NerfPlease
    NerfPlease
    ✭✭✭
    yodased wrote: »

    Imagine the computing power needed to check (all passives and actives vs base cost vs % rng vd environmental variables) return %.

    .... no thanks even fastest machine code would throw up and die.

    sorry but you know NOTHING about PC processors and their possibilities, especially hi-end ones



  • lolo_01b16_ESO
    lolo_01b16_ESO
    ✭✭✭✭✭
    yodased wrote: »
    Yeah the way maths works in games like this is every is set to a null value and then given a base cost

    Your particular variables will make that base cost higher or lower, but the code is set for a global variable of base number for all.

    The reason is because you write the code (if process return 2091 health) or whatever, not a complex formula with unlimited variables.

    Imagine the computing power needed to check (all passives and actives vs base cost vs % rng vd environmental variables) return %.

    .... no thanks even fastest machine code would throw up and die.
    Actually all cost reduction modifiers change the ressource return, but you'll always get ~85% instead of 100% from chains, no matter if you have a new naked template with no cp and passives skilled or a fully equipped char with everything in cost reduction.
  • Ayantir
    Ayantir
    ✭✭✭✭
    It's not a maths problem but the order in which buff and debuff is applied, that's all.
    Obsessive Compulsive Elder Scrolls addons Coder
    A Few millions downloads of ESO addons now.
    Master crafter on my main char since release. All tradeskills, recipes \o/, researchs (since long), 35 styles known
    My little french Guild: Cercle de l'Eveil
  • Runs
    Runs
    ✭✭✭✭✭
    ✭✭✭
    Which is more likely...

    They fix the math so every skill works like it says?

    or

    They change all the tool tips be vague about the percentages(ex.: Restores close to/almost/around 100% magicka)?
    Edited by Runs on February 28, 2016 5:56PM
    Runs| Orc NightbladeChim-el Adabal| Dunmer TemplarM'air the Honest| Khajiit Templar
    Oddity| Altmer SorcerorDrizlo| Orc DragonKnightLady Ra Gada| Redguard Sorceror
    Taste-of-Hist-Sap| Argonian NightbladeWar'den Peace| Khajiit WardenLittle Warden Annie Altmer Warden
    Ports with Blood| Breton TemplarDirty-Old-Man| Dunmer DragonKnightEyes-of-the-Sun| Argonian DragonKnight
    Bleak Mystique| Nord WardenPolychronopolous| Imperial SorcerorBullcrit| Khajiit Nightblade
    PC NA CP 1250+ and still a noob
    At Writs End - A place to complete master writs
  • ThatNeonZebraAgain
    ThatNeonZebraAgain
    ✭✭✭✭✭
    Runs wrote: »
    Which is more likely...

    They fix the math so every skill works like it says?

    or

    They change all the tool tips be vague about the percentages(ex.: Restores close to/almost/around 100% magicka)?

    Reminds of a year and a half ago when they were trying to fix a bug with Siphoning Attacks. The % of health returned was listed in the tooltip as a higher number than what it was actually returning. After multiple failed attempts to fix it, they just changed the tooltip to reflect the bugged % :D The actual difference in amount was small, so it really didn't change anything, but it is generally telling.
    Edited by ThatNeonZebraAgain on February 28, 2016 6:47PM
    Gore-of-the-Forest Argonian Nightblade
    Wode Earthrender Breton Dragonknight
    Ceol the Last Baron Redguard Dragonknight
    Wayra High Elf Sorceress
    Erebain Salothran Dark Elf Templar
    Rituals-of-the-Forest Argonian Warden
  • Reorx_Holybeard
    Reorx_Holybeard
    ✭✭✭✭✭
    yodased wrote: »
    Yeah the way maths works in games like this is every is set to a null value and then given a base cost

    Your particular variables will make that base cost higher or lower, but the code is set for a global variable of base number for all.

    The reason is because you write the code (if process return 2091 health) or whatever, not a complex formula with unlimited variables.

    Imagine the computing power needed to check (all passives and actives vs base cost vs % rng vd environmental variables) return %.

    .... no thanks even fastest machine code would throw up and die.

    Assuming this is not a troll post...but most people vastly underestimate exactly how fast your typical computer is these days and how many computations/second they can achieve. I just did a very quick (and mostly useless) test and found I could recalculate about 1 billion skill costs each second. That's quite a lot...

    Of course the game really should only need to recalculate skill costs if something changes (equipment, skills, buffs, food, etc...), which even if it is every few seconds is really nothing at all.

    I've always assumed the problems in tooltips were due to the sever/client nature of the game. The server and client each have their own system to calculate tooltips and when they aren't exactly identical you get differences. In theory the client should just get the tooltip values from the server but perhaps they change too frequently to do this (imagine having to send all tooltips values for all a character's skills every other second in a fight).
    Reorx Holybeard -- NA/PC
    Founder/Admin of www.uesp.net -- UESP ESO Guilds
    Creator of the "Best" ESO Build Editor
    I'm on a quest to build the world's toughest USB drive!
  • yodased
    yodased
    ✭✭✭✭✭
    ✭✭✭✭
    It's not about your PC, its about the server having to do stupid amount of math based on variables being sent to it and changing real time.

    If you have a proc off a % of a skill and that % is based on a fluid number, which it would be based on current buff/debuff, then you get into floating binary

    LoL I have no idea how processors work? It comes down to effective use of code, not what your PC or your ego can handle.

    Why the hell do you have checks against multiple variables for no reason, a lot of communication for no reason, just tell it to give a base number on proc and boom.

    No checking to see what floating % is currently active. And you have to remember, your PC doing the checks for YOUR character is one thing, the server has to do it for your character in relationship to all other characters and external variables not even in proximity to your character.

    It's just not worth the computing time and communication latency to communicate the current base back and forth, just send a static variable and be done.
    Tl;dr really weigh the fun you have in game vs the business practices you are supporting.
  • lolo_01b16_ESO
    lolo_01b16_ESO
    ✭✭✭✭✭
    yodased wrote: »
    It's not about your PC, its about the server having to do stupid amount of math based on variables being sent to it and changing real time.

    If you have a proc off a % of a skill and that % is based on a fluid number, which it would be based on current buff/debuff, then you get into floating binary

    LoL I have no idea how processors work? It comes down to effective use of code, not what your PC or your ego can handle.

    Why the hell do you have checks against multiple variables for no reason, a lot of communication for no reason, just tell it to give a base number on proc and boom.

    No checking to see what floating % is currently active. And you have to remember, your PC doing the checks for YOUR character is one thing, the server has to do it for your character in relationship to all other characters and external variables not even in proximity to your character.

    It's just not worth the computing time and communication latency to communicate the current base back and forth, just send a static variable and be done.
    Well, I don't know how it is programmed exactly, but they do check skill costs in real time and have their ressource returens based on that. If I use chains and it fails, I get ~85% of the costs back, if I switch to my off bar where I have a full seduces set, my skill becomes cheaper, the ressource return becomes less, but it's still ~85%. If I proc Kena, my skill costs more, the ressource return becomes higher, but still it returns ~85% of the costs. So it doesn't seem to be a static number to reduce the calculations needed.

    @ZOS_GinaBruno Would be nice to see at least some kind of reaction. I'd even be happy with something like: "We can't change it due to ..., but we'll fix the tooltip, so it describes how the skill works even if that wasn't it's intended design."
  • Asayre
    Asayre
    ✭✭✭✭✭
    I think it's due to rounding errors of the base cost. The base cost of Chains at V16 is not 3410 (the value you obtained without any skills/gear/CP) but probably 2933 (3140/1.1625). I agree that it is confusing but probably from a certain twisted view point it is returning the base cost of the spell.
    Reference for any calculation I make Introduction to PvE Damage Calculation
  • Mady
    Mady
    ✭✭✭✭✭
    You might have learned about percentage calculations at school and you might or might not remember how it worked. But don't worry, in eso percentage calculation is easy, you just need to remember the following definitons:
    1. When a skill costs 3410 magicka and restores 100% of the skill costs when it fails to pull the target to you, then you'll get back 2940 magicka when it fails.
    2. When a skill costs 3897 magicka and restores 10% of it's costs per target you hit with it you'll get 336 magicka when you hit 1 target.
    3. When a skill costs 8526 magicka and you skill a passive that reduces skill costs by 1%, your skill will cost 74 magicka less than before.


    @ZOS_GinaBruno Pls have someone look into how percentages are calculated, it shouldn't be that hard to write code that can calculate 100% of 3410.

    Btw. All numbers above are from a naked v16 char with no cp spend and no other skillspoints set, but the calculations stay wrong no matter how many cps or skill points you put anywhere and no matter what gear you use.

    Absolutely hilarious o:)
    Discord HypeSquad Member
    Official AlcastHQ Discord Server: discord.gg/alcasthq
    Feel free to join!
    Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity. But the dreamers of the day are dangerous men for they may act their dream with open eyes, to make it possible.
Sign In or Register to comment.