Yep, I've started on working on something for it, but it is still at early stages. Someone might be further along and post something sooner. The basic idea of the code is that these are the ActorSnoEnums to check for (found them when running a diff on the master ActorSnoEnum list):
Code:
public HashSet<ActorSnoEnum> CloneSno { get; set; } = new HashSet<ActorSnoEnum>() {
ActorSnoEnum._seasontheme_barbarian_male, // = 484609,
ActorSnoEnum._seasontheme_barbarian_female, // = 484613,
ActorSnoEnum._seasontheme_crusader_female, // = 484615,
ActorSnoEnum._seasontheme_crusader_male, // = 484616,
ActorSnoEnum._seasontheme_demonhunter_female, // = 484617,
ActorSnoEnum._seasontheme_demonhunter_male, // = 484618,
ActorSnoEnum._seasontheme_monk_female, // = 484619,
ActorSnoEnum._seasontheme_monk_male, // = 484620,
ActorSnoEnum._seasontheme_necromancer_female, // = 484621,
ActorSnoEnum._seasontheme_necromancer_male, // = 484622,
ActorSnoEnum._seasontheme_witchdoctor_female, // = 484623,
ActorSnoEnum._seasontheme_witchdoctor_male, // = 484624,
ActorSnoEnum._seasontheme_wizard_female, // = 484625,
ActorSnoEnum._seasontheme_wizard_male, // = 484626
};
And the code to draw a decorator on them:
Code:
public void PaintWorld(WorldLayer layer)
{
foreach (IActor clone in Hud.Game.Actors.Where(a => CloneSno.Contains(a.SnoActor.Sno) && Hud.Game.Me.SummonerId == a.SummonerAcdDynamicId)) //only marks your own clones
{
YourDecoratorName.Paint(layer, clone, clone.FloorCoordinate, null);
}
}
A readout of the data dump for the on screen actors revealed that it may be possible to test for skill sets:
Code:
_seasontheme_demonhunter_female SeasonTheme_DemonHunter_Female Invalid
attr Rune_C 130738 1 power: Marked for Death
attr Rune_B 129214 1 power: Cluster Arrow
attr Power_Buff_0_Visual_Effect_C 77649 1 power: Multishot
attr Damage_Shield -1 1
attr Rune_C 131325 1 power: Elemental Arrow
attr Rune_C 302846 1 power: Vengeance
attr Resistance_Total 6 0.7998046875
attr Resistance_Total 5 0.7998046875
attr Resistance_Total 4 0.7998046875
attr Resistance_Total 3 0.7998046875
attr Resistance_Total 2 0.7998046875
attr Resistance_Total 1 0.7998046875
attr Resistance_Total 0 0.7998046875
attr Power_Buff_2_Visual_Effect_None 484633 1 power: Community_Buff_ShadowClones
attr Hitpoints_Regen_Per_Second_Total -1 0
attr Hitpoints_Regen_Per_Second_Subtotal -1 0
attr Hitpoints_Max_Total -1 119.37060546875
proc hp_max 119
attr Hitpoints_Max -1 29.359375
attr Hitpoints_Total_From_Level -1 0
attr Hitpoints_Total_From_Vitality -1 90
attr Hitpoints_Factor_Vitality -1 10
attr Hitpoints_Cur -1 119.37060546875
proc hp_cur 119
attr Projectile_Speed -1 0
attr TeamID -1 2
attr Buff_Visual_Effect -1 1
attr Rune_B 130831 1 power: Rain of Vengeance
attr Level -1 1
attr Primary_Damage_Attribute -1 1
attr Walk_Passability_Power_SNO -1 484633
attr Rune_C 77649 1 power: Multishot
attr Summoned_By_ACDID -1 262297
When I applied a GroundTimerDecorator to the clone, the countdown kept resetting when it moved, so that needs some more investigation. Also, I heard something about clone lifespan also being tied to the person who activated the shrine, but I haven't played enough to find out if SummonerAcdDynamicId is affected by that yet.