-
Member
Track buffs like epiphany and mantra actives
Hi all, first post here. Loving THUD so far.
I've been altering some of the .cs files trying to get epiphany and mantra of healing active countdown times to show up under my character. In the same way the base layout shows Taeguk and Focus / Restraint.
I tried altering the PlayerBottomBuffListPlugin.cs file to add the following but so far to no avail.
If it could play a sound aswell if the epiphany buff has fallen off that would be extra sweet.
This is the code I added:
Code:
RuleCalculator.Rules.Add(new BuffRule(403471) { IconIndex = null, MinimumIconCount = 1, ShowStacks = true, ShowTimeLeft = true }); // Taeguk
RuleCalculator.Rules.Add(new BuffRule(359583) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Focus
RuleCalculator.Rules.Add(new BuffRule(359583) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // Restraint
RuleCalculator.Rules.Add(new BuffRule(312307) { IconIndex = 3, MinimumIconCount = 1, ShowTimeLeft = true }); // Epiphany test
In that same category, I'd also like the cold element of Convent of the Elements to display there when Cold is active, much in the same way the CoE bar is active, except it only showing the cold one.
Any help on this one? Thanks allot.
-
Legendary
Code:
plugin.RuleCalculator.Rules.Add(new BuffRule(312307) { IconIndex = 0, MinimumIconCount = 1, ShowTimeLeft = true }); // Epiphany
plugin.RuleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // ConventionOfElements , Cold Only
plugin.RuleCalculator.Rules.Add(new BuffRule(373154) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Healing
Although something escapes me, I have to look at this
Last edited by RNN; 11-28-2019 at 04:14 PM.
-
Member
Thanks for the reply. When I add your code snippet to PlayerBottomBuffListPlugin.cs I get these exceptions:
2019.11.28 22:03:38.790 19.11.25.0 C:\Users\Geffrey\Downloads\TurboHUD 19.11.25.0 (v9.1) STABLE for Diablo III 2.6.7.64160 (64 bit)\Plugins\Default\BuffLists\PlayerBottomBuffListPlugin.cs(35,4) : error CS0103: The name 'RuleCalculatorMe' does not exist in the current context
2019.11.28 22:03:38.790 19.11.25.0 C:\Users\Geffrey\Downloads\TurboHUD 19.11.25.0 (v9.1) STABLE for Diablo III 2.6.7.64160 (64 bit)\Plugins\Default\BuffLists\PlayerBottomBuffListPlugin.cs(36,4) : error CS0103: The name 'RuleCalculatorMe' does not exist in the current context
2019.11.28 22:03:38.790 19.11.25.0 C:\Users\Geffrey\Downloads\TurboHUD 19.11.25.0 (v9.1) STABLE for Diablo III 2.6.7.64160 (64 bit)\Plugins\Default\BuffLists\PlayerBottomBuffListPlugin.cs(37,4) : error CS0103: The name 'RuleCalculatorMe' does not exist in the current context
When I try to use your snippet in the plugin enabler or disabler I get the following exceptions:
2019.11.28 22:08:00.036 19.11.25.0 C:\Users\Geffrey\Downloads\TurboHUD 19.11.25.0 (v9.1) STABLE for Diablo III 2.6.7.64160 (64 bit)\Plugins\User\PluginEnablerOrDisablerPlugin.cs(43,11) : error CS1061: 'PlayerBottomBuffListPlugin' does not contain a definition for 'RuleCalculatorMe' and no accessible extension method 'RuleCalculatorMe' accepting a first argument of type 'PlayerBottomBuffListPlugin' could be found (are you missing a using directive or an assembly reference?)
2019.11.28 22:08:00.036 19.11.25.0 C:\Users\Geffrey\Downloads\TurboHUD 19.11.25.0 (v9.1) STABLE for Diablo III 2.6.7.64160 (64 bit)\Plugins\User\PluginEnablerOrDisablerPlugin.cs(44,11) : error CS1061: 'PlayerBottomBuffListPlugin' does not contain a definition for 'RuleCalculatorMe' and no accessible extension method 'RuleCalculatorMe' accepting a first argument of type 'PlayerBottomBuffListPlugin' could be found (are you missing a using directive or an assembly reference?)
2019.11.28 22:08:00.036 19.11.25.0 C:\Users\Geffrey\Downloads\TurboHUD 19.11.25.0 (v9.1) STABLE for Diablo III 2.6.7.64160 (64 bit)\Plugins\User\PluginEnablerOrDisablerPlugin.cs(45,11) : error CS1061: 'PlayerBottomBuffListPlugin' does not contain a definition for 'RuleCalculatorMe' and no accessible extension method 'RuleCalculatorMe' accepting a first argument of type 'PlayerBottomBuffListPlugin' could be found (are you missing a using directive or an assembly reference?)
What am I doing wrong? :confused:
-
Legendary
Oops, sorry, you have to remove the "Me" (plugin.RuleCalculatorMe.Rules.Add)
I corrected it above, copy it again
Last edited by RNN; 11-28-2019 at 04:28 PM.
-
Member
Thank you, the CoE works now. Except that you've put it on Holy, instead of Cold but I've fixed that. Both the mantra and Epiphany are not working. However that might be because these do not apply a buff in the standard buff bar. It is one of those skills with a little meter on the skill icon itself. Any ideas how we can fix that?
-
Legendary
It works for me
You should avoid modifying the original file directly. Add this in User\PluginEnablerOrDisablerPluging.cs (if it doesn't exist, rename PluginEnablerOrDisablerPlugin.txt to PluginEnablerOrDisablerPlugin.cs)
Code:
Hud.RunOnPlugin<PlayerBottomBuffListPlugin>(plugin => {
plugin.RuleCalculator.Rules.Add(new BuffRule(312307) { IconIndex = 0, MinimumIconCount = 1, ShowTimeLeft = true }); // Epiphany
plugin.RuleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // ConventionOfElements , Cold Only
plugin.RuleCalculator.Rules.Add(new BuffRule(373154) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Healing
} );
-
Post Thanks / Like - 1 Thanks
udyr2946 (1 members gave Thanks to RNN for this useful post)
-
Member
I've done a fresh install and added only the above code to my file. It works same as yours now, amazing! I didn't know you can only modify the enables file.
Thank you so much for helping me out.
I can make some new things with this that I want to use aswell so i'll start playing around with that a bit.
If it is not too much to ask could you show me how to active one of the included sound files when a buff expires (or just actived) ? If I have that I can make all of the stuff I wanna use.
-
Legendary
TH It does not include any plugin that warns of activation or loss of buffs, in addition, working with them can be worse than a toothache (sometimes they are lost momentarily just by opening the inventory). TH only includes a plugin to warn about cooldown (plugins\default\CooldownSoundPlayer\CooldownSoundPlayerPlugin.cs)
The easy way to track buffs is to add icons as you've done. You can use my plugin to find out the PowerSno and Index : Mybuffs ([V9.0] [ENG] [RNN] MyBuffs)
Last edited by RNN; 11-29-2019 at 08:41 AM.
-
Post Thanks / Like - 1 Thanks
udyr2946 (1 members gave Thanks to RNN for this useful post)
-
Member
Yes for now this works really nicely, I was thinking about adding a sound when CoE Cold element is about to come up (On activation of physical for example) . But that is just gravy, the icons are working wonders! Ill check out your plugin a little later when Im hopping off work.
-
Member
Actually I do have one more problem. I've changed it to the following to include all Mantra's
PluginEnablerOrDisabler.cs
Code:
public void Customize()
{
Hud.RunOnPlugin<PlayerBottomBuffListPlugin>(plugin => {
plugin.RuleCalculator.Rules.Add(new BuffRule(312307) { IconIndex = 0, MinimumIconCount = 1, ShowTimeLeft = true }); // Epiphany
plugin.RuleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // ConventionOfElements , Cold Only
plugin.RuleCalculator.Rules.Add(new BuffRule(373154) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Healing
plugin.RuleCalculator.Rules.Add(new BuffRule(375049) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Salvation
plugin.RuleCalculator.Rules.Add(new BuffRule(375088) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Conviction
plugin.RuleCalculator.Rules.Add(new BuffRule(375082) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Retribution
} );
The only one that works is the one you provided, Mantra of Healing. The skill ID's should be correct, I copied them from the MonkPowerList. I'd really like to know why it does not work as I've coded it now. Also, what does IconIndex property do?
Edit: There is another noticeable difference: My icons do not display the ShowTimeLeft property. They're just animated icons that fill up radially to indicate the time. This isn't a dealbreaker to me in this scenario but I'd like to figure out why this is happening? The property = true in my code.
Last edited by udyr2946; 11-29-2019 at 08:55 AM.
-
Legendary
In my opinion these powersno are outdated, but .. I don't know many things
Each sno has several associated indexes (up to 32) , each representing different information, you must find the correct one. I refer it again to my plugin to extract current information
By default it does not show timelefts , change ShowTimeLeftNumbers to true
Code:
Hud.RunOnPlugin<PlayerBottomBuffListPlugin>(plugin => {
plugin.BuffPainter.ShowTimeLeftNumbers = true;
plugin.PositionOffset = 0.04f;
plugin.RuleCalculator.Rules.Add(new BuffRule(312307) { IconIndex = 0, MinimumIconCount = 1, ShowTimeLeft = true }); // Epiphany
plugin.RuleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // ConventionOfElements , Cold Only
plugin.RuleCalculator.Rules.Add(new BuffRule(373154) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Healing
plugin.RuleCalculator.Rules.Add(new BuffRule(375050) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Salvation
plugin.RuleCalculator.Rules.Add(new BuffRule(375089) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Conviction
plugin.RuleCalculator.Rules.Add(new BuffRule(375083) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Retribution
} );
Last edited by RNN; 11-29-2019 at 09:26 AM.
-
Post Thanks / Like - 1 Thanks
udyr2946 (1 members gave Thanks to RNN for this useful post)
-
Member
Everything is working like a charm now. So what youre saying is that within the BuffPainter plugin the value for ShowTimeLeftNumbers was set to false in my default, fresh install option.
Looking at the mantra buffs, the value for the ones I picked is off. Cause you've changed them.
I'll have a look at your plugin over the weekend! Thanks allot for helping me out.
-
Legendary
Originally Posted by
udyr2946
So what youre saying is that within the BuffPainter plugin the value for ShowTimeLeftNumbers was set to false in my default, fresh install option.
yes, default value is false
You can also resize those icons with SizeMultiplier (default value = 0.75f)
Code:
Hud.RunOnPlugin<PlayerBottomBuffListPlugin>(plugin => {
plugin.BuffPainter.ShowTimeLeftNumbers = true;
plugin.PositionOffset = 0.04f;
plugin.RuleCalculator.SizeMultiplier = 0.65f;
plugin.RuleCalculator.Rules.Add(new BuffRule(312307) { IconIndex = 0, MinimumIconCount = 1, ShowTimeLeft = true }); // Epiphany
plugin.RuleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // ConventionOfElements , Cold Only
plugin.RuleCalculator.Rules.Add(new BuffRule(373154) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Healing
plugin.RuleCalculator.Rules.Add(new BuffRule(375050) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Salvation
plugin.RuleCalculator.Rules.Add(new BuffRule(375089) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Conviction
plugin.RuleCalculator.Rules.Add(new BuffRule(375083) { IconIndex = 1, MinimumIconCount = 1, ShowTimeLeft = true }); // Mantra Of Retribution
} );
Last edited by RNN; 11-29-2019 at 10:31 AM.
-
Member
Hi, this is exactly what I'm looking for (repalce tae guk icon with larger epiphany/sweeping wind/coe icons), but I'm a bit confused as to how to use the PluginEnablerOrDisablerPlugin.cs
Code:
Hud.GetPlugin<InventoryAndStashPlugin>().NotGoodDisplayEnabled = false;
Hud.RunOnPlugin<PlayerBottomBuffListPlugin>(plugin => {
plugin.BuffPainter.ShowTimeLeftNumbers = true;
plugin.PositionOffset = 0.04f;
plugin.RuleCalculator.SizeMultiplier = 0.65f;
plugin.RuleCalculator.Rules.Add(new BuffRule(312307) { IconIndex = 0, MinimumIconCount = 1, ShowTimeLeft = true }); // Epiphany
plugin.RuleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 1, ShowTimeLeft = true }); // ConventionOfElements
} );
I just pasted that at the bottom of the PluginEnablerOrDisablerPlugin text file and converted it to a cs file. I'm getting I missed a few steps? And to get rid of the taeguk icon, should I add a line in this file and change the value to false, or just edit it in the buffpainter file?