Results 1 to 10 of 99

Hybrid View

  1. #1
    Player
    Ultimatecalibur's Avatar
    Join Date
    Jan 2014
    Posts
    2,737
    Character
    Kakita Ucalibur
    World
    Siren
    Main Class
    Paladin Lv 86
    Its more about when the buff is applied and triggers.

    An IF THEN ELSE chain would do the following when checking an attack*:

    If Awareness = True THEN [Crit = 0] ELSE[
    If RawIntuition = True AND Position = Flank or Rear THEN [Crit = 255] ELSE[
    Crit = "Crit Formula"]

    If RNG < Crit THEN [Critical Hit] ELSE [

    If Shelltron = True THEN [Block = 255, Recover X MP, Remove Shelltron] ELSE[
    IF Bullwark = True THEN [Block = "Block formula"+153]]

    If RNG < Block and Position = Front THEN [Blocked Hit] ELSE [

    If KeenFlurry = True THEN [Parry = "Parry formula" + 204] ELSE [If DarkDance = True THEN [Parry = "Parry formula" + 51]]

    If RNG < Parry and Position = Front THEN [Parried Hit] ELSE [HIT]]]]

    *It has been ages since I actually last programed as so this should not be taken as "it must be this way" its an illustration of a possible way to do it.

    In your single roll model Shelltron would either need two steps (one before the roll to modify the table and one after to proc off the block) in order to trigger or would always trigger on the first physical attack after it was used.

    Quote Originally Posted by Zfz
    I'm saying that in a multi-roll model, the individual probabilities do not equal to the actual in-game result.

    In your specific multi-roll model, a parry rate of 10% (let's again ignore block) is actually the event of "hit && not crit && parry", and using the above example parameters of 85% hit rate, 5% crit rate, this event has the probability of 0.85*0.95*0.1=0.08075, i.e. only 8.075% of the swings taken at you will end up as parries. Meaning when we take our data, with a 10% parry rate on our character info, our data will show about 8% parry rate instead. That is why it was suggested that we remove the misses and the crits when calculating the parry rate from the data.
    We are only seeing the final result (was an attack parried or not) and only can see one of the variables. There is nothing telling us X Parry value = 10% Parry. All we know and have been told is that a Program uses our Parry stat and character level and a Random number to determine if we have parried or not. The X% parry numbers are percentages based on parsed data. Nothing in game tells us our Percentage Block Rate or Percentage Parry Rate.
    (0)
    Last edited by Ultimatecalibur; 07-20-2015 at 07:31 PM.

  2. #2
    Player
    Zfz's Avatar
    Join Date
    Aug 2013
    Posts
    2,371
    Character
    Celenir Istarkh
    World
    Atomos
    Main Class
    Red Mage Lv 90
    Quote Originally Posted by Ultimatecalibur View Post
    Its more about when the buff is applied and triggers.
    Which does not have to be tied into combat event resolution.

    Let me just ask you one question on the pseudo-code you presented. In these three statements:
    Code:
    If RNG < Crit THEN
    If RNG < Block and Position = Front THEN
    If RNG < Parry and Position = Front THEN
    are all three "RNG" the one and the same random number? Or do they represent drawing 3 different random numbers?

    If you draw one random number, then you have been talking about the one-roll attack table model all the time. And if you re-draw a new random number when you check for each of Crit/Block/Parry, then you are talking about a multi-roll model.

    The point I'm trying to make, is that having multiple procs and drops from the same combat action do not necessarily dictate that the different outcomes of the same combat action must be multi-roll.

    Quote Originally Posted by Ultimatecalibur View Post
    We are only seeing the final result (was an attack parried or not) and only can see one of the variables. There is nothing telling us X Parry value = 10% Parry. All we know and have been told is that a Program uses our Parry stat and character level and a Random number to determine if we have parried or not. The X% parry numbers are percentages based on parsed data. Nothing in game tells us our Percentage Block Rate or Percentage Parry Rate.
    A multi-roll system will mean that every 1% rate increase of stats for a higher-priority outcome will diminish the value of 1% rate increase of stats for a lower-priority outcome.

    For example, suppose 15% miss > 5% crit > 20% block > 10% parry > remainder being regular hit. Suppose that is the probabilities you end up with your gear. We don't know these probabilities, but we know the amount of stats we have. Taking in-game data, we will see:
    • in a multi-roll system, 0.85*0.95*0.8*0.1=0.0646=6.46% of the swings end up being parry;
    • in a single-roll system, 10% of the swings end up being parry.
    Now increase block from 20% to 30%, and again taking in-game data, we will see:
    • in a multi-roll system, 0.85*0.95*0.7*0.1=0.056525=5.65% of the swings end up being parry;
    • in a single-roll system, still 10% of the swings end up being parry.
    Hence in a multi-roll system, you want to maximize stats that contribute to a higher priority mitigation outcome (in this case, Block is more valuable than Parry), unless the mitigation from a lower priority outcome is extremely strong (for example if parry was 50% mitigation, then you would want to exchange as much of your block rate as possible for as much parry as possible). In a single-roll system, all mitigation outcomes grow independent of each other until you have enough of the high-priority outcomes to push the low-priority ones off the attack table.

    (As an aside, that's what tanks in World of Warcraft once was able to do: to push regular hits off the attack table so that 100% of all hits are mitigated.)

    This is why it is important to investigate the combat resolution system. It will change the relative values of the defensive stats and how you gear your tank.
    (0)
    Last edited by Zfz; 07-20-2015 at 09:01 PM.
    “There is nothing noble in being superior to your fellow man; true nobility is being superior to your former self.”
    ― Ernest Hemingway