-
Member
Secondary Affix not reflecting correctly
Hello,
Do I need to do anything specific to refresh or populate the location pulling the SNO id's? Since last update a few items such as, Iron Rose for example, still show "40-50% chance to cast a free Blood Nova." VS. 100% or is it possible to run a plugin in debug to reflect latest values as an alternative.
Thanks.
-
Contributor
Originally Posted by
0xFEEDC0DE
Hello,
Do I need to do anything specific to refresh or populate the location pulling the SNO id's? Since last update a few items such as, Iron Rose for example, still show "40-50% chance to cast a free Blood Nova." VS. 100% or is it possible to run a plugin in debug to reflect latest values as an alternative.
Thanks.
No, you can only read game data THUD has found and given us access.
Are you sure that all your items are "new" ones?
If Iron Rose has been updated, you can have more than one sno for it with different stats as those items are different (before update and after update).
Some updates affect all items but some updates can create new snos for new versions of items.
For example I have "Wraps of Clarity" with sno 533836826 (old) and 4075421198 (new).
Though Iron Rose seems to have only one sno: 1284610787.
Sometimes I have random problems reading item special powers descriptions etc. and sometimes restarting THUD helps, but not always.
This might be due to memory scanning or what ever they have to do nowadays to be able to find game data.
AFAIK game data pointers are now encrypted so you can not follow them directly any more.
I guess you have to live with current state, unless there is a bug that affects majority of THUD users.
-
Post Thanks / Like - 1 Thanks
0xFEEDC0DE (1 members gave Thanks to JarJarD3 for this useful post)
-
Member
Thank you for the clarification and response - I will try THUD again, tonight. The issue possibly resolved itself, but it did seem odd, the few items I removed the mask from to test, resulted in old values. The values reflecting the old secondary values on items, these items were mentioned in the game patch notes to have had their values increased.
Jekangbord
Secondary:
Blessed Shield ricochets to 6 additional enemies and has its damage increased by 300-400%.
The Dagger of Darts
Secondary:
Your Poison Darts and your Fetishes' Poison Darts now pierce and deal an additional 400-500% damage.
-
Contributor
Originally Posted by
0xFEEDC0DE
Thank you for the clarification and response - I will try THUD again, tonight. The issue possibly resolved itself, but it did seem odd, the few items I removed the mask from to test, resulted in old values. The values reflecting the old secondary values on items, these items were mentioned in the game patch notes to have had their values increased.
Jekangbord
Secondary:
Blessed Shield ricochets to 6 additional enemies and has its damage increased by 300-400%.
The Dagger of Darts
Secondary:
Your Poison Darts and your Fetishes' Poison Darts now pierce and deal an additional 400-500% damage.
I guess you are referring to "Item_Power_Passive" that sometimes has problems to get it right.
For my own plugins I try to get the description of the power and sometimes it works but not always (returns null).
So I write a little helper to overcome that.
But in your case it might be that THUD should have two SNOs for above mentioned items if there really is now "old" and "new" versions of the item?
I believe that is the standard procedure to handle it.
Code:
public static string CheckSpecialName(string code, uint modifier)
{
string name = null;
...
ISnoPowerList p = HUD._Hud.Sno.SnoPowers;
if (code == "Power_Damage_Percent_Bonus")
{
var heroClass = HUD._Hud.Game.Me.HeroClassDefinition.HeroClass;
ISnoPower power = p.GetClassSpecificPowers(heroClass).FirstOrDefault(x => x.Sno == modifier);
name = power != null
? (power.NameEnglish + " Damage")
: string.Format("Increases '{0}' Damage", modifier);
}
else if (code == "Item_Power_Passive")
{
ISnoPower power = p.GetLegendaryItemPowers().FirstOrDefault(x => x.Sno == modifier);
if (power == null)
{
power = HUD._Hud.Sno.GetSnoPower(modifier);
}
name = power?.DescriptionEnglish ?? string.Format("Special power '{0}'", modifier);
}
return name;
}