-
First Dev On The Internet
Originally Posted by
NopeyBoii
Nice seems to work.. Would make sense to update the link on this post wouldn't it? ^^
The plugin author RazorFish isn't around that's why I'm doing some sort of maintenance but I can't edit his 1st post.
-
Active Member
Originally Posted by
Vern1701
Would it be possible to add Normal, Magic and Rare Drops in the DropHelper plugin? You could also create a HealHelper plugin by enabling the healing stats that are in the original xml file. Also, could this plugin set generate xml files like those in the stat_tracker folder (those stats that can be enabled in default_main.xml)?
Ex.:
<stat_tracker scale_width="100">
<columns>
<experience enabled="1" />
<gold_pickup enabled="1" />
<gold_drop enabled="1" />
<kill_total enabled="1" />
<kill_elite enabled="1" />
<drop_all enabled="1" />
<drop_white enabled="1" />
<drop_magic enabled="1" />
<drop_rare enabled="1" />
<drop_legendary enabled="1" />
<drop_blood_shard enabled="1" />
<death enabled="1" />
<damage_dealt_all enabled="1" />
<damage_dealt_crit enabled="1" />
<damage_taken enabled="1" />
<healing enabled="1" />
</columns>
</stat_tracker>
User, can you add Magic, Rare and Normal Drops and Gold dropped to the Drop Helper plugin? I've done it before, but with your edits, it's a bit more complicated...
-
Active Member
On a separate note: Unless this was fixed in 19.9.6 Beta, the Damage Helper plugin throws exceptions in:
2019.09.14 18:52:56.944 19.8.29.1 overlay paint error (System.OverflowException: Value was either too large or too small for a Decimal.
at System.Decimal..ctor(Double value)
at Turbo.Plugins.Razor.RunStats_DamageHelper.<>c__DisplayClass144_0.<Load>b__18()
at Turbo.Plugins.Razor.RunStats_DamageHelper.PaintTopInGame(ClipState clipState)
at ************.********* *.******()
at ************.***** *(IPlugin , String , Action )
at ************.*********** **(Object , EventArgs )
at *******.****** **())
2019.09.14 18:52:57.007 19.8.29.1 overlay paint notification (SharpDX.SharpDXException: HRESULT: [0x88990001], Module: [SharpDX.Direct2D1], ApiCode: [D2DERR_WRONG_STATE/WrongState], Message: The object was not in the correct state to process the method.
Might be a graph error, but needs to be double checked, just in case.
-
Active Member
is there a plugin for RunStats where when equipped the Squirt's Necklace, it will make the buff up time statistic e.g. 90%UP of GRs (accumulate)
-
Active Member
You can add the SnoNumber in UptimeHelper.cs in Razor's original package, I think. I'm not sure User uploaded that one into his maintained package.
Edit: User does have UptimeHelper.cs, so you can add the SnoNumber for Squirt's Necklace in the appropriate place.
Last edited by Vern1701; 09-19-2019 at 11:19 PM.
-
Post Thanks / Like - 1 Thanks
takayo72 (1 members gave Thanks to Vern1701 for this useful post)
-
Active Member
//Squirts Necklace's
Watching.Add(new UptimeRule()
{
IsRelevant = () => (Hud.Game.Me.CubeSnoItem3?.Sno == Hud.Sno.SnoItems.P66_Unique_Amulet_010.Sno) || Hud.Game.Items.Any(x => x.Location == ItemLocation.Neck && x.SnoItem.Sno == Hud.Sno.SnoItems.P66_Unique_Amulet_010.Sno),
IsUp = () => IsInRift() && Hud.Game.Me.InCombat && Hud.Game.Me.Powers.BuffIsActive(Hud.Sno.SnoPowers.SquirtsNecklace.Sno, 5),
IsWatching = () => IsInRift() && Hud.Game.Me.InCombat,
Description = "Squirt's Necklace " + TextUptime,
Uptime = Hud.Time.CreateWatch(),
TotalTime = Hud.Time.CreateWatch(),
Font = Hud.Render.CreateFont("tahoma", 7, 255, 141, 240, 217, false, false, true),
});
-
Post Thanks / Like - 1 Thanks
takayo72 (1 members gave Thanks to iThinkiWin for this useful post)
-
Active Member
I'd still like to see if these additions can be made. I have tested them on Razor's original plugin and they do work, but I'm not well versed in C# enough fix it myself.
-
First Dev On The Internet
I will have a look tomorrow and update my version ;-)
-
Member
If I were to add Uptime Trackers for these 3 passives, how would I go about doing so?
Berserker Rage
Brawler
Ruthless
I tried using their SNO names, but as they are passives alone I didn't find a good chunk of code to copy and use as base for each new one. All others I saw were based on either an item or skill being cubed/equipped/used.
My (failed) attempt for Berserker Rage passive based on existing code.
Code:
//track Berserker Rage Passive uptime
Watching.Add(new UptimeRule()
{
IsRelevant = () => Hud.Game.Me.Powers.UsedSkills.Any(s => s.SnoPower.Sno == Hud.Sno.SnoPowers.Barbarian_Passive_BerserkerRage.Sno), //sim skill is on the action bar
IsUp = () => IsInRift() && Hud.Game.Me.InCombat && Hud.Game.Me.Powers.BuffIsActive(Hud.Sno.SnoPowers.Barbarian_Passive_BerserkerRage.Sno),
IsWatching = () => IsInRift() && Hud.Game.Me.InCombat,
Description = Hud.Sno.SnoPowers.Barbarian_Passive_BerserkerRage.NameLocalized + " " + TextUptime,
Uptime = Hud.Time.CreateWatch(),
TotalTime = Hud.Time.CreateWatch(),
//BgBrush = Hud.Render.CreateBrush(200, 107, 3, 3, 0),
Font = Hud.Render.CreateFont("tahoma", 7, 255, 255, 60, 60, false, false, true),
What's the correct way of adding it? Is there a way for passives that has nothing to do with skills/items?
-
Active Member
Code:
// Track Berserker Rage uptime
Watching.Add(new UptimeRule()
{
Name = "Berserker",
IsEnabled = true,
IsRelevant = () => Hud.Game.Me.Powers.UsedPassives.Any(s => s.Sno == Hud.Sno.SnoPowers.Barbarian_Passive_BerserkerRage.Sno), // Berserker Rage is an active passive (Doesnt account for Hellfire...)
IsUp = () => IsInRift() && Hud.Game.Me.InCombat && Hud.Game.Me.Powers.BuffIsActive(Hud.Sno.SnoPowers.Barbarian_Passive_BerserkerRage.Sno, 1), // Berserk is active
IsWatching = () => IsInRift() && Hud.Game.Me.InCombat,
Description = Hud.Sno.SnoPowers.Barbarian_Passive_BerserkerRage.NameLocalized + " " + TextUptime,
Uptime = Hud.Time.CreateWatch(),
TotalTime = Hud.Time.CreateWatch(),
Font = Hud.Render.CreateFont("tahoma", 7, 255, 255, 60, 60, false, false, true),
});
This should work.
-
Member
Thank you, I will test it later tonight. Very much appreciated!
Edit: Confirmed. Excellent stuff. Thank you.
Last edited by lro; 12-07-2019 at 06:36 PM.
-
Contributor
Just to tweak the Berserker Rage solution someone already posted, don't check for "equipped" passives, just check for the Berserker Rage buff itself, because the following statement always returns true if you have the passive "equipped" either in a passive slot or hellfire amulet:
Code:
IsRelevant = () => Hud.Game.Me.Powers.BuffIsActive(Hud.Sno.SnoPowers.Barbarian_Passive_BerserkerRage.Sno),
You can use similar code for Brawler, the 1st index value of the Brawler buff will be 1 when it is active and 0 when it is not:
Code:
// Track Brawler uptime
Watching.Add(new UptimeRule()
{
Name = "Brawler",
IsEnabled = true,
IsRelevant = () => Hud.Game.Me.Powers.BuffIsActive(Hud.Sno.SnoPowers.Barbarian_Passive_Brawler.Sno),
IsUp = () => IsInRift() && Hud.Game.Me.InCombat && Hud.Game.Me.Powers.BuffIsActive(Hud.Sno.SnoPowers.Barbarian_Passive_Brawler.Sno, 1), // Brawler is active
IsWatching = () => IsInRift() && Hud.Game.Me.InCombat,
Description = Hud.Sno.SnoPowers.Barbarian_Passive_Brawler.NameLocalized + " " + TextUptime,
Uptime = Hud.Time.CreateWatch(),
TotalTime = Hud.Time.CreateWatch(),
Font = Hud.Render.CreateFont("tahoma", 7, 255, 255, 60, 60, false, false, true),
});
As for Ruthless, that is trickier to code for because the bonus is specific to each monster you are fighting...you're basically trying to measure how much time you spend fighting monsters when they are below 30% health?
-
Member
Yeah, that was the intent, to compare their uptime and that would require it to read how often that condition is true, being in short range of a <30% hp mob.
Noticed later on when I tested Ruthless that it wasn't working, as you mentioned, but the other two was fine.
-
Member
Sadly i get exceptions by using this Plugin...
C:\Users\xxxx\xxx\xx- T Hud\Plugins\Razor\RunStats\RunStats_DamageHelper.cs(335,1 : error CS0266: Cannot implicitly convert type 'double' to 'long'. An explicit conversion exists (are you missing a cast?)
is there something to config first?
-
Contributor
Originally Posted by
astisbc
Sadly i get exceptions by using this Plugin...
C:\Users\xxxx\xxx\xx- T Hud\Plugins\Razor\RunStats\RunStats_DamageHelper.cs(335,1 : error CS0266: Cannot implicitly convert type 'double' to 'long'. An explicit conversion exists (are you missing a cast?)
is there something to config first?
Someone else has been working on a fork of this plugin called LiveStats that should be compatible with the new TurboHUD v9.1 api changes. The error is because some data types changed in TH's stat tracker API from v9.0 (older) to v9.1 (current). I started working on some experimental updates and more bugfixes recently since I am now able to spend more time in front of the computer, but because LiveStats exists, it didn't seem urgent to push anything new out that's not substantial and more polished.