Hello. Is there any option in the API to detect talismaned mob? They are usually more dangerous than other mobs and should get higher weight (especially the fucker that creates spikes on the ground). I didn't found anything in Object Explorer
Best way to test things like this is go to normal or a place where you won't die and give a mob the talisman. Here's a snippet from one of them: Code: ExplicitAffixes: Level: 1, Category: Daemon, InternalName: TalismanMonsterUnsetAmulet, DisplayName: Black Maw Talisman, IsHidden: False, IsPrefix: False, IsSuffix: False, Stats: Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Values: Level: 1, Category: TalismanBonus, InternalName: MonsterHasTalismanNormal, DisplayName: , IsHidden: False, IsPrefix: False, IsSuffix: False, Stats: Min: 30, Max: 30, Stat: BaseActorScalePosPct, Min: 450, Max: 450, Stat: MonsterLifePosPctFinalFromRarity, Min: 20, Max: 20, Stat: AttackAndCastSpeedPosPct, Min: 10, Max: 10, Stat: BaseMovementVelocityPosPct, Values: 30, 450, 20, 10 _94: First: 0x0, Last: 0x0, End: 0x0, Allocator: 0x0 Your code in the CR could be something like: Code: // Mark anything with a talisman bonus affix super important to kill first. if (m.ExplicitAffixes.Any(a => a.Category.Equals("TalismanBonus"))) { weight += 50; } Or, if you want to handle each based on talisman name instead, Code: // Mark anything with a talisman bonus affix super important to kill first. if (m.ExplicitAffixes.Any(a => a.DisplayName.Equals("Black Maw Talisman"))) { weight += 10; // Hardly care about this type } else if (m.ExplicitAffixes.Any(a => a.DisplayName.Equals("Bonespire Talisman"))) { weight += 50; // These are super important to kill asap. } // Handle the reset, or just check to see if the DisplayName contains "Talisman" to catch all others To see if you have the Bone Roil effect, you'd check under your player entry and the auras section in the LifeComponent: Code: BaseAddress: - SubInfo: - Name: Bone Roil InternalName: talisman_degen Description: You are taking Physical Damage over time from the Bone Roil CasterId: - OwnerId: 0 BuffType: 30 TimeLeft: 00:00:02.8500000 MaxTimeLeft: 00:00:03 Charges: 0 IsInvisible: False IsRemovable: False Using the more updated buff system, the code would simply be: Code: if (LokiPoe.Me.HasBuff(BuffDefinitionsEnum.talisman_degen)) { // You're under the effect } If you want to code around trying to avoid the Bone Spire spikes themselves, it's a bit more work, but everything is already in place. Basically, you need to loop though the deployed objects for the monster, and check for that object type, which I logged as roughly "Metadata/Monsters/Daemon/TalismanT1SummonBonespireDaemon", so see if the Type contains "BonespireDaemon" to catch any variations. I'll add a convenience property to the Actor class to simply the next bit of code, but all you'd do is: Code: foreach (var deployed in m.Components.ActorComponent.DeployedObjects.Where(d => d.Type.Contains("SummonBonespireDaemon"))) { // You have access to the Position, so you can make assumptions about the size based on what you know in game visually, so move away to an anchor point or somewhere else to avoid getting destroyed by them } Hope that helps!