Guide to Decoding AQ's Game Mechanics and Balance System (Part II) (Full Version)

All Forums >> [Artix Entertainment Games] >> [AdventureQuest] >> AdventureQuest Guides >> Pending Guides



Message


CH4OT1C! -> Guide to Decoding AQ's Game Mechanics and Balance System (Part II) (8/31/2025 4:39:03)

[6] Stats
Stats are core to gameplay in AQ. The player receives stat points equal to their level multiplied by 5 (Max: 750), which they can choose to allocate to 6 different stats: STR, DEX, INT, END, CHA, and LUK. These stats have various effects, ranging from increasing the damage and accuracy of different attack types, to increasing the size of certain resource pools (HP/MP), to modifying status Save Rolls. This section of the guide will first discuss how the game assumes stat points are allocated, before discussing the effects of each stat in greater detail.

When you create a new character, 10 stat points will be invested into one of STR/DEX/LUK depending on whether you choose to start as a Warrior, Ranger (Rogue is an incorrect term), or Mage (i.e., you first gain available stat points from Level 3 onwards). You can invest a maximum of 250 points into a single stat, and you can choose to redistribute your existing stat points at any time at the stat trainer tents in Battleon. However, it will cost you a Gold fee to do so*.

*Players that crave a less efficient, yet more nostalgic, option can instead choose to be beaten by Sir Pwnsalot through the Guardian Tower (or through Death's realm). If you choose to go this route, clicking on his jaw will speed up the process.


[6.0.1] Stat Training Cost
The following formula determines the cost of training a stat:

quote:

Gold Cost: floor(10 * 1.25 ^ [(StatLvl + 5) / 5])
Modified from Source.

In this formula, 'StatLvl' refers to the current value of the stat. If the player has 235 points invested in STR, then 'StatLvl' for STR is 235. This is also the only variable in the formula (i.e., the new value the player trains the stat to is not considered). This means it does not matter how many points you invest in a stat at any one time, the cost will always be the same. For example, following the assumption STR is 235:

quote:

Gold Cost: floor(10 * 1.25 ^ ((235 [Current STR] + 5) / 5)) = 448,415 Gold

This cost would not change whether the new value is 240, 245, or 250.



[6.1] Expected Stats
The player is expected to invest stat points in the following way:

quote:

Expected Main: max(min(2 * PowLvl + 30, 5 * PowLvl, 250), 10)
Expected Secondary: min(4 * PowLvl + 32 - Expected Main, 5*PowLvl - Expected Main, 250)
Expected Tertiary: min(5 * PowLvl - Expected Main - Expected Secondary
Source.

There are three mainstats in AQ: STR, DEX, and INT. These stats primarily influence the 'Player Damage' portion of the Player Turn Model (see Section 1)*. This model assumes that the player invests in at least one mainstat. However, there is no issue if the player chooses to invest in more than one. It only becomes a problem if the player chooses not to invest in a mainstat (not doing so has a number of implications, not least a severe reduction in player damage/accuracy and companion accuracy).

Secondary stats are an outdated category in modern AQ. DEX used to be a secondary stat, providing BtH (i.e. accuracy) to various attack types; however, this is no longer the case. As AQ's game mechanics have been carefully constructed over more than 20 years, simply removing the existence of secondary stats as an assumption would pose a problem. Hence, it remains a part of the formula.

There are three tertiary support stats in AQ: CHA, END, and LUK. They influence various other aspects of the Player Turn Model. The model does not inherently assume that the Player invests in any specific one of these stats (However, expected damage calculations do assume the player invests in LUK, as shown in Section 3).

The PowLvl value in the above formulae is the same as the Player's Level. For example, a Level 78 Player is assumed to have:
quote:

Expected Main: max(min(186 [2 * 78 + 30], 390 [5 * 78], 250), 10) = 186
Expected Secondary: min(158 [4 * 78 + 32 - 186], 204 [5 * 78 - 186], 250) = 158
Expected Tertiary: 5 * 78 - 186 - 158 = 46

However, do note that as the player can only invest stats in multiples of 5, they may not precisely align with these expectations.

*These stats can also influence SP and rarely Pet damage, depending on the items used.



Before discussing each stat in greater detail, one other mechanic must be explained:



[6.2] Style Bonuses
The AQ Dev team introduced 'Style Bonuses' to stats as part of the 2024 Stat update. This is an additional power budget of 15% Melee allocated to each stat to help provide them with their own unique identity. These bonuses first appear at 25% of their normal strength after the player invests more than 150 points into a single stat (i.e. the first bonus appears at 155 investment). They then scale linearly to full power after you invest a full 250 points:

quote:

Multiplier: 0.25 + 0.75 * (Stat - 150) / 100
This formula has not previously been documented.


Style bonuses apply to all relevant attack types (Melee/Ranged/Magic), provided that the player has the required stat investment. For example, INT's Wallbreaker bonus applies to all spell-type attacks (see below for details), regardless of whether the spell-type skill deals Melee, Ranged, or Magic damage. Additionally, Style Bonuses fall completely outside of AQ's balance system. They represent free extra power for the player. The monster does not gain access to Style Bonuses.



[6.3] STR
STR is the mainstat for Warriors. It boosts both the damage and accuracy of Melee weapon attacks and skills. When you use one of these attacks, you receive bonus damage equivalent to:

quote:

Melee Weapon Attacks: STR / 8 (* Armour Stat)
Melee Skills: STR / 4 (* Armour Stat)
Source.

When combined with 'Armour Stat', this represents approximately 50% of Melee attack damage at any given level. See Section 3 for further details on damage calculation.

You also receive Bonus to Hit (BtH; increased accuracy) on Melee attacks equal to:
quote:

Stat BtH: STR * 4 / 25
Source, with an update here. Please note that the Master List is outdated and provides incorrect stat bonuses

STR contributes approximately 50% of accuracy to Melee attacks. See Section 4 for further details on accuracy calculation.

Warriors are distinguished by their consistent damage over time. This is aided by ' Warrior Lean', a mechanism that ensures Melee attacks will always deal at least *1 damage regardless of armour lean. This means Melee attacks will deal standard damage even in FD armours (in which the player normally deals *0.8 damage), approximating the effect of using Ranged/Magic 100-procs (which are entirely unaffected by armour lean).


[6.3.1] Style Bonus
STR has two distinct Style Bonuses:
  • Weapon Mastery: All regular weapon attacks deal up to +10% damage.
  • Backhand: Whenever the monster attempts to hit (regardless of whether it lands), Warriors deal damage to the monster worth up to 2.5% of an expected player attack (2.5% melee). This a damage follows weapon type (Melee/Ranged/Magic) and element, but does not gain weapon effects.



    [6.4] DEX
    DEX is the mainstat for Rangers. It boosts both the damage and accuracy of Ranged weapon attacks and skills. When you use one of these attacks, you receive bonus damage equivalent to:

    quote:

    Ranged Weapon Attacks: DEX / 8 (* Armour Stat)
    Ranged Skills: DEX / 4 (* Armour Stat)
    Source.

    When combined with 'Armour Stat', this represents approximately 50% of Ranged attack damage at any given level. See Section 3 for further details on damage calculation.

    You also receive Bonus to Hit (BtH; increased accuracy) on Ranged attacks equal to:
    quote:

    Stat BtH: DEX * 4 / 25
    Source, with an update here. Please note that the Master List is outdated and provides incorrect stat bonuses

    DEX contributes approximately 50% of accuracy to Ranged attacks. See Section 4 for further details on accuracy calculation.

    Rangers are distinguished from other builds by 'Adaptation', a mechanism that modifies the accuracy and damage of Ranged damage in accordance with monster blocking. The game tracks when players hit or miss the monster with a Ranged attack, adjusting your accuracy according to the number of times you hit and miss using the following formula:

    quote:

    BtH modifier: -85 * Total ^ 2 / (Total ^ 2 + 32 * Total)
    Where:
    Total: Hits - 2 * Misses
    Source:.

    For example, suppose that the player hits 3 times and misses once. The total modifier would be:

    quote:

    Total: = 3 [Hits] - 2 * 1 [Misses] = 1
    BtH Modifier: -85 * 1 [Total] ^ 2 / ( 1 [Total] ^ 2 + 32 * 1 [Total]) = -2.58

    This means Ranged attacks lose 2.58 BtH and deal:

    quote:

    Damage: 85 / (85 - 2.58 [BtH Modifier]) = *1.031 damage

    (See Section 4 for additional details on calculating BtH Leans).

    This modification is calculated on a per hit basis and accumulates over the entire battle, meaning your accuracy and damage output with Ranged attacks will constantly adjust over time. Ranged skills adapt at half the rate shown above. Additionally, if your accuracy modifier >=20 or <=20 BtH, the downside of the lean beyond the 20 BtH range is doubled (see Source). For example, as stated by Ianthe:

    quote:

  • -30 lean gives a damage boost based on -30 but a penalty of -40 BTH [20 + 10 * 2 doubling of the downside]
  • -40 lean gives a damage boost based on -40 but a penalty of -60 BTH [20 + 20 * 2 doubling of the downside]



  • [6.4.1] Style Bonus
    DEX's Style bonus is Proc Mastery. Firstly, all weapon attacks gain up to 4.25 BtH. Secondly, Weapon Specials gain a damage bonus based on the following formula:

    quote:

    Damage Bonus: 15 * log(ProcRate) / log(100)%
    Source.

    'ProcRate' in the above formula represents the chance of a weapon using its weapon special. The natural logarithms in this formula produce a growth curve where the boost rapidly rises at low special rates, before the rate of increase rapidly tails off towards 100-proc weapons. As with all Style Bonuses, this is further affected by the amount the player has invested in DEX. Below is a table of damage bonuses applied as proc rate increase:

    Proc Rate     Bonus
           0%        0%     
           5%     5.24%
          10%      7.5%
          15%     8.82%
          20%     9.76%
          50%    12.74%
         100%       15%

    Please note that this bonus only applies to weapon specials. This means the true average damage bonus should also be multiplied by their proc rate. For example, while 5-proc weapons gain +5.24% damage to their weapon special, the true average damage bonus is +0.262% because the special only happens 5% of the time (5.24 * 0.05 = 0.262). This strongly incentivises Rangers to use 100-proc weapons (all <=20-proc weapons offer <2% average damage bonus).



    [6.5] INT
    INT is the mainstat for Mages. It boosts both the damage and accuracy of Magic weapon attacks, skills, and spells. When you use one of these attacks, you receive bonus damage equivalent to:

    quote:

    Magic Weapon Attacks: INT * 3 / 32 (* Armour Stat)
    Magic Skills/Spells: INT / 4 (* Armour Stat)
    Source.

    When combined with 'Armour Stat', this represents approximately 50% of Magic attack damage at any given level. See Section 3 for further details on damage calculation.

    You also receive Bonus to Hit (BtH; increased accuracy) on Magic attacks equal to:
    quote:

    Stat BtH: INT * 4 / 25
    Source, with an update here. Please note that the Master List is outdated and provides incorrect stat bonuses

    INT contributes approximately 50% of accuracy to Magic attacks. See Section 4 for further details on accuracy calculation.

    Mages are distinguished from other builds by their access to Spells, which cost MP to use. A player's MP bar scales based upon the INT stat:

    quote:

    Player MP: round(4.1 * (33 + (5.1 + 2.3375 * Level + 0.01125 * Level^2) * min(1, INT / max(min(2 * Level + 4, 250), 10))))
    Source. Please note that the formula on the master list is currently includes '200' rather than '250'. This is because, prior to 2019, the player could only invest 200 points into any one stat.

    This formula is discussed in detail in Section 2. However, investing the expected amount of INT for your level will provide enough MP to cast 4 Spells.


    [6.5.1] Style Bonus
    INT's Style bonus is Wallbreaker: Whenever you use a spell or spell-type skill against a monster with an elemental resistance to that skill of <100%, Wallbreaker will weaken the monster's resistance to the attack. The amount of weakening increases the more resistant the enemy is to your attack:

    quote:

    Bonus: +[(100 - Resistance ) / 1.3]%
    Source. This formula has been slightly modified as it would otherwise produce the decimal boost.

    For example, against a monster with a 70% resistance to your attack would have it increased by:

    quote:

    Bonus: +((100 - 70 [Base Resistance] ) / 1.3) = +23.077%

    Below is a table of bonuses related to each level below 100% resistance. This style bonus does not take effect if the resistance >100%:

    Base Resistance      Bonus       Final
               100%        +0%        100%
                90%     +7.69%      96.92%  
                80%    +15.38%      92.31%
                70%    +23.08%      86.15%
                60%    +30.77%      78.46%
                50%    +38.46%      69.23%
                40%    +46.15%      58.46%
                30%    +53.85%      46.15%
                20%    +61.54%      32.31%
                10%    +69.23%      16.92%

    It is important to note that the % bonus applies relative to the base resistance; the +69.23% damage bonus the player gains against monsters with a 10% elemental resistance produces a final resistance of 16.92%, not 79.23% (10 * 1 + 69.23 / 100 = 16.92). Non-standard elements also receive wallbreaker bonuses, though as monster resistances to these elements are almost always 100%, they are unlikely to be applicable.



    [6.6] END
    END primarily serves to increase player HP. The formula to calculate HP is:

    quote:

    Player HP: round(23.8 * ((5.25 + 0.5625 * Level + 0.00375 * Level ^ 2) + (1 + 0.066 * Level) * END/16) * 1/1.4)
    Source.

    Thus, a Level 150 Player with 150 END could expect to gain additional HP equal to:

    quote:

    New HP: 23.8 * ((5.25 + 0.5625 * 150 [Level] + 0.00375 * 150 [Level] ^ 2) + (1 + 0.066 * 150 [Level]) * 150 [END]/16) * 1/1.4 = 4695

    See further details on calculating resources in Section 2.

    In addition, END provides status resistance and boosts HP healing according to the following formula:

    quote:

    Status Resistance: +END/50 [Max +5]
    HP Heal Boost: +(END/20)% [Max 12.5%]
    Source.



    [6.6.1] Style Bonus
    END's Style Bonus is Unstoppable: Once every 10 turns, the player is automatically able to break out of any one stun status effect (e.g., Daze, Fear, Paralysis, Freeze, Freeze-like effect).



    [6.7] CHA
    CHA is the companion stat. It boosts both the damage and accuracy of Pets and Guests. When you use Companions, you receive bonus damage equal to:

    quote:

    Pets & Guests: CHA/15
    Source.

    This bonus represents approximately 50% of Pet/Guest damage. See Section 3 for further details on damage calculation.

    You also receive Bonus to Hit (BtH; increased accuracy) with companions equal to:

    quote:

    Pets + Guests: CHA * 4 / 50 + Max(STR, DEX, INT) * 4 / 50
    Source, with an update here. Please note that the Master List is outdated and provides incorrect stat bonuses

    CHA contributes approximately 25% of accuracy to Companion attacks. See Section 4 for further details on accuracy calculation.

    It is important to note that while Guest actions were worth 60% Melee in the past, from the 2024 Stat Revamp this was reduced to 45% Melee.


    [6.7.1] Style Bonus
    CHA has two different Style Bonuses:
  • Increased output: Guests deal +5% Melee damage. This means they normally deal 50% Melee in damage. However, please note that their actions are still only assumed to be worth 45% Melee; remember: Style Bonuses fall completely outside the Player Turn Model.
  • Ferocious Strikes: Guests have a 22.2% chance of dealing double damage (also applies to status effects). This means they deal a further +45*0.222 = +10% damage on average.



    [6.8] LUK
    Unlike the other stats, LUK does not have a core role. Instead, it contributes in several different ways. Its most recognisable benefit is the Lucky Strike, where player and pet attacks gain bonus damage equal to:

    quote:

    Player Attacks: LUK * 3 / 8
    Pet Attacks: LUK / 5
    Source.

    This is worth approximately 100% Melee for Player attacks and 60% Melee for Pet attacks (Guests do not Lucky Strike). If the player has 0 LUK, it is impossible to Lucky Strike. Otherwise, it occurs a base 10% of the time (assessed per hit). See Section 3 for further details on damage calculation.

    LUK almost always represents the minor roll in status saves, meaning it can increase the chance of status infliction by up to 10%.

    The player has a further LUK / 50% [Max: 5%] chance to attempt a Lucky Break on their turn. This converts a negative status affecting the player into a positive one. The conversion depends on the status:
  • DoT statuses E.g., Bleed / Burn / Disease / Poison / Prismatic Burn / Spiritual Seed: Regeneration (1 turn, Power: 5).
  • Damage Reduction Statuses E.g., Blind / Choked / The Cold / Panic: Elemental Empowerment (1 turn, x1.357 to all elements).
  • Inaction Statuses E.g., Control / Daze / Fear / Freeze / Paralyse / Sleep: 50% chance of Celerity (1 turn, player only).
  • Stat Loss E.g., Brain Drain / Buffet / Cripple / Entangle / Fragile / Offbalance / Repulsive / Unlucky: Strength Boost (STR) / Smooth (DEX) / Intellect Boost (INT) / Tenacious (END) / Suave (CHA) / Lucky (LUK) boost depending on the stat reduced (1 turn, up to 156.33 [Stat]).
  • Defence Loss: Defence Boost (1 turn, +30 blocking).
  • Elemental Vulnerability: Elemental Shield (1 turn, x0.643 damage, same element as the elemental vulnerability).
  • Mindlock: Regain Mana (any element, worth 40% of a standard spell cost for the level)


    [6.8.1] Style Bonus
    LUK's Style Bonus is 'Lucky' Lucky Breaks. This increases the chance of a Lucky Break (see above) occurring by up to +15% (20% total).



    [6.9] Initiative
    One final benefit of stats is Initiative, the mechanism which decides who goes first in a battle. The first strike roll is calculated as follows:

    quote:


    PlayerStrikeFirst: X = Random[1,100] + Initiative
    MonsterStrikeFirst: Z = Random[1,100] + Initiative

    where:
    Initiative: (LUK + STR/2 +DEX/2 + INT/2)/2
    Source, with modifications found here.

    The Player and monster each roll random values between 1 and 100, adding them to their respective initiative value. Whichever produces the highest value strikes first:

    quote:

    PlayerStrikeFirst > MonsterStrikeFirst = Player Strikes First
    PlayerStrikeFirst < MonsterStrikeFirst = Monster Strikes First
    PlayerStrikeFirst = Monster StrikeFirst = 50% chance the Player Strikes First. 50% chance the Monster Strikes First
    Source.

    Thus, increasing your LUK, STR, DEX, and INT will increase your chances of striking first. To guarantee striking first, your Initiative must exceed the monster's by more than 100 points.




    [7] Elemental Compensation

    [7.1] What is elemental compensation?
    This is the Elemental Wheel:
    [image]https://forums2.battleon.com/f/upfiles/326580/84AE7CB2D0FE49CD92934EF1666D772F.gif[/image]
    Its purpose is to determine the relationship between the elements. Allied elements are placed next to one another (e.g., Earth and Energy are allied to Fire), Neutral elements are two spaces away (e.g., Light and Darkness are neutral to Fire), Poorly related elements are three spaces away (e.g., Water and Wind are poorly related to Fire), and the opposing elements are placed furthest away (e.g., Ice is the opposing element to Fire). The Player Turn Model (See Section 1) assumes that you defend against one element, while attacking with its polar opposite. For example, you are expected to defend with Fire while attacking with Ice. While there are monsters that encourage you to deviate from this typical assumption (e.g., Fumidus), it generally holds.

    However, sometimes items force you to deviate from this basic assumption. This is most commonly seen with armour skills; for example the Angel of Souls and Rubicon Legate armours have skills that deal damage in the same Element as they defend against (Darkness and Light respectively).

    Elemental compensation (often shortened to Elecomp by the community) is a modifier to attacks that compensates the player for when the above assumption is forcibly violated. Both the Angel of Souls and Rubicon Legate armours already have Elecomp integrated into them. Elecomp can be applied to any elemental combination, just so long as the player isn't able to select the element (this even applies to opposing elements. See Beachmancer Garb). The compensation will, however, vary depending on several factors, not least how closely the attack and defence elements are aligned. It is also important to emphasise that Elecomp is only included on attacks that forcibly break this assumption. The player might choose to attack and defend with the same element, but they won't receive any Elecomp for it. The attack has to force you.

    Elecomp comes in multiple forms depending on the type of attack:

  • Weapon-based Skills: Reduced Cost.
  • Spells and Spell-type Attacks: Increased Damage.
  • Regular Weapon Attacks (a.k.a. 'Elelock'): Increased Damage.

    (Please note there are a few exceptions to the above distinctions, particularly with old items.



    [7.2] Calculating elemental compensation
    Elecomp is difficult to calculate because of its complexity and multiple required variables. The required variables are displayed below:
    quote:

    Elemental Compensation: 5 * (CompensationMod / (4 + CompensationMod))
    where:
    CompensationMod: min([$Element(DamageTakenMod / DamageDealtMod) * BlockingMod * ArmourLeanMod / 0.9])
    where:
    ArmourLeanMod: ((ArmourLean - 1) / 2 + 1)
    BlockingMod: ((85 - mean(ArmourMRM) + ExpectedMRM) / 85)
    DamageTakenMod: ($Element[CurrentRes] / $Element[ExpectedRes])
    DamageDealtMod: (MonsterSkillElementRes / MonsterTopElementRes)
    These formulae have not previously been documented.


    Rather than describe these formulae in detail here, this guide will instead take you through a worked example. However, to briefly summarise the required variables:
  • ArmourLean: The Armour Lean multiplier of the armour. Use Neutral armour lean (x1) if the item is not an armour
  • ArmourMRM: The blocking (Melee/Ranged/Magic) values of the armour. Assume BlockingMod is 1 if the item is not an armour.
  • ExpectedMRM: The expected MRM of an armour at the item's level. Assume BlockingMod is 1 if the item is not an armour.
  • CurrentRes: The item's current resistance to $Element (this will be explained below).
  • ExpectedRes: The item's expected resistance to $Element at the item's level (this will be explained below).
  • MonsterSkillElementRes: The monster's expected resistance to the element of the skill gaining Elecomp, identified with respect to the elemental wheel.
  • MonsterTopElementRes: The monster's weakest expected resistance. This is 130%.



    [7.3] A Worked Example
    The Level 150 Pyromancer Bloodmage armour skill has an Elecomp of *1.84977. Let us try to recalculate this using the above formulae. The preliminary goal is to calculate 'CompensationMod', identifying each component in turn:

    quote:

    CompensationMod: min([$Element(DamageTakenMod / DamageDealtMod) * BlockingMod * ArmourLeanMod / 0.9])
    This formula has not previously been documented.



    [7.3.1] ArmourLeanMod
    'ArmourLeanMod' is the simplest component to calculate:

    quote:

    ArmourLeanMod: ((ArmourLean - 1) / 2 + 1)
    This formula has not previously been documented.

    The only required variable is the armour's Armour Lean multiplier, which can be found both in-game and on the item's encyclopedia / info submission entry. Pyromancer Bloodmage has a Fully Offensive Armour Lean, which multiplies damage intake/output by 1.25. Plugging this in:

    quote:

    ArmourLeanMod: ((1.25 [Armour Lean] - 1) / 2 + 1) = 1.125

    This obtains the first required component:

    quote:

    CompensationMod: min($Element[(DamageTakenMod / DamageDealtMod) * BlockingMod * 1.125 / 0.9])



    [7.3.2] BlockingMod
    The second component is a little more complicated to obtain:

    quote:

    BlockingMod: ((85 - mean(ArmourMRM) + ExpectedMRM) / 85)
    This formula has not previously been documented.

    'ArmourMRM' is easy enough to obtain; they can be found both in-game and on the item's encyclopedia / info submission entry. The Level 150 Pyromancer Bloodmage has 46/46/55 MRM respectively*:

    quote:

    BlockingMod: ((85 - 49 [mean(46,46,55)] + ExpectedMRM) / 85)

    *Just be careful if you decide to obtain these values in-game. Make sure to unequip your shield, plus any other items that influence your MRM.

    However, 'ExpectedMRM', the expected MRM for an armour of the item's level, requires an additional formula:

    quote:

    ExpectedMRM: round((0.5 * PowLvl - 0.5) / 3) + 25

    The 'PowLvl' in this formula refers to the Power Level of the item we are calculating Elecomp for. This can only be obtained on the item's encyclopedia / info submission entry. For the Level 150 Pyromancer Bloodmage, this value is 153 (see the 'PowLvl' row):

    quote:

    ExpectedMRM: round((0.5 * 153 - 0.5) / 3) + 25 = 50

    Plugging this into the BlockingMod formula...

    quote:

    BlockingMod: ((85 - 49 [mean(46,46,55)] + 50 [Expected MRM for a Level 153 armour]) / 85) = 1.01176

    This identifies the second component of 'CompensationMod':

    quote:

    CompensationMod: min($Element[(DamageTakenMod / DamageDealtMod) * 1.01176 * 1.125 / 0.9])



    [7.3.3] DamageTakenMod
    The third component increases the complexity further:

    quote:

    DamageTakenMod: ($Element[CurrentRes] / $Element[ExpectedRes])
    This formula has not previously been documented.

    The '$Element' in this formula means that you need to perform the following calculation for every single standard element. This multiplies the number of calculations that need to be done by 8. For its components, you are also going to need to know how to calculate both:

  • The expected resistance of an armour at the item's PowLvl.
  • The expected resistance of a shield at the item's PowLvl.
    These formulae are displayed below:

    quote:

    Expected shield resistance: -0.00000948 * PowLvl ^ 3 + 0.003356 * PowLvl ^ 2 - 0.426364 * PowLvl -4 * PowLvl / 150
    Expected armour resistance: 100 + round(round(0.0015 * PowLvl * PowLvl - 0.6 * PowLvl) - 4 * PowLvl / 150)
    *Currently unsure where these values were sourced.

    'CurrentRes' refers to the resistance of the item to each element, factoring in the expected additional resistance of a shield (if calculating for an Armour) or an armour (if calculating for a Shield) at the item's PowLvl. Since we are dealing with the Level 150 Pyromancer Bloodmage, which we know has a PowLvl of 153, we need to calculate the expected resistance of a shield:

    quote:

    Expected shield resistance: round(-0.00000948 * 153 ^ 3 + 0.003356 * 153 ^ 2 - 0.426364 * 153 -4 * 153 / 150) = -25

    Feeding this into the DamageTakenMod formula, along with Pyromancer Bloodmage's resistances at Level 150:

    quote:


    DamageTakenMod
    Fire: ( 14 [39 - 25] / $Element[ExpectedRes])
    Water: ( 58 [83 - 25] / $Element[ExpectedRes])
    Wind: ( 58 [83 - 25] / $Element[ExpectedRes])
    Ice: ( 70 [95 - 25] / $Element[ExpectedRes])
    Earth: ( 29 [54 -25] / $Element[ExpectedRes])
    Energy: ( 29 [54 - 25] / $Element[ExpectedRes])
    Light: ( 43 [68 - 25] / $Element[ExpectedRes])
    Darkness: ( 43 [68 - 25] / $Element[ExpectedRes])

    To complete the calculation, we need to calculate the expected primary resistance of an item at Pyromancer Bloodmage's PowLvl while factoring in the expected resistance of a shield. We have already calculated the latter above (-25). We now need to fill out the other formula:

    quote:

    Expected Armour Resistance: 100 + round(round(0.0015 * 153 * 153 - 0.6 * 153) - 4 * 153 / 150) = 39
    ExpectedRes: 39 [Expected Armour Resistance] - 25 [Expected Shield Resistance] = 14

    We can now fill out the DamageTakenMod Formula above:

    quote:


    DamageTakenMod
    Fire: ( 14 [39 - 25] / 14 [ExpectedRes]) = 1
    Water: ( 58 [83 - 25] / 14 [ExpectedRes]) = 4.142857
    Wind: ( 58 [83 - 25] / 14 [ExpectedRes]) = 4.142857
    Ice: ( 70 [95 - 25] / 14 [ExpectedRes]) = 5
    Earth: ( 29 [54 -25] / 14 [ExpectedRes]) = 2.071429
    Energy: ( 29 [54 - 25] / 14 [ExpectedRes]) = 2.071429
    Light: ( 43 [68 - 25] / 14 [ExpectedRes]) = 3.071429
    Darkness: ( 43 [68 - 25] / 14 [ExpectedRes]) = 3.071429

    This obtains the third component of our CompensationMod formula, which we can now fill in. As we have done this for all 8 elements, we need to calculate CompensationMod for all 8 elements too:

    quote:

    CompensationMod:
    Fire: 1 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9
    Water: 4.142857 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9
    Wind: 4.142857 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9
    Ice: 5 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9
    Earth: 2.071429 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9
    Energy: 2.071429 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9
    Light: 3.071429 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9
    Darkness: 3.071429 / $Element(DamageDealtMod) * 1.01176 * 1.125 / 0.9



    [7.3.4] DamageDealtMod
    The final component, DamageDealtMod, also needs to be calculated for each element. However, rather than focusing on the item's resistances, we'll be concerned with the monster's resistances to the skill of Pyromancer Bloodmage:

    quote:

    DamageDealtMod: (MonsterSkillElementRes / MonsterTopElementRes)
    This formula has not previously been documented.


    A monster's expected resistances (regardless of Level. Unlike the player, monster resistances don't increase as Level increases) are:
    quote:

    Base Element: 70%
    Allied Elements: 85%
    Neutral Elements: 100%
    Poorly Related Elements: 115%
    Opposite Element: 130%
    *Currently unsure where these values were sourced.

    This means that MonsterTopElementRes will be 130 regardless of element. As for MonsterSkillElementRes, the player would be assumed to fight Fire element monsters in a Fire armour like Pyromancer Bloodmage. Its skill, Blood Pyre, forcibly deals Fire element damage. We can use this information, along with the elemental relationships in Section 7.1, to identify the expected resistances of a Fire element monster to Blood Pyre:

    quote:

    DamageDealtMod:
    Fire: (70 [Base Element] / 130 ) = 0.538462
    Water: (115 [Poorly-related Element] / 130) = 0.884615
    Wind: (115 [Poorly-related Element] / 130) = 0.884615
    Ice: (130 [Opposite Element] / 130) = 1
    Earth: (85 [Allied Element] / 130) = 0.653846
    Energy: (85 [Allied Element] / 130) = 0.653846
    Light: (100 [Neutral Element] / 130) = 0.769231
    Darkness: (100 [Neutral Element] / 130) = 0.769231

    This can now be fed into the final component of CompensationMod:

    quote:

    CompensationMod:
    Fire: 1 / 0.538462 * 1.01176 * 1.125 / 0.9
    Water: 4.142857 / 0.884615 * 1.01176 * 1.125 / 0.9
    Wind: 4.142857 / 0.884615 * 1.01176 * 1.125 / 0.9
    Ice: 5 / 1 * 1.01176 * 1.125 / 0.9
    Earth: 2.071429 / 0.653846 * 1.01176 * 1.125 / 0.9
    Energy: 2.071429 / 0.653846 * 1.01176 * 1.125 / 0.9
    Light: 3.071429 / 0.769231 * 1.01176 * 1.125 / 0.9
    Darkness: 3.071429 / 0.769231) * 1.01176 * 1.125 / 0.9



    [7.3.5] Converting CompensationMod to Elemental Compensation
    Now we have all of the individual components, we need to identify the true CompensationMod value. Remember, while we might have calculated a value for each of the 8 standard elements, only the minimum represents the true CompensationMod value:

    quote:

    CompensationMod:
    Fire: 1 / 0.538462 * 1.01176 * 1.125 / 0.9 = 2.348739 [True Value]
    Water: 4.142857 / 0.884615 * 1.01176 * 1.125 / 0.9 = 5.922908
    Wind: 4.142857 / 0.884615 * 1.01176 * 1.125 / 0.9 = 5.922908
    Ice: 5 / 1 * 1.01176 * 1.125 / 0.9 = 6.323529
    Earth: 2.071429 / 0.653846 * 1.01176 * 1.125 / 0.9 = 4.006673
    Energy: 2.071429 / 0.653846 * 1.01176 * 1.125 / 0.9 = 4.006673
    Light: 3.071429 / 0.769231 * 1.01176 * 1.125 / 0.9 = 5.04979
    Darkness: 3.071429 / 0.769231) * 1.01176 * 1.125 / 0.9 = 5.04979

    In this case, the base element (Fire) is the minimum. It would be considerably simpler if the base element always won; however, that is not the case. You will need to calculate at least DamageTakenMod and DamageDealtMod for all elements to ensure the minimum value is chosen.

    We have CompensationMod (2.348739), but this is not the same as final Elecomp. To calculate that, we need to convert it using the following formula:

    quote:

    Elemental Compensation: 5 * (CompensationMod / (4 + CompensationMod))
    This formula has not previously been documented.

    Filling this in with our CompensationMod:

    quote:

    Elemental Compensation: 5 * (2.348739 / (4 + 2.348739)) = 1.84977 (5 d.p.)

    The listed value of Pyromancer Bloodmage's Skill is also *1.84977; we have precisely calculated its Elecomp using the above formulae.


    [7.3.6] Elemental Compensation for Weapon-based Skills
    What if Pyromancer Bloodmage's skill was weapon-based instead? If that were the case, the elemental compensation afforded to it would need to reduce its cost instead? To convert damage Elecomp into cost Elecomp, we need to follow a slightly different path:

    quote:

    Elemental Compensation [Cost]: (2 / CostCompensationMod - BlockingMod) /1.25
    where:
    CostCompensationMod: 5 * (RemoveArmourLeanMod / (4 + RemoveArmourLeanMod))
    where:
    RemoveArmourLeanMod: CompensationMod * 0.9 / ArmourLeanMod
    These formulae have not previously been documented.

    We already have all the values we need:
  • CompensationMod is 2.348739.
  • ArmourLeanMod is 1.125.
  • BlockingMod is 1.01176.

    The first stage is removing the ArmourLeanMod from CompensationMod:

    quote:

    RemoveArmourLeanMod: 2.358739 * 0.9 / 1.125 = 1.8869912

    In the second, we follow the same formula as in calculating Spell Elecomp:

    quote:

    CostCompensationMod: 5 * (1.8869912 / (4 + 1.8869912)) = 1.6026788

    Finally, this value needs to be converted to reduce cost rather than boosting damage:

    quote:

    Elemental Compensation [Cost]: (2 / 1.6026788 - 1.01176) /1.25 = 0.18892 (5 d.p.)

    For completeness, if we were to make the skill into a Melee/Ranged and Magic skill instead (which would cost 100% Melee in SP for Melee/Ranged and 125% Melee in SP for Magic), the costs would be:

    quote:

    Melee/Ranged: round(392 [100% Melee in SP] * 0.18892) = 74 SP
    Magic: round(392 [100% Melee in SP] * 0.18892) + 98 [25% Melee in SP] = 172 SP

    The magic formula is different because Elecomp would unfairly benefit Mages if it were applied to all 125% Melee of the power they source from resource bars (HP/MP/SP), when it is only granted to 100% Melee of Warrior/Ranger resources (this also means the theoretical MP cost would be 172 / 1.125 * 1.5 = 229 MP). Finally, Pyromancer Bloodmage also has an ability that increases the damage of its skill for an HP cost. This component cost would not receive Elecomp. Overcharged Spells do, but other types of bonus (especially ones not directly attached to the skill) do not receive Elecomp bonuses.




    [8] Miscellaneous Mechanics
    [8.1] Levelling up
    Levelling up takes progressively more experience points the higher your level. The formulae for calculating the experience needed for your next level is:

    quote:

    <= Level 135: 10 * round(11 * (1.1 ^ CurrentLevel))
    > Level 135: 1000 * round(0.011 * (1.1 ^ CurrentLevel))
    Source.

    Thus, a Level 101 Player requires...

    quote:

    Experience: 10 * round(11 * (1.1 ^ 101 [Level])) = 1,667,450

    ...experience, while a Level 143 Player needs...

    quote:

    Experience: 1000 * round(0.011 * (1.1 ^ 143 [Level])) = 9,132,000

    You can also use the following two formulae to calculate the total amount needed from Level 0, or from a specific level:

    quote:

    From Level 0: 1100 * (1.1 ^ FinalLevel - 1)
    From Specific Level: 1100 * (1.1 ^ FinalLevel - 1.1 ^ SpecificLevel)
    Source.




    [8.2] Player Experience and Gold Caps
    The player's daily EXP and Gold caps can be found using the following formulae:

    quote:

    Daily Exp: (1.055 ^ Level + 8 + 1.055 ^ (Level ^ 1.085)) * 900 * 1.5
    Daily Gold: (1.055 ^ Level + 8 + 1.055 ^ (Level ^ 1.085)) * 300 * 1.5
    X-Guardian Daily Exp: (1.055 ^ Level + 8 + 1.055 ^ (Level ^ 1.085)) * 990 * 1.5
    X-Guardian Daily Gold: (1.055 ^ Level + 8 + 1.055 ^ (floor(Level ^ 1.085))) * 330 * 1.5
    Source.

    In each of the above formulae, 'Level' refers to the Player's current level. For example, a Level 150 Guardian could expect to earn:

    quote:

    Daily Gold: (1.055 ^ 150 [Level] + 8 + 1.055 ^ (150 [Level] ^ 1.085)) * 300 * 1.5 = 99,799,519 Gold




    [8.3] Monster Encounters
    While adventuring, you are expected to encounter monsters within the following level brackets:

    quote:

    Single Monsters
    Min Monster Level: floor(0.75 * Level) - 5
    Max Monster Level: floor(1.15 * Level) + 1

    Pack Monsters
    Min Monster Level: floor(0.75 * (Level - 20))
    Max Monster Level: Level - 18
    Source.

    The 'Level' in these formulae refer to the Player's Level. Thus, a Level 120 Player will encounter monsters in the following level ranges:

    quote:

    Single Monsters
    Min Monster Level: floor(0.75 * 120 [Level]) - 5 = 85
    Max Monster Level: floor(1.15 * 120 [Level]) + 1 = 139

    Pack Monsters
    Min Monster Level: floor(0.75 * (120 [Level] - 20)) = 75
    Max Monster Level: 120 [Level] - 18 = 102




    [8.4] Monster Experience and Gold Rewards
    Standard Monster Gold and Experience rewards are calculated as follows:

    quote:

    Gold: round(GoldLean * (1.055 ^ MonsterLevel + 8 + 1.055 ^ (MonsterLevel ^ 1.085)))
    Experience: round(2 * 3 * (1.055 ^ MonsterLevel + 8 + 1.055 ^ (MonsterLevel ^ 1.085)) - 3 * Gold)
    Souce.

    'GoldLean' in this formula represents a value of between 0 and 2. Some monsters reward the player with a greater quantity of gold than experience, while others more experience than gold. For example, a Level 150 monster with a 'GoldLean' of 1 can be expected to provide:

    quote:

    Gold: round(1 [GoldLean] * (1.055 ^ 150 [MonsterLevel] + 8 + 1.055 ^ (150 [MonsterLevel] ^ 1.085))) = 221,777
    Experience: round(2 * 3 * (1.055 ^ 150 [MonsterLevel] + 8 + 1.055^(150 [MonsterLevel] ^ 1.085)) - 3 * 221,777 [Gold]) = 665,329

    However, some monsters appear in packs. Monsters also have a hidden modifier called 'MonsterPower', which typically ranges between 0.5 and 4, and affects their damage and HP. Boss monsters typically have a higher MonsterPower value. Both of these mechanisms also influence how much you receive in terms of Gold and Experience rewards. When dealing with one of these monsters, you should modify the above results using the following formula:

    quote:

    ((MonsterPower ^ 2 + 15 * MonsterPower - 1) / 15) * ( Pack# ^ 1.75)
    Modified from Souce.

    You can obtain 'MonsterPower' from the monster's Encylopedia entry. 'Pack#' simply refers to the number of monsters in the pack. For example, suppose that the Level 150 monster was a pack of 4 Frogzards. Frogzards have a Power of 0.75 (given that most standard monsters have a power 1 of, this makes Frogzards especially weak). The above Gold reward should be modified as follows:

    quote:

    Gold: 221,777 [Gold] * ((0.75 [MonsterPower] ^ 2 + 15 * 0.75 [MonsterPower] - 1) / 15) * ( 4 [Pack#] ^ 1.75) = 1,807,797

    In practice, you will never fight 4 Level 150 Frogzards at once (see Section 8.3), but this is the amount of Gold you would be expected to earn.



    [8.5] Equipment Prices
    The cost of a standard item at any given Level is worth:
    quote:

    Cost: (3.5 * 1.11 ^ ItemLevel + 26.5) * EquipmentType (* 1.1 if Mastercraft)
    Where:
    EquipmentType Value:
    Weapon/Shield/Spell/Skill: 1
    Armour: 2
    Pet: 0.5
    Misc: 0.25
    Source.

    As shown in the formula, if an item is Mastercraft (i.e., if the item is 10% more expensive to make it 5% more powerful), then you must multiply the cost by *1.1.

    For example, a Level 150 Mastercraft armour can be expected to cost:
    quote:

    Cost: (3.5 * 1.11 ^ 150 [Armour's level] + 26.5) * 2 [Equipment Type modifier] * 1.1 [Item is Mastercraft] = 48,410,333 Gold

    If an item compresses at least one other item within it (e.g., if an armour has a skill), then you must cost in the value of ALL compressed items at Mastercraft values.



    [8.6] Potions
    Drinking an HP potion is expected to heal you based on the following formula:
    quote:

    HP Healed: 2 * 0.85 * ((10.5 + 1.125 * Level + 0.0075 * Level ^ 2) + (1 + 0.066 * Level) * END / 16)
    Source.

    Please replace END/16 in the above formula with END/16 + LUK*3/16 if calculating for a lucky strike, which occurs 10% of the time. Thus, a potion drunk by a Level 150 player with 0 END can be expected to heal:

    quote:

    HP Healed: 2 * 0.85 * ((10.5 + 1.125 * 150 [Level] + 0.0075 * 150 [Level] ^ 2) + (1 + 0.066 * 150 [Level]) * 0 [END] / 16) = 592 HP

    This represents approximately 200% Melee in HP.

    Drinking an MP potion is expected to heal you based on the following formula:
    quote:

    MP Healed: 2 * 0.8 * (38.1 + 2.3375 * Level + 0.01125 * Level ^ 2)
    Source.

    Thus, a Level 130 player can expect to heal:

    quote:

    MP Healed: 2 * 0.8 * (38.1 + 2.3375 * 130 [Level] + 0.01125 * 130 [Level] ^ 2) = 851 MP

    This represents approximately 200% Melee in MP. INT plays no role in the amount of MP healed, though players without INT will lack the sufficient MP storage to fully benefit from MP potions. MP potions cannot lucky strike.

    Guardians heal 105% of the amounts listed above. Potions fall entirely outside of the Player Turn Model.



    [8.7] Damage Modifiers and Penalties
    There are a number of situations in AQ where additional modifiers are applied to the effects of player items to either compensate them for certain restrictions, or penalise them for additional versatility. Below is a non-exhaustive list of these modifiers, as well as when they apply:

  • HP:MP:SP Conversion: As discussed in Section 2, SP:HP:MP is converted in a 1.125:1:1.5 ratio. This also extends to attacks; if you target monster MP instead of HP, your attack with receive a *1.5 modifier.
  • Magic: As discussed in Section 1, Mages pay 25% weapon damage for access to MP and Spells. This means a number of items deal *0.75 damage when applying to Magic weapons.
  • Mastercraft Bonus: Mastercraft items cost 10% more Gold than non-Mastercraft items, but are 5% more powerful. This Mastercraft can be used in a variety of ways, the simplest is *1.05 damage, but many other more creative uses also exist.
  • No-proc Bonus: Weapons that lack a weapon special deal *1.08 damage. Some weapons (e.g., bows) have a 100% chance of activating a weapon special (i.e. '100-proc'), but lack a 'true' special. These weapons instead deal *1.1 damage.
  • Triggers: Trigger effects (e.g., The Dragon Blade) deal *2 the amount originally invested in the trigger. E.g., investing 5% Melee into a trigger versus Plant monsters will create a 5% downtrigger and a 5*2 = 10% uptrigger. Sometimes, the player can directly control whether the trigger conditions are reached (e.g., Mack-a-lot Buckler requires that the player invest in CHA). In these conditions, the trigger is instead worth *1.5 the amount originally invested. The downtrigger is also removed when the item is triggered (e.g., *0.95 downtrigger, *1.1 uptrigger (-5% normally, +10% when triggered).
  • Allied Elements: Sometimes, an attack deals damage with two different allied elements (e.g., Lunar Spirit Cat, which deals Darkness and Water damage). In these cases, either the attack will deal *1.05 damage, or one element will deal *1.1 damage.
  • Neutral Elements: Sometimes, an attack deals damage with two different elements that are neutrally aligned (e.g., Jacques Fury, which deals Earth and Water damage). In these cases, either the attack will deal *1.1 damage, or one element will deal *1.2 damage.
  • Poor Elements: Sometimes, an attack will deal damage with two different elements that are poorly aligned (e.g., Solar Spirit Cat, which deals Earth and Light damage). In these cases, either the attack will deal *1.155 damage, or one element will deal *1.31 damage.
  • Opposing Elements: Sometimes, an attack will deal damage with two opposing elements (e.g., Umbral naginata, which deals Light and Darkness damage). In these cases, either the attack will deal *1.2 damage, or one element will deal *1.4 damage.
  • All Elements: Sometimes, an attack will deal any one (or all) of the 8 standard elements (e.g., Eye of Chaos. These attacks will deal *132/108 damage. On rare occasions, this might also include the non-standard elements Harm and Heal (e.g., Mana Golem. In this situation, the attack will deal *130/90 damage instead. If the element is randomly chosen at the start of battle, remaining fixed thereafter (e.g., Chaos Armour), it will deal *1.1 damage.
  • Twin Element Seek: If an attack seeks between two different elements (e.g., Embrace the Shadows, it will deal *0.95 damage.
  • Always Useful: An item effect is considered 'always useful' if it is equally effective (but crucially NOT optimal) against any monster. Typically, this refers to items that deal either Harm or Heal element damage, which always strike against either -100 or 100% elemental modifiers. If an item effect is considered always useful, it will have a *0.9 penalty applied to its effectiveness.
  • Omni-Elemental: An item effect is considered 'omni-elemental' if it optimally used against any monster. For example, Ultimate Dragon Scythe of Elements is omni-elemental because it can use any of the 8 standard elements, meaning it will always be able to strike against the monster's weakest element. This items receive a *0.6 penalty to their effectiveness.
  • Resistance Scrambling: Scrambling Resistances costs 5% Melee.
  • Autohit: If an attack bypasses the accuracy roll discussed in Section 4 and automatically hits, it will deal *0.85 damage.
  • BtH lean: As discussed in Section 4, but worth reiterating here, if a player attack has a BtH lean, it will gain +[x] BtH and deal *85 / 85 + [x] damage. For example, a -15 BtH lean would deal 85 / 85 - 15 = *1.1 damage.
  • Monster Turns: As shown repeatedly in Section 5, monster turns are worth 140% melee, the sum of player actions, pet attacks, and SP. This means it is often necessary to apply a /1.4 modifier to effectiveness when affecting monster actions (e.g., you intend to Paralyse the monster).
  • Quickcast: Sometimes, you are able to use a skill or spell without it taking up your turn. However, this poses a problem, because spells usually gain a portion of their damage from SP/MP, with the rest from player turn damage (see Section 1 for additional details). This means a penalty is necessary to exclude the latter component: Quickcast spells deal *1.25/2 damage to remove the 75% Melee normally obtained from Player Damage when casting a normal spell.
  • Status Clearance: Clearing a negative status is worth 12.5% Melee on items that clear one specific status, and 50% melee when a generic multi-status clearance item is used (e.g., Wingweaver Aegis).

    It is also important to note that these penalties can take a different form depending on the item. For example, the omni-elemental penalty sometimes applies as a *0.6 damage modifier (as in the case of Ultimate Dragon Scythe of Elements), but can also manifest as *1.4 resource cost or *0.8 damage and *1.2 resource cost. It is also important to know that these modifiers are far from consistently applied. This is especially the case with the 'Always Useful' and 'Omni-elemental' penalties; the line between these two mechanisms is often blurred.

    Most of these penalties are stated on the Master List of Game Formulae, though some have since been updated.




    Acknowledgements
    The information presented in this guide would not have been possible to compile without the long-term research efforts of Dreiko Shadrack, gavers, Lv1000, Mananite, and RobynJoanne. My job was also made much easier by the contributors of the Master List of Game Formulae, who diligently collated many of the game's core formulae. As such, credit should also be given to them: Kaelin, Aelthai, Astral, Cloudxx, Everest, Neon, Orion of the Stars, and Scakk. A special thanks must be made to Ianthe and Kamui for consistently providing updated formulae (as well as for implementing them in the first place!). I thank Lorekeeper for answering/passing on specific questions. Finally, I must also thank Dardiel and LUPUL LUNATIC for helping to catch errors.




    Please feel free to contact me if you believe you have found an error in this guide, as I wish to keep the information in it as accurate as possible.




  • Page: [1]

    Valid CSS!




    Forum Software © ASPPlayground.NET Advanced Edition
    0.15625