-
Member
@Numba1stunna1 Do you think your profile will be better than Vitalic's? I ask this because I am considering buying Vitalics profile but if there is going to be a better profile coming out soon for free that would be even better
-
Active Member
I have tried Vitalic's bot, and I don't really like it. There are a lot of things missing from it.
This profile has much better finisher logic, burst preparation logic, and many more variables to adjust for personal preference.
Some features include:
Peel macro
Shadow step kick macro
All macros have target/focus/mouseover
more accurate filters
UI adjustable
Better combo point tracking
Filters for clean ability execution in combat log
Utilizing ALL abilities that can disrupt (not just kick).
Totem stomp logic
Finisher calculations based on energy/time/buff/etc
Most efficient possible damage in burst (with the option to burst only without Find Weakness, no enemy defensive buffs, etc)
Custom Target to track numerous targets (no just target and focus).
Last edited by Numba1stunna1; 10-14-2015 at 03:53 PM.
-
Post Thanks / Like - 1 Thanks
wtbvitalicbot (1 members gave Thanks to Numba1stunna1 for this useful post)
-
I happened to see myself mentioned in the latest posts section so perhaps I could make a brief comment.
@Numba1stunna1 It is quite fair of course to say you don't like my profile (bot?) but I would certainly be surprised if at least a few of my ideas and concepts have not formed the basis of your own work and therefore a degree of respect would not go amiss, somewhat like in science where people are usually careful not to trample on the perhaps now superseded work of those that paved the way with their earlier efforts. I seem to recall you asking for source code on my thread and have described systems that on the face of it parallel that which I first came up with years ago, which leads me to feel a bit miffed when seeing such a callous dismissal.
It's good to see someone investing time into working on this class because it is a big undertaking that historically most have shied away from, but I should point out to anyone reading that the reason mine is still available is because it, at least for now, remains the only Rogue profile realistically usable for rated play and has done since its release in Feb 2014. Nevertheless if a better alternative is released I would either put the profile to its long deserved rest or make it openly available.
Last edited by vitalic; 10-14-2015 at 10:49 PM.
-
Active Member
This is Cataclysm, your recently released profiles for WoD are much better. This is comparing an old Cataclysm profile. 1.83 I believe. I did give credit for the loader, when I first started making my profile, but a lot has changed since then. I also gave credit to Cokx for some functions as well as nova for cvars. I am not against your work, I am stating the differences (perhaps updated for private servers). This is just merely a hobby of mine, I don't make any profit off it. My profile is open sourced for beta testers, and easy to read.
-
@Numba1stunna1 I understand that, no hard feelings.
-
Member
When will this be available to test?
-
Active Member
- Added a filter to not use combo-point generating abilities for totems less than auto attack damage (this is to prevent wasting combo points for killing totems)
- Added filter to not stealth in smoke bomb. Problems arise when the Cooldown value of stealth is not reset after losing or disabling stealth (server bug).
- Added timer for successful casts with cooldown > 1s (non-GCD abilities). This is to counter server bugs (this also happens in retail sometimes, such as Healthstone, which causes the profile to freeze up). Example: when losing stealth, the return value of GetSpellCooldown is not accurate, which will occasionally "lock" the profile to keep trying to cast an ability that shows not on cooldown when in reality it is indeed on cooldown.
- Hotfixed: when entering arena, all ability timers are reset.
- Hotfixed: timers are now adjusted based on Glyphs and Talents (such as Nightstalker talent reducing stealth cooldown)
- Hotfixed: Preparation now reset specific spells timers. Also incorporates Preparation Glyph or not.
@desipised68 Because this profile is still in Beta, a lot of minor/major changes are being made daily. It would be a nuisance to release a change, find out there's a bug, and having to publish an update on every fix. Not all fixes are posted. The Beta is being tested by a select few, because I simply don't have time to test daily. Changelogs also help other profile makers find ideas and add them to their own profile. This profile will be open-sourced.
- Auto Focus now will try to focus enemy healing your target if focus does not exist.
Last edited by Numba1stunna1; 10-21-2015 at 02:45 AM.
-
Active Member
- A newer PQR is now being used. Report any FPS problems.
- Added FPS consuming filters for important abilities and as a last essential filter (to reduce FPS drop).
- Profile has been cleaned up a bit (combining duplicate filters).
- Ability loader will now distinguish if the target is CC'd before casting a counter ability (in rare cases which the target uses an offensive cooldown such as shadowdance while he is disarmed, etc). This is to prevent wasting an important cooldown.
- Fixed a problem which would Dismantle casters.
- Auto attack now has a timer filter to prevent wasting CPU consumption. If the player is already auto attacking (slowest weapon 2.6s) then there is no need to waste UnitFacing filter
- made changes to functions, global variables, loaders, and filter orders. v1.0.2 is significantly less CPU consumption
- added the option to enable/disable ability energy pooling. For example, if you choose to enable this, it will Pool energy if Gouge is possible (all the filters), it will calculate energy consumed (like Backstab = 40), GCD energy replenished, possible energy replenished by Recuperate (if Recuperate procs in the duration of GCD), Haste energy regen in the duration of GCD. Here's an example:
Pooling Gouge, casting Backstab --> Must have at least (GougeEnergy + Backstab Energy - GCDEnergy - Recuperate proc - Bonus haste energy)
Note that Recuperate does not always proc, the profile will calculate it.
-- Peeling function now check enemy's attack range and distance from it's attack target before applying peels.
-- Removed some positioning filter functions to some abilities such as Backstab. These have been replaced by failure-to-cast functions (less CPU consumption).
-- Added another filter for energy for the player's energy to be at least the ability's energy (in cases which the player's minimum energy after an ability is set at 0, which is impossible)
-- All filters have been made to this point. The profile should return ONLY ONCE for an ability, and it must return successful. Report if it does NOT.
-- Added PQR_DelayRotation for events, stop attack events based on Latency
-- Added more abilities to warning splash for abilities without a destGUID (such as Vanish). These ability will instead portray the unit's target. For example, if a rogue Vanishes with a target, the UI will show the rogue may potentially open on displayed target. Same concept: https://www.youtube.com/watch?v=MpDlVrf64SY
Last edited by Numba1stunna1; 10-29-2015 at 01:42 PM.
-
Member
Would also really like to try this once its done <3
-
Member
Originally Posted by
Numba1stunna1
- A newer PQR is now being used. Report any FPS problems.
- Added FPS consuming filters for important abilities and as a last essential filter (to reduce FPS drop).
- Profile has been cleaned up a bit (combining duplicate filters).
- Ability loader will now distinguish if the target is CC'd before casting a counter ability (in rare cases which the target uses an offensive cooldown such as shadowdance while he is disarmed, etc). This is to prevent wasting an important cooldown.
- Fixed a problem which would Dismantle casters.
- Auto attack now has a timer filter to prevent wasting CPU consumption. If the player is already auto attacking (slowest weapon 2.6s) then there is no need to waste UnitFacing filter
- made changes to functions, global variables, loaders, and filter orders. v1.0.2 is significantly less CPU consumption
- added the option to enable/disable ability energy pooling. For example, if you choose to enable this, it will Pool energy if Gouge is possible (all the filters), it will calculate energy consumed (like Backstab = 40), GCD energy replenished, possible energy replenished by Recuperate (if Recuperate procs in the duration of GCD), Haste energy regen in the duration of GCD. Here's an example:
Pooling Gouge, casting Backstab --> Must have at least (GougeEnergy + Backstab Energy - GCDEnergy - Recuperate proc - Bonus haste energy)
Note that Recuperate does not always proc, the profile will calculate it.
-- Peeling function now check enemy's attack range and distance from it's attack target before applying peels.
-- Removed some positioning filter functions to some abilities such as Backstab. These have been replaced by failure-to-cast functions (less CPU consumption).
-- Added another filter for energy for the player's energy to be at least the ability's energy (in cases which the player's minimum energy after an ability is set at 0, which is impossible)
-- All filters have been made to this point. The profile should return ONLY ONCE for an ability, and it must return successful. Report if it does NOT.
Is there anyway I could get the beta of this to use on some servers I play? I wouldn't care for daily updates but just the most recent best working version.
-
Active Member
@FluZ I am actually testing it right now. I am trying to make it less FPS consuming while still maintaining quality.
-
Post Thanks / Like - 1 Thanks
FLuZ (1 members gave Thanks to Numba1stunna1 for this useful post)
-
Member
Well please send me a PM as soon as its ready for a download link. I would like to try it really bad on servers like WoW Mortal and what not for 1v1's and 2v2's.
-
Member
I would also be able to help with beta testing if needed ! Played with pqr before the ban waves and lots of other bots like HB/glider ect - 2.7k xp warrior/ lock!
Want some rogue ownage <3
-
Active Member
--profile now has lite option. The user may apply more accurate filters at the cost of CPU.
--profile now has auto lag tolerance to automatically adjust latency options (important for cc overlap).
--profile now has the option to disable all custom targetting. This will greatly improve CPU.
--profile will now require to be at least under 400ms. Anything higher will break the custom lag tolerance barrier and thus making it not properly function-able.
Last edited by Numba1stunna1; 10-30-2015 at 01:46 PM.
-
Active Member
buff/debuff/dr analysis, you can use it for your own profile analysis or use the idea and make your own. It's great for PvE to optimize DPS, but I use it for PvP, also.
Code:
local function round(v, p)
local mult = math.pow(10, p or 0) -- round to 0 places when p not supplied
return math.floor(v * mult + 0.5) / mult;
end;
local function print_r ( t )
local print_r_cache={}
local function sub_print_r(t,indent)
if (print_r_cache[tostring(t)]) then
print(indent.."*"..tostring(t))
else
print_r_cache[tostring(t)]=true
if (type(t)=="table") then
for pos,val in pairs(t) do
if (type(val)=="table") then
print(indent.."["..pos.."] => "..tostring(t).." {")
sub_print_r(val,indent..string.rep(" ",string.len(pos)+8))
print(indent..string.rep(" ",string.len(pos)+6).."}")
elseif (type(val)=="string") then
print(indent.."["..pos..'] => "'..val..'"')
else
print(indent.."["..pos.."] => "..tostring(val))
end
end
else
print(indent..tostring(t))
end
end
end
if (type(t)=="table") then
print(tostring(t).." {")
sub_print_r(t," ")
print("}")
else
sub_print_r(t," ")
end
print()
end;
function Analysis()
if AnalysisTable == nil then AnalysisTable = {} end
--ANALYSIS!
--bleeds
if UnitAffectingCombat("player") then
if HemoTimer == nil and GarroteBleed == nil and Rupture == nil then
if BleedUptime == nil then
BleedUptime = GetTime()
end
elseif HemoTimer ~= nil or GarroteBleed ~= nil or Rupture ~= nil then
if BleedUptime ~= nil then
print("Bleeds were down for "..round(GetTime() - BleedUptime,2).." seconds")
table.insert(AnalysisTable,"Bleeds were down for "..round(GetTime() - BleedUptime,2).." seconds")
print_r(AnalysisTable)
BleedUptime = nil
end
end
else BleedUptime = nil
end
--kidney shot stuns
if UnitAffectingCombat("player") then
if DRTimer("target","stun") == 0 then
if StunUptime == nil then
StunUptime = GetTime()
end
elseif DRTimer("target","stun") > 0 then
if StunUptime ~= nil then
if GetTime() - StunUptime > 1 then
print("Stun DR was down for "..round(GetTime() - StunUptime,2).." seconds")
table.insert(AnalysisTable,"Stun DR was down for "..round(GetTime() - StunUptime,2).." seconds")
print_r(AnalysisTable)
end
StunUptime = nil
end
end
else StunUptime = nil
end
--Recuperate
if UnitAffectingCombat("player") then
if RecTimer == nil then
if RecUptime == nil then
RecUptime = GetTime()
end
elseif RecTimer ~= nil then
if RecUptime ~= nil then
print("Recuperate was down for "..round(GetTime() - RecUptime,2).." seconds")
table.insert(AnalysisTable,"Recuperate was down for "..round(GetTime() - RecUptime,2).." seconds")
print_r(AnalysisTable)
RecUptime = nil
end
end
else RecUptime = nil
end
end
Last edited by Numba1stunna1; 11-07-2015 at 12:56 AM.