Jump to content


Photo

Cataclysm Mage Simulators and Formulators


  • This topic is locked This topic is locked
443 replies to this topic

#441 fateswarm

fateswarm

    Von Kaiser

  • Members
  • 56 posts

Posted 21 February 2012 - 07:16 PM

Is there a statement for the current size of Ignite in SimCraft? The application would be to test results with a Combustion under a minimal Ignite size.

#442 Kavan

Kavan

    Bald Bull

  • Members
  • 1018 posts

Posted 21 February 2012 - 07:51 PM

There isn't currently, but there is an issue open already on the topic (Issue 1136 - simulationcraft - [Question/Request] Ignite tick damage - World of Warcraft DPS Simulator - Google Project Hosting). If it was just a question of the current value of ignite on the target that wouldn't be hard to do. The problem comes from the fact that it would have to behave more in the react style since you can't know in advance what the tick will be (at least until we create better prediction models). Still doable, but would require a bit more bookkeeping.

#443 angayelle

angayelle

    Piston Honda

  • Members
  • 117 posts

Posted 12 March 2012 - 06:04 PM

As posted in the Fire Compendium thread, here is the LUA function describing the combustion Tick predicted as used in CombustionHelper. I'm not the original formula creator (original thread here), but I made the LUA version.

function CombuDamagePredicter ()

local combuhasteplateau = {{0,10}, -- haste rating, tick number
                            {639,11},
                            {1922,12},
                            {3212,13},
                            {4488,14},
                            {5767,15},
                            {7033,16},
                            {8309,17},
                            {9602,18},
                            {10887,19},
                            {12182,20}}

        combufirepower = 1 + (select(5,GetTalentInfo(2,5))/100)
        combucriticalmass = 1 + ((select(5,GetTalentInfo(2,20))*5)/100)

	if select(1,UnitAura("target",pyro1,nil,"HARMFUL")) or select(1,UnitAura("target",pyro2,nil,"HARMFUL")) then
		combupyrodps = (164 + (0.180*GetSpellBonusDamage(3)))*(combufirepower)*(1.25)*((0.00015618*GetCombatRating(26)) + 1.224)
	else combupyrodps = 0
	end
	
	if select(1,UnitAura("target","Living Bomb",nil,"HARMFUL")) then
		combulbdps = (234 + (0.258*GetSpellBonusDamage(3)))*(combufirepower)*(1.25)*(combucriticalmass)*((0.00015618*GetCombatRating(26)) + 1.224)
	else combulbdps = 0
	end
	
	combucurrenthaste = UnitSpellHaste("player") * 128.05701
	
	for i = 2,#combuhasteplateau do
		
		if combucurrenthaste < (combuhasteplateau[i])[1] then
			combuhastetick = (combuhasteplateau[i-1])[2]
			break
		end
	end
	
	combuexpectedtickdmg = ceil(combupyrodps/3 + combulbdps/3 + combuigndamage/2)
	-- the variable combuigndamage need to be stored from the combat log event so it can included in the calculation
	
	return format("Tick : %.0f x %0.f",combuexpectedtickdmg,combuhastetick)

end

As you can see, we no longer take in account the DPS of the dots, only their power, as haste is only used to calculate the number of Combustion ticks.

Of course to get the whole Combustion spell prediction, we'll need to add the front damage of Combustion and simulate the crit chance for each of the portion of damage (front + ticks). I haven't included it into this formula as the way I'm averaging crit damage is not the best possible.

#444 Baruk

Baruk

    Von Kaiser

  • Members
  • 63 posts

Posted 28 January 2014 - 09:19 AM

I recently used simcraft again (for the first time in ages).

 

I noticed that the "pyroblst.dot.ticking" condition is still included in

the condition for combustion. Can any of you guys enlighten me why?

 

edit: sorry for digging up this rather old thread, there wasn't a new one to use.


Edited by Baruk, 28 January 2014 - 12:18 PM.

Per Aspera ad Astra




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users