Here is an Assassination Rogue PVE, working on a PVP in there as well also contains the combat rotations, still need to finalize the shiv on enrage and the deadly throw on runners.
Code:
<?xml version="1.0" encoding="utf-8" ?><ROGUE><Ability><Name>Sinister Strike</Name><Default>false</Default><SpellID>1752</SpellID><Actions></Actions><Lua>local sinisterstrikeCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
if sinisterstrikeCP &lt;= 3 then
return true
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>SnD</Name><Default>false</Default><SpellID>5171</SpellID><Actions></Actions><Lua>local sliceanddice, _, _, _, _, _, sliceanddicetimer = UnitBuffID(&quot;player&quot;, 5171)
if sliceanddice ~= nil then
if sliceanddicetimer - GetTime() &lt; 2 then
return true
end
else
return true
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Eviscerate</Name><Default>false</Default><SpellID>2098</SpellID><Actions></Actions><Lua>local eviscerateCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
if eviscerateCP == 5 then
return true
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Revealing Strike</Name><Default>false</Default><SpellID>84617</SpellID><Actions></Actions><Lua>local revealingstrike, _, _, _, _, _, revealingstriketimer = UnitDebuffID(&quot;target&quot;, 84617)
if revealingstrike ~= nil then
if revealingstrike - GetTime() &gt; 1 then
return true
end
else
return true
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Recuperate</Name><Default>false</Default><SpellID>73651</SpellID><Actions></Actions><Lua>local _,_,_,recuperate = UnitBuffID(&quot;player&quot;, 73651)
local recuperateCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
local health = UnitHealth(&quot;player&quot;) / UnitHealthMax(&quot;player&quot;) * 100
if recuperate ~= nil then
return false
else
if health &lt; 95 then
if recuperateCP &gt;= 2 then
return true
end
end
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>WOTF</Name><Default>false</Default><SpellID>7744</SpellID><Actions></Actions><Lua>local fear, _, _, _, _, _, feartimer = UnitDebuffID(&quot;player&quot;, 5782)
local willoftheforsakencooldown = (willoftheforsakenstart + willoftheforsakenduration - GetTime())
if willoftheforsakencooldown &gt; 0 then
return false
else
if fear ~= nil then
if fear - GetTime() &gt; 1 then
return true
end
else
return true
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Rupture</Name><Default>false</Default><SpellID>1943</SpellID><Actions></Actions><Lua>local rupture, _, _, _, _, _, rupturetimer = UnitDebuffID(&quot;target&quot;, 1943, &quot;PLAYER&quot;)
local ruptureCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
if rupture ~= nil then
if ruptureCP &gt;= 4 then
if rupturetimer - GetTime() &lt; 1 then
return true
end
end
else
return true
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Mutilate</Name><Default>false</Default><SpellID>1329</SpellID><Actions></Actions><Lua>local mutilateCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
local mutilatehealth = 100 * UnitHealth(&quot;target&quot;) / UnitHealthMax(&quot;target&quot;)
if mutilateCP &lt;= 3 then
if mutilatehealth &gt;= 35 then
return true
end
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Backstab</Name><Default>false</Default><SpellID>53</SpellID><Actions></Actions><Lua>local backstabCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
local backstabhealth = 100 * UnitHealth(&quot;target&quot;) / UnitHealthMax(&quot;target&quot;)
if backstabCP &lt;= 4 then
if backstabhealth &lt;= 35 then
return true
end
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Envenom mutilate</Name><Default>false</Default><SpellID>32645</SpellID><Actions></Actions><Lua>local envenomCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
local envenomhealth = 100 * UnitHealth(&quot;target&quot;) / UnitHealthMax(&quot;target&quot;)
if envenomCP &gt;= 4 then
if envenomhealth &gt;= 35 then
return true
end
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Envenom backstab</Name><Default>false</Default><SpellID>32645</SpellID><Actions></Actions><Lua>local envenomCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
local envenomhealth = 100 * UnitHealth(&quot;target&quot;) / UnitHealthMax(&quot;target&quot;)
if envenomCP &gt;= 5 then
if envenomhealth &lt;= 35 then
return true
end
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Shiv</Name><Default>false</Default><SpellID>5938</SpellID><Actions></Actions><Lua>bDS = UnitBuffID(&quot;target&quot;, 8599) --Enrage
if bDS ~= nil then
return true
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>Deadly Throw</Name><Default>false</Default><SpellID>26679</SpellID><Actions></Actions><Lua>local deadlythrowCP = GetComboPoints(&quot;player&quot;, &quot;target&quot;)
local inRange = 0
if deadlythrowCP &lt;= 5 then
inRange = IsSpellInRange(&quot;Deadly Throw&quot;, &quot;target&quot;)
return true
end
end</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>cold blood</Name><Default>false</Default><SpellID>14177</SpellID><Actions></Actions><Lua>return true</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability><Ability><Name>vendetta</Name><Default>false</Default><SpellID>79140</SpellID><Actions></Actions><Lua>return true</Lua><RecastDelay>0</RecastDelay><SelfCast>False</SelfCast></Ability></ROGUE>