Elitist Jerks
Register
Blogs
Forums


Go Back   Elitist Jerks » Public Discussion » Public Discussion

Reply
 
LinkBack Thread Tools
Old 07/26/06, 12:51 PM   #1
Lurchington
King Hippo
 
Lurchington's Avatar
 
Tauren Druid
 
Mannoroth
first, as a primer, I'm using this as an inspiration and baseline for this procedure:

http://www.ctmod.net/calculator.ct


Goal:
Using the calculator, and implementing it's functionality in a spreadsheet, I'm trying to remove the necessity of specifying both time spent under the FSR, and the length of the fight. The reasoning for this goal: the numbers aren't valid unless the the time spent in FSR is accurate.

An example:
http://tinyurl.com/r9lxs

this says, for the values I specified, that for a fight length of 50 seconds at 50% of the time under the FSR, I can chain-cast a talented Greater Heal rank 1, and not run out of mana.

That makes no sense, as chain casting means you'll be under the FSR the entire time.

There should be a way to specify the fight length, then use math to find the optimal FSR % for each spell/rank. Instead of giving the FSR a priori

Key Parameters:

Unknown Variables Based on Fight:
Time of fight
Time Spent of FSR

Known Variables Based on Gear:
Spirit
MP5
Percentage of Normal Regeneration under FSR
Mana Pool

Derived Values:

Mana Regenerated Per Second - Based on your In FSR regen, your out of FSR regen, and the percentage of each
Mana to Spend Per Second - Given a starting mana pool, accounts for the fact that you can cast more than you regen given a finite fight and sufficiently large mana pool
"Castable Every" - How often you can cast a given spell, based on the Mana to spend budget.

Formulas for Derived Values

Contribution of spirit to regen/tick (for priest, rounded 12.5 to match ctmod.net value): (13 + spirit/4)

NonFSRTotalpTick = ( 13 + spirit/4) + (.4)*(MP5)
FSRTotalpTick = (FSRRegenerationPct)*( 13 + spirit/4)/100 + (.4)*(MP5)

-
ManaRegennedPerSec = (FSRpct)*FSRTotalpTick/100 + (100-FSRpct)*NonFSRTotalpTick/100
-

-
ManaToSpendPerSec = (ManaRegennedPerSec * FightLength + ManaPool)/FightLength
-

-

If (HealMana/ManaToSpendPerSec)>HealCastTime:
CastableEvery=HealMana/ManaToSpendPerSec
Else:
CastableEvery=HealCastTime
-

(accounts for the fact you can't cast faster than the spell time, even if you have the mana for it)


Restatement of Goal
in terms of the formulas:

I want to be able to specify FightLength, and based on that, find the correct FSRpct to go out of mana at that time.

A helper value I've calculated using for this is TrueFSRpct:

If (CastableEvery - 5) > 0:
TimeNotInFSR = CastableEvery - 5
Else:
TimeNotInFSR = 0

-
TrueFSRpct = 100*5/(5+TimeNotInFSR)
-

I guess I want a mathemathical or Excel-capable procedural way* to make:

FSRpct = TrueFSRpct



* Toying with the goal seek function, but loathe to try it if there's a math solution.

So math wizards? where do I start?

Offline
Reply With Quote
Old 07/26/06, 1:09 PM   #2
Lurchington
King Hippo
 
Lurchington's Avatar
 
Tauren Druid
 
Mannoroth
For additional resources:

http://www.lurchington.com/misc/prie...r_FSR_CALC.xls

the macro is for autosorting columns in the scenario tab, you can disable macros if you're paranoid.

in the scenario tab, I'm trying to accurately maximize the Sustainable HPS column (eg: cell F72), by making sure the FSR(%) I specify (eg: cell G72) match up to the actual time in FSR(%) (eg: cell J72)

Offline
Reply With Quote
Old 07/26/06, 3:11 PM   #3
Erongg
Great Tiger
 
Erongg's Avatar
 
Lorentz
Troll Shaman
 
No WoW Account
So given a certain gear set, you want to be able to input a fight length and a spell(rank) and have it tell you how often you must stay in/out of the FSR to be able to cast that whole time? That is, it will tell you how often you can cast the spell to end up at zero mana at the end of the fight?


Offline
Reply With Quote
Old 07/26/06, 3:13 PM   #4
Lurchington
King Hippo
 
Lurchington's Avatar
 
Tauren Druid
 
Mannoroth
That seems to cover what I'm looking for.

edit: as a general overview, I'm trying to modify ctmod.net's calculator to just take 1 parameter (fight length) and have it take into account the accurate FSR for each spell.

Offline
Reply With Quote
Old 07/26/06, 3:44 PM   #5
Erongg
Great Tiger
 
Erongg's Avatar
 
Lorentz
Troll Shaman
 
No WoW Account
Ok, let me see if this helps or makes sense:

Equation 1: time to run oom = (total mana pool/manacost per time) + (total regen/manacost per time)

Further breaking down one of the expressions in Equation 1:

total regen = regen/sec * time to run oom

Further breaking that down:

regen/sec

[top] (FSRpct)*FSRTotalpTick/100 + (100-FSRpct)*NonFSRTotalpTick/100

That shows the logic of the equations I'm going to use, and now I'm going to assign those things variables:

T


time to run oom (or fightlength)
M = total mana pool, or your initial mana
C = mana cost per sec
R = total mana regen per sec
Ri = regen in FSR
Ro = regen out of FSR
F = %time in FSR

Then Equation 1, restated with these variables, is:
T = (M/C) + (R*T)/C

Substituting R = F*Ri + (1-F)*Ro, you can solve for F in terms of T, or you can solve for percentage-in-FSR based on fight length.

F = (C - (M/T) - Ro)/(Ri - Ro)

I think this does what you were looking for?


Offline
Reply With Quote
Old 07/26/06, 3:46 PM   #6
Lord BEEF
Soda Popinski
 
Lord BEEF's Avatar
 
Tauren Druid
 
Mal'Ganis
I can't remember where right this second but someone linked a mod that actually tracks how often you're under the five second rule in actual fights, you may want to try that to get some real world numbers to punch in

Check out my friend's bitchin' Lord of the Rings Art

Offline
Reply With Quote
Old 07/26/06, 3:49 PM   #7
Lurchington
King Hippo
 
Lurchington's Avatar
 
Tauren Druid
 
Mannoroth
well, busting out the high school algebra here for this:

FSR = 500 / (5+CastableEvery-5)
FSR = 500 / CastableEvery
FSR = 500 / (HealMana / ManatoSpendpSec)
FSR = (500 / HealMana) * ManatoSpendpSec
set (500 / HealMana) to ConA since this is a constant based on heal rank

FSR = ConA * (ManaRegpSec * FL + Mana)/FL (FL is FightLength)
FSR * FL = ConA * (ManaRegpSec*FL + Mana)


ConB = FSRregen/100
ConC= nonFSRregen/100

FSR * FL = ConA * (( FSR*ConB + (100-FSR)*ConC)/2*FL+Mana)
FSR * FL / ConA = (FSR*ConB + (100-FSR)*ConC)/2*FL+Mana
(2/ConA)*FSR = FSR*ConB+(100-FSR)*ConC+ 2*Mana/FL

(2/ConA)*FSR = FSR*ConB+100*ConC-ConC*FSR+ 2*Mana/FL

(2/ConA)*FSR - FSR*ConB + ConC*FSR = 100*ConC + 2*Mana/FL

FSR( 2/ConA - ConB + ConC ) = 100*ConC + 2*Mana/FL

FSR = (100*ConC + 2*Mana/FL)/( 2/ConA - ConB + ConC )

meaning that my only independent variable is FL (FightLength)

any mistakes here, I'm at work so I can't just plug it in :(

Offline
Reply With Quote
Old 07/26/06, 3:52 PM   #8
Lurchington
King Hippo
 
Lurchington's Avatar
 
Tauren Druid
 
Mannoroth
Thanks for the reply. It came while I was typing mine up :)

Originally Posted by Lord BEEF
I can't remember where right this second but someone linked a mod that actually tracks how often you're under the five second rule in actual fights, you may want to try that to get some real world numbers to punch in
I believe it's muse. I've used to get an overview of my FSR time for specific fights. :)

edit: after reviewing Erongg:

I'll use both of ours in conjuction with my spreadsheet a bit later on tonight when I have time to play with it. Again, thanks

I suspect we're both there, and I'll just handle specific cases where the FSR time is 100. Since that's where it breaks some of these equations.

Offline
Reply With Quote
Old 07/26/06, 4:06 PM   #9
hamlet_the_lesser
King Hippo
 
Shaman
 
Sargeras
we have a guy that is learning lua and this is his first project(monitoring time in FSR that is).


Offline
Reply With Quote
Old 07/26/06, 4:28 PM   #10
Humbaba
Mr. Sandman
 
Humbaba's Avatar
 
Humbalo
Tauren Druid
 
No WoW Account
Five second rule tracker is the mod that got linked yesterday. FSRT.

United States Offline
Reply With Quote
Old 07/26/06, 4:30 PM   #11
Lord BEEF
Soda Popinski
 
Lord BEEF's Avatar
 
Tauren Druid
 
Mal'Ganis
Originally Posted by Humbaba
Five second rule tracker is the mod that got linked yesterday. FSRT.
Ah thank you. I'll have to toy with this myself. Should give me a better way to evaluate gear and enchant choices, especially since I tend to innervate mages most often these days.

Check out my friend's bitchin' Lord of the Rings Art

Offline
Reply With Quote
Old 07/26/06, 5:08 PM   #12
Lurchington
King Hippo
 
Lurchington's Avatar
 
Tauren Druid
 
Mannoroth
this is what I finally went with:

FSR = ((100*nonFSR_regenpertick)+(200*ManaPool)/FightLength) / (.4*ManaPerHeal - FSR_regenpertick + FSR_regenpertick)

this seems to work out ok, and works well with my variables. Thanks for the push in the right direction Erongg :)

Offline
Reply With Quote
Reply

Go Back   Elitist Jerks » Public Discussion » Public Discussion

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
[HUNTER]Scorpid Sting, a way to really calculate/see effects? soulesschild Class Mechanics 50 09/22/07 1:27 PM
[Math] Proc Math The Grog Class Mechanics 3 06/21/07 4:49 PM
Far Too Much Time Spent On Wowhead: Lvl 70 Preraid Tank Plate. Lavode Public Discussion 83 04/17/07 7:06 PM
Naxx encounters by gold spent? Praetorian Public Discussion 22 08/16/06 6:42 AM
How to calculate hunter ranged weapon normalization exactly? Sienna Public Discussion 5 07/21/06 5:27 PM