Project 1999

Go Back   Project 1999 > Class Discussions > Priests

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #11  
Old 01-29-2024, 04:06 PM
bcbrown bcbrown is offline
Fire Giant


Join Date: Jul 2022
Location: Kedge Keep
Posts: 762
Default

At 170 Dex you get 1.5 PPM. At 47 delay, that means a swing every 4.7 seconds, or 12.76 swings/minute. At 1.5 PPM, that's 1.5 procs per 12.76 swings, or a proc rate of 11.75% for each swing. I know very little about both weapon delay and proc calculations, so please correct me if I'm wrong here.

JBB has an 8 second cast, and with 132 seconds per fight, that's 16 casts. Let's assume you take a swing before first cast, and lets say you have excellent reflexes, and click JBB almost simultaneously with swinging. Note I see you've fiddled some more with the numbers since I did this calculation; I can update it if you'd like.

Let t=0 be when the mob has been pulled, slowed, and first engaged in melee. A proc here will last 132 seconds, or 22 ticks. A proc here will do 40 + 24 * 22 or 568 damage.
At t=8, second chance to proc. There's (132 - 8) / 6 = 20 (rounded down) ticks left. If there's been no prior proc, a proc is worth 40 + 24 * 20 = 520. If there's a prior proc, only the DD component counts: 40 damage.
So we can build a table:

Now, what are the probabilities of each possible outcome?
At t=0, it's simple: there's a 11.75% chance of a proc.
At t=8, the chance of a proc is 11.75%. There's a 11.75% chance there was a proc at t=0, and an 88.25% chance there was no prior proc.
At t=16, we get to the real meat of the problem. To calculate the chance of a prior proc, there's an 11.75% chance of a proc at t=0, and a 11.75% chance of a proc at t=8, but these are independent possibilities.

1) The chance of a proc at 0 and 8 is 11.75 * 11.75.
2) The chance of a proc at 0 and not 8 is 11.75 * 88.25.
3) The chance of no proc at 0 and a proc at 8 is 88.25 * 11.75
4) The chance of no proc at 0 and no proc at 8 is 88.25 * 88.25

This is a classic binomial distribution. You can also think of this as flipping a coin every 8 seconds, where the chance of heads is 11.75% and the chance of tails is 88.25%.

The relevant formula is the probability mass function: https://en.wikipedia.org/wiki/Binomi...on#Definitions

The vertical (n k) notation is spoken as "n choose k" or sometimes written as nCk and described in more detail here: https://en.wikipedia.org/wiki/Binomial_coefficient

To apply this to our problem, we can use this formula to calculate the probability of no prior proc, i.e. setting k=0

(n choose 0) * p^0 * (1-p)^(n-0)

(n choose 0) is always 1, so this simplifies to (1 - p)^n

So at each 8 second interval (the variable n), the damage of a proc will be
44 * (1 - (1 - p)^n) + (44 + 24 * (132 - 8*n) / 6) * (1 - p)^n

p is the chance of a proc, or 0.1175

Over a 132 second fight, there's 16 casts, so we need to sum this over n = 0 to 15 inclusive. Let's implement this in Python; perhaps that will be easier to follow:
Code:
p = 0.1175

def no_prior(n, fight_length = 132):
    """" 44 dd plus 24 per tick remaining in the fight """
    from math import floor
    ticks_remaining = floor((fight_length - 8 * n) / 6)
    return 44 + 24 * ticks_remaining

def prior(n):
    """" if there's been a prior proc, only the dd matters """
    return 44

expected_damage = 0
for n in range(0, 16):
    prior_probability = pow(1 - p, n)
    expected_damage_this_interval = prior(n) * prior_probability + no_prior(n) * (1 - prior_probability)
    expected_damage += expected_damage_this_interval

print(expected_damage)
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 06:41 PM.


Everquest is a registered trademark of Daybreak Game Company LLC.
Project 1999 is not associated or affiliated in any way with Daybreak Game Company LLC.
Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.