What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

skip certain mobs - plugin?

cayman123

New Member
Joined
May 7, 2014
Messages
29
Reaction score
0
im using exilebuddy beta, is there a plugin(couldnt find one) to skip certain mobs (kuduku, exiles, living blood/congealing mud)?
i imagine him getting oneshotted by those fire bombs from congealing mud and some exiles prob too (playing hardcore)

thanks
 
thanks that works - just what i was looking for

what about certain mods such as Bond of Chaos? any way to modify the exampleroutines to skip them as well?
 
^yes. But that requires a little investigation for yourself, objectexplorer I think it is, and there is likely a thread with that information being built as the league matures.

wimm
 
You got to investigate what is the "buff" name that such mobs get. This you can achieve by once encountering them, open the object explorer and i think under mobs you see their buffs.

Once you find that out, you just have to implement in the code in your CR, that once you find a mob with that buff, should logout, reset or whatever . . .
 
thanks that works - just what i was looking for

what about certain mods such as Bond of Chaos? any way to modify the exampleroutines to skip them as well?

There's buffs/auras and then mods.

It's possible to ignore those as well, but you need to know the id of the mod first. I won't have an ETA for it, but I'll try to dump the new mods to get that info usable, but basically you'd use code similar to Necros:
Code:
            // Necros
            if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("RaisesUndead")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("RaisesUndead")))
            {
                weight += 30;
            }

Except rather than weight, you'd exclude it from targeting, so you'd return false rather than add to weight.

Doing a quick look at some of the new files in the GGPK, it might just be "ChaosBond" for the internal name for what you asked about, but you'd have to verify with the Object Explorer to be sure.
 
thanks for the quick reply and great explanation, so it should look like this?

Code:
            // Necros
            if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("ChaosBond")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("ChaosBond")))
            {
                return false;
            }
i tried a few different bloodline mods with objectexplorer, there were already alot of the bloodlines added.

this is sharedpowercharges obviously
Code:
	Level: 1, Category: Bloodlines, InternalName: MonsterBloodlinesSharedPowerCharge, DisplayName: Shared Boon, IsHidden: False,
is this code correct?
Code:
 if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("SharedPowerCharge")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("SharedPowerCharge")))
            {
                return false;
            }

and this should be mark of cannibalism(for testing purpose), where do i find the ID?
Code:
_28: 0x0
BaseComponentPtr: 0x7CC7F0B0
WorldPosition.X: 20038,04
WorldPosition.Y: 12961,96
WorldPosition.Z: -50,56672
ModelLength: 20,38044
ModelWidth: 20,38044
ModelHeight: 42,75422
_30: 7,8125
_34: -34,94172
Name: Carrion Swarmer
Rotation.X: 5,182816
Rotation.Y: 5,182816
Rotation.Z: 0,2715445
_70: 0x1
_7C: 0x350000
_80: 0x0
_84: 0x30
TerrainHeightAt: -7,8125
_8C: First: 81215A80
Last: 81215A84
End: 81215A84
Allocator: 430000
_9C: First: 0
Last: 0
End: 0
Allocator: 0
_AC: First: 0
Last: 0
End: 0
Allocator: 0
_BC: First: 0
Last: 0
End: 0
Allocator: 430020
_CC: 0x7F828A88
_D0: 0x16358C0
_D4: 0xA8BAFD08
_D8: 0
_DC: 0
_E0: 0x0
_E4: 0x0
_E8: 0x1000000
_EC: 1
Model Size (Map): 1.87500010681152, 1.87500010681152, 3.93338815307617
Health: 0/2704 (0%)
Mana: 652/652 (100%)
Energy Shield: 0/0 (0%)
Actor Flags: Dead (00000040)
Pathing To: {1838, 1188} ({0, 0})
Stats: 
	MainHandWeaponType = 14
	OffHandWeaponType = 14
	MovementVelocityPosPct = 10
	MaximumLife = 2704
	MainHandAttackSpeedPosPct = 20
	OffHandAttackSpeedPosPct = 20
	MainHandBaseWeaponAttackDurationMs = 1500
	OffHandBaseWeaponAttackDurationMs = 1500
	MainHandMinimumAttackDistance = 4
	OffHandMinimumAttackDistance = 4
	MainHandBaseMaximumAttackDistance = 4
	OffHandBaseMaximumAttackDistance = 4
	MonsterAttackCastSpeedPosPctAndDamageNegPctFinal = 20
	MainHandMaximumAttackDistance = 4
	OffHandMaximumAttackDistance = 4
	CombinedAllDamageOverTimePosPct = 30
	MonsterDropHigherLevelGear = 1
	ItemDropSlots = 1
	MaximumPhysicalDamageReductionPct = 75
	BaseEvasionRating = 1413
	BaseMaximumLife = 942
	BaseMaximumMana = 200
	ManaRegenerationRatePerMinutePct = 100
	BaseMaximumEnergyShield = 0
	EnergyShieldRechargeRatePerMinutePct = 2000
	EnergyShieldDelayNegPct = 50
	ResistAllElementsPctPerEnduranceCharge = 15
	MaximumFireDamageResistancePct = 75
	BaseFireDamageResistancePct = 0
	MaximumColdDamageResistancePct = 75
	BaseColdDamageResistancePct = 0
	MaximumLightningDamageResistancePct = 75
	BaseLightningDamageResistancePct = 0
	MaximumChaosDamageResistancePct = 75
	BaseChaosDamageResistancePct = 0
	MovementVelocityPosPctPerFrenzyCharge = 3
	MaxEnduranceCharges = 3
	MaxFrenzyCharges = 3
	MaxPowerCharges = 3
	MaximumMana = 652
	ManaRegenerationRatePerMinute = 652
	EvasionRating = 1413
	MainHandAccuracyRating = 205
	OffHandAccuracyRating = 205
	BaseAttackSpeedPosPctPerFrenzyCharge = 20
	IntermediaryMaximumLife = 942
	PhysicalDamageReductionPctPerEnduranceCharge = 15
	MaximumBlockPct = 75
	BaseCastSpeedPosPctPerFrenzyCharge = 20
	MaxViperStrikeOrbs = 4
	MaxFuseArrowOrbs = 5
	CriticalStrikeChancePosPctPerPowerCharge = 200
	BaseCriticalStrikeMultiplier = 130
	MainHandCriticalStrikeMultiplier = 130
	OffHandCriticalStrikeMultiplier = 130
	SpellCriticalStrikeMultiplier = 130
	ChanceToHitPct = 95
	ChanceToEvadePct = 95
	SecondaryCriticalStrikeMultiplier = 130
	MainHandLocalAccuracyRating = 205
	OffHandLocalAccuracyRating = 205
	BaseNumberOfTotemsAllowed = 1
	BaseNumberOfTrapsAllowed = 3
	BaseNumberOfRemoteMinesAllowed = 5
	BaseMaximumFireDamageResistancePct = 75
	BaseMaximumColdDamageResistancePct = 75
	BaseMaximumLightningDamageResistancePct = 75
	BaseMaximumChaosDamageResistancePct = 75
	NumberOfTrapsAllowed = 3
	NumberOfRemoteMinesAllowed = 5
	NumberOfTotemsAllowed = 1
	MovementVelocityCap = 128
	IntermediaryMaximumLifeIncludingChaosInnoculation = 942
	ManaRecoveryPerMinute = 652
	TotalBaseEvasionRating = 1413
	AttackSpeedPosPctPerFrenzyCharge = 20
	CastSpeedPosPctPerFrenzyCharge = 20
	MaxCorruptedBloodStacks = 20
	MonsterLevelScaleMaximumManaAndManaCostPosPctFinal = 226
	MaxCorruptedBloodRainStacks = 20
	MaximumDodgeChancePct = 75
	MaximumSpellDodgeChancePct = 75
Current Auras:
Rarity: Magic
Implicit Affixes:
	Level: 1, Category: MonsterSlainExperience, InternalName: MonsterMagic1, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 250, Max: 250, Stat: 10, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MaximumLifeIncreasePercent, InternalName: MonsterMagic2, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 187, Max: 187, Stat: 125, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MonsterDroppedItemQuantity, InternalName: MonsterMagic3, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 600, Max: 600, Stat: 12, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MonsterDroppedItemRarity, InternalName: MonsterMagic4, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 200, Max: 200, Stat: 11, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MonsterDamage, InternalName: MonsterMagic5, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 30, Max: 30, Stat: 25, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MonsterSlainFlaskCharges, InternalName: MonsterMagic6, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 250, Max: 250, Stat: 465, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MonsterDoesNotFlee, InternalName: MonsterMagic7, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 50, Max: 50, Stat: 521, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MovementVelocity, InternalName: MonsterMagic8, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 10, Max: 10, Stat: 181, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MonsterSpeedAndDamageFixupRarity, InternalName: MonsterMagic9, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 20, Max: 20, Stat: 882, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
	Level: 1, Category: MonsterHighLevelDrops, InternalName: MonsterMagic10, DisplayName: , IsHidden: True, IsPrefix: False, IsSuffix: False, Stats: Min: 1, Max: 1, Stat: 2078, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
Explicit Affixes:
	Level: 1, Category: FireDamageAsPortionOfDamage, InternalName: MonsterFire1, DisplayName: of Flames, IsHidden: False, IsPrefix: False, IsSuffix: True, Stats: Min: 25, Max: 25, Stat: 453, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0
Walk Triangles:
Projection Triangles:
Dword0: 22521604
Dword4: 3292120160

Stats: 
	MainHandWeaponType = 14
	OffHandWeaponType = 14
	MovementVelocityPosPct = 10
	MaximumLife = 2704
	MainHandAttackSpeedPosPct = 20
	OffHandAttackSpeedPosPct = 20
	MainHandBaseWeaponAttackDurationMs = 1500
	OffHandBaseWeaponAttackDurationMs = 1500
	MainHandMinimumAttackDistance = 4
	OffHandMinimumAttackDistance = 4
	MainHandBaseMaximumAttackDistance = 4
	OffHandBaseMaximumAttackDistance = 4
	MonsterAttackCastSpeedPosPctAndDamageNegPctFinal = 20
	MainHandMaximumAttackDistance = 4
	OffHandMaximumAttackDistance = 4
	CombinedAllDamageOverTimePosPct = 30
	MonsterDropHigherLevelGear = 1
	ItemDropSlots = 1
	MaximumPhysicalDamageReductionPct = 75
	BaseEvasionRating = 1413
	BaseMaximumLife = 942
	BaseMaximumMana = 200
	ManaRegenerationRatePerMinutePct = 100
	BaseMaximumEnergyShield = 0
	EnergyShieldRechargeRatePerMinutePct = 2000
	EnergyShieldDelayNegPct = 50
	ResistAllElementsPctPerEnduranceCharge = 15
	MaximumFireDamageResistancePct = 75
	BaseFireDamageResistancePct = 0
	MaximumColdDamageResistancePct = 75
	BaseColdDamageResistancePct = 0
	MaximumLightningDamageResistancePct = 75
	BaseLightningDamageResistancePct = 0
	MaximumChaosDamageResistancePct = 75
	BaseChaosDamageResistancePct = 0
	MovementVelocityPosPctPerFrenzyCharge = 3
	MaxEnduranceCharges = 3
	MaxFrenzyCharges = 3
	MaxPowerCharges = 3
	MaximumMana = 652
	ManaRegenerationRatePerMinute = 652
	EvasionRating = 1413
	MainHandAccuracyRating = 205
	OffHandAccuracyRating = 205
	BaseAttackSpeedPosPctPerFrenzyCharge = 20
	IntermediaryMaximumLife = 942
	PhysicalDamageReductionPctPerEnduranceCharge = 15
	MaximumBlockPct = 75
	BaseCastSpeedPosPctPerFrenzyCharge = 20
	MaxViperStrikeOrbs = 4
	MaxFuseArrowOrbs = 5
	CriticalStrikeChancePosPctPerPowerCharge = 200
	BaseCriticalStrikeMultiplier = 130
	MainHandCriticalStrikeMultiplier = 130
	OffHandCriticalStrikeMultiplier = 130
	SpellCriticalStrikeMultiplier = 130
	ChanceToHitPct = 95
	ChanceToEvadePct = 95
	SecondaryCriticalStrikeMultiplier = 130
	MainHandLocalAccuracyRating = 205
	OffHandLocalAccuracyRating = 205
	BaseNumberOfTotemsAllowed = 1
	BaseNumberOfTrapsAllowed = 3
	BaseNumberOfRemoteMinesAllowed = 5
	BaseMaximumFireDamageResistancePct = 75
	BaseMaximumColdDamageResistancePct = 75
	BaseMaximumLightningDamageResistancePct = 75
	BaseMaximumChaosDamageResistancePct = 75
	NumberOfTrapsAllowed = 3
	NumberOfRemoteMinesAllowed = 5
	NumberOfTotemsAllowed = 1
	MovementVelocityCap = 128
	IntermediaryMaximumLifeIncludingChaosInnoculation = 942
	ManaRecoveryPerMinute = 652
	TotalBaseEvasionRating = 1413
	AttackSpeedPosPctPerFrenzyCharge = 20
	CastSpeedPosPctPerFrenzyCharge = 20
	MaxCorruptedBloodStacks = 20
	MonsterLevelScaleMaximumManaAndManaCostPosPctFinal = 226
	MaxCorruptedBloodRainStacks = 20
	MaximumDodgeChancePct = 75
	MaximumSpellDodgeChancePct = 75
MagicProperties: (Magic)
	MonsterSlainExperiencePosPct = 250
	MonsterDroppedItemRarityPosPct = 200
	MonsterDroppedItemQuantityPosPct = 600
	DamagePosPct = 30
	MaximumLifePosPct = 187
	BaseMovementVelocityPosPct = 10
	PhysicalDamagePctToAddAsFire = 25
	MonsterSlainFlaskChargesGrantedPosPct = 250
	MonsterChanceToNotFleePct = 50
	MonsterRarityAttackCastSpeedPosPctAndDamageNegPctFinal = 20
	MonsterDropHigherLevelGear = 1
 
Last edited:
I would think so based on the format of the names, but you really need to find a mob with it to be 100% sure. :)

is this code correct?

Since the check is for InternalName, and you're doing a Contains with a portion of the real name, SharedPowerCharge, and the real internal name is MonsterBloodlinesSharedPowerCharge, that would indeed be correct, since SharedPowerCharge is contained within MonsterBloodlinesSharedPowerCharge.

and this should be mark of cannibalism(for testing purpose), where do i find the ID?

It looks like the mob you checked had it's buff expire or mod removed, or you accidentally grabbed the wrong one. I don't see any information there for that mob/aura.
 
something went wrong..
Compiler Error: d:\Downloads\ExilebuddyBETA 0.1.2931.970\Routines\ExampleRoutine\ExampleRoutine.cs(140,17) : error CS0127: Da 'ExampleRoutine.ExampleRoutine.CombatTargetingOnWeightCalculation(Loki.Game.Objects.NetworkObject, ref float)' 'void' zurückgibt, darf auf ein Rückgabeschlüsselwort kein Objektausdruck folgen.

this is livingblood
Level: 1, Category: Bloodlines, InternalName: MonsterBloodlinesCongealingBloodRed_, DisplayName: Living Blood, IsHidden: False
Level: 1, Category: Bloodlines, InternalName: MonsterBloodlinesCongealingBloodRed_, DisplayName: Living Blood, IsHidden: False, IsPrefix: False, IsSuffix: False, Stats: Min: 1, Max: 1, Stat: 2586, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0, Min: 0, Max: 0, Stat: 0

Code:
  // Congealing Mud
            if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("CongealingBlood")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("CongealingBlood")))
            {
               [COLOR="#FF0000"] return false;[/COLOR]
            }

changed it to this, no more compiler errors but it didnt work so there must be something wrong. shouldnt he tp+remake or quit the game when encountering those affixes?
Code:
  // Congealing Mud
            if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("CongealingBlood")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("CongealingBlood")))
            {
             [COLOR="#FF0000"]   return;[/COLOR]
            }
 
Last edited:
Compiler Error: d:\Downloads\ExilebuddyBETA 0.1.2931.970\Routines\ExampleRoutine\ExampleRoutine.cs(140,17) : error CS0127: Da 'ExampleRoutine.ExampleRoutine.CombatTargetingOnWeightCalculation(Loki.Game.Objects.NetworkObject, ref float)' 'void' zurückgibt, darf auf ein Rückgabeschlüsselwort kein Objektausdruck folgen.

i already posted it in the previous post but its in german ;/ this is my translation
Compiler Error: d:\Downloads\ExilebuddyBETA 0.1.2931.970\Routines\ExampleRoutine\ExampleRoutine.cs(140,17) : error CS0127: Da 'ExampleRoutine.ExampleRoutine.CombatTargetingOnWeightCalculation(Loki.Game.Objects.NetworkObject, ref float)' 'void' returns, return keyword cant be followed by object expression


he is pointing at the beginning of this line: return false;

Code:
    if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("CongealingBloodRed_")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("CongealingBloodRed_")))
            {
[COLOR="#FF0000"]                return false;
[/COLOR]            }
 
Last edited:
ok, so you are putting this code in your onweight calculation? It should be in the
Code:
       private bool CombatTargetingOnInclusionCalcuation(NetworkObject entity)
        {
            try
            {
                var m = entity as Monster;
                if (m == null)
                    return false;
// Congealing Mud
            if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("CongealingBlood")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("CongealingBlood")))
            {
                return false;
            }

wimm
 
that makes sense, no more compiler errors thank you!

success! he skipped the mobs - but he better teleport back to town and remake the zone, is this possible?
 
Last edited:
Here's a link to that reply: #55 (You can right click on the post number on the right and get the direct link to it, if you didn't know already :))
 
thanks, i used that code for skipping kuduku / exiles

Code:
//Level: 1, Category: Bloodlines, InternalName: MonsterBloodlinesCongealingBloodRed_, DisplayName: Living Blood, IsHidden: False, IsPrefix: False, IsSuffix: False
				if (m.HasAura("MonsterBloodlinesCongealingBloodRed_"))
                {
					// Tell the  bot we should not return to this instance.
                    AreaStateCache.SetNewInstanceOverride(LokiPoe.CurrentWorldArea.Id, true);
                    // Tell the bot we want to do a town run, and to not return via the portal we're about to make.
                    Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBotSettings.Instance.NeedsTownRun = 2;

                    // Just blacklist the scary mob so we cna log it.
[COLOR="#FF0000"]                    //AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), string.Format("Scary monster: {0}", m.Name));
[/COLOR]                    // Return false, so we don't include it in targeting.
                    return false;
                }
should i comment this line in red?

so this should TP outside and remake if i put it inside
private bool CombatTargetingOnInclusionCalcuation(NetworkObject entity)

cant test it since there just was another update :mad:
 
Last edited:
You don't have to comment it out. It's there to prevent it from being processed more than once, so it's fine uncommented.

A new build will be made shortly after I check over what actually changed. The patch notes were pretty vague for a new client.
 
i dont know why its not working.. maybe someone could take a look please
that code from wimm worked but i wanted him to tp+remake zone so i tried to combine the m.hasAura() function with the content from skipping kuduku etc. but somehow it didnt change anything.

Code:
        private bool CombatTargetingOnInclusionCalcuation(NetworkObject entity)
        {
            try
            {
                var m = entity as Monster;
                if (m == null)
                    return false;

                if (AreaStateCache.Current.IsBlacklisted(m))
                    return false;

                // Do not consider inactive/dead mobs.
                if (!m.IsActive)
                    return false;

                // Ignore any mob that cannot die.
                if (m.CannotDie)
                    return false;

                // Ignore mobs that are too far to care about.
                if (m.Distance > (_currentLeashRange != -1 ? ExampleRoutineSettings.Instance.CombatRange : 300))
                    return false;
				
				//Level: 1, Category: Bloodlines, InternalName: MonsterBloodlinesGhostTotem, DisplayName: Heralds of the Obelisk,
							if (m.HasAura("MonsterBloodlinesGhostTotem"))
                {
					// Tell the  bot we should not return to this instance.
                    AreaStateCache.SetNewInstanceOverride(LokiPoe.CurrentWorldArea.Id, true);
                    // Tell the bot we want to do a town run, and to not return via the portal we're about to make.
                    Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBotSettings.Instance.NeedsTownRun = 2;

                    // Just blacklist the scary mob so we cna log it.
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), string.Format("Scary monster: {0}", m.Name));
                    // Return false, so we don't include it in targeting.
                    return false;
                }
				
				//Level: 1, Category: Bloodlines, InternalName: MonsterBloodlinesCongealingBloodRed_, DisplayName: Living Blood,

				if (m.HasAura("MonsterBloodlinesCongealingBloodRed_"))
                {
					// Tell the  bot we should not return to this instance.
                    AreaStateCache.SetNewInstanceOverride(LokiPoe.CurrentWorldArea.Id, true);
                    // Tell the bot we want to do a town run, and to not return via the portal we're about to make.
                    Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBotSettings.Instance.NeedsTownRun = 2;

                    // Just blacklist the scary mob so we cna log it.
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), string.Format("Scary monster: {0}", m.Name));
                    // Return false, so we don't include it in targeting.
                    return false;
                }
				
				//Level: 1, Category: Bloodlines, InternalName: MonsterBloodlinesGuardian, DisplayName: Bearers of the Guardian,
				
				if (m.HasAura("Guardian"))
                {
					// Tell the  bot we should not return to this instance.
                    AreaStateCache.SetNewInstanceOverride(LokiPoe.CurrentWorldArea.Id, true);
                    // Tell the bot we want to do a town run, and to not return via the portal we're about to make.
                    Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBotSettings.Instance.NeedsTownRun = 2;

                    // Just blacklist the scary mob so we cna log it.
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), string.Format("Scary monster: {0}", m.Name));
                    // Return false, so we don't include it in targeting.
                    return false;
                }
				
				
				
                if (m.HasAura("bloodlines_necrovigil"))
                {
                    Log.ErrorFormat("[CombatTargetingOnInclusionCalcuation] {0} ({1}) has bloodlines_necrovigil!", m.Name, m.Id);
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), "bloodlines_necrovigil");
                    return false;
                }
				
				 if (m.Name == "Kuduku, the False God" || 
					 m.Name == "Animated Guardian" || 
					 m.Name == "Congealing Blood" || 
					 m.Name == "Congealing Mud" || 
					 m.Name == "Kuduku, the False God5" || 
					 m.Name == "Kuduku, the False God6")
                {
                    // Tell the  bot we should not return to this instance.
                    AreaStateCache.SetNewInstanceOverride(LokiPoe.CurrentWorldArea.Id, true);

                    // Tell the bot we want to do a town run, and to not return via the portal we're about to make.
                    Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBotSettings.Instance.NeedsTownRun = 2;

                    // Just blacklist the scary mob so we cna log it.
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), string.Format("Scary monster: {0}", m.Name));

                    // Return false, so we don't include it in targeting.
                    return false;
                }
            }
            catch (Exception ex)
            {
                Log.Error("[CombatOnInclusionCalcuation]", ex);
                return false;
            }
            return true;
        }

both "MonsterBloodlinesCongealingBloodRed_" and "Guardian" doesnt work
skipping kuduku, animated guardian etc does work
 
HasAura is not the same as ExplicitAffixes/ImplicitAffixes!

Run "DumpBuffDefinitions" from the Dev tab, for a list of names you can use for that.

ExplicitAffixes/ImplicitAffixes must be checked in a similar way WIMM showed.
 
yeah my bad, auras isnt the same as affixes, true. but the necrovigil in exampleroutines is looking for an aura
Code:
if (m.HasAura("bloodlines_necrovigil"))
                {
                    Log.ErrorFormat("[CombatTargetingOnInclusionCalcuation] {0} ({1}) has bloodlines_necrovigil!", m.Name, m.Id);
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), "bloodlines_necrovigil");
                    return false;
                }

i was able to skip the mobs again but still no tp+remake zone ;/
Code:
  private bool CombatTargetingOnInclusionCalcuation(NetworkObject entity)
        {
            try
            {
                var m = entity as Monster;
                if (m == null)
                    return false;

                if (AreaStateCache.Current.IsBlacklisted(m))
                    return false;

                // Do not consider inactive/dead mobs.
                if (!m.IsActive)
                    return false;

                // Ignore any mob that cannot die.
                if (m.CannotDie)
                    return false;

                // Ignore mobs that are too far to care about.
                if (m.Distance > (_currentLeashRange != -1 ? ExampleRoutineSettings.Instance.CombatRange : 300))
                    return false;
		[COLOR="#FF0000"]		// for testing purpose the first bloodline i was able to find
				if (m.ExplicitAffixes.Any(a => a.InternalName.Contains("MonsterBloodlinesSpeedCharges")) ||
                m.ImplicitAffixes.Any(a => a.InternalName.Contains("MonsterBloodlinesSpeedCharges")))[/COLOR]
				{
					 // Tell the  bot we should not return to this instance.
                    AreaStateCache.SetNewInstanceOverride(LokiPoe.CurrentWorldArea.Id, true);

                    // Tell the bot we want to do a town run, and to not return via the portal we're about to make.
                    Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBotSettings.Instance.NeedsTownRun = 2;

                    // Just blacklist the scary mob so we cna log it.
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), string.Format("Scary monster: {0}", m.Name));

                    // Return false, so we don't include it in targeting.
                    return false;
				}

                if (m.HasAura("bloodlines_necrovigil"))
                {
                    Log.ErrorFormat("[CombatTargetingOnInclusionCalcuation] {0} ({1}) has bloodlines_necrovigil!", m.Name, m.Id);
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), "bloodlines_necrovigil");
                    return false;
                }
				
[COLOR="#0000FF"]				if (m.Name == "Animated Guardian" || 
[/COLOR]					 m.Name == "Kuduku" || 
					 m.Name == "Congealing Mud" || 
					 m.Name == "Congealing Blood" || 
					 m.Name == "Kuduku, the False God5" || 
					 m.Name == "Kuduku, the False God6")
                {
                    // Tell the  bot we should not return to this instance.
                    AreaStateCache.SetNewInstanceOverride(LokiPoe.CurrentWorldArea.Id, true);

                    // Tell the bot we want to do a town run, and to not return via the portal we're about to make.
                    Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBotSettings.Instance.NeedsTownRun = 2;

                    // Just blacklist the scary mob so we cna log it.
                    AreaStateCache.Current.Blacklist(m.Id, TimeSpan.FromHours(1), string.Format("Scary monster: {0}", m.Name));

                    // Return false, so we don't include it in targeting.
                    return false;
                }
				
				
            }
            catch (Exception ex)
            {
                Log.Error("[CombatOnInclusionCalcuation]", ex);
                return false;
            }
            return true;
        }


those lines in blue resulted in this log
Code:
[GridExplorer] Now segmenting the current area.
[GridExplorer] Area segmentation complete 00:00:00.4258320.
[SetNewInstanceOverride] MapTier3_1 = True
[Blacklist] Blacklisting object with id 1575 for 01:00:00 (Expires at: 12/23/2014 09:15:17). Reason: Scary monster: Animated Guardian
[CloseBlockingWindows] LokiPoe.Gui.IsLeftPanelShown || LokiPoe.Gui.IsRightPanelShown. Closing them.
[IdTask] We cannot id items out of town/hideout. Skipping this task until an area change or restart.
[WithdrawTask] We cannot withdraw items out of town/hideout. Skipping this task until an area change or restart.
[TrackMobsTask] Alive monster is nearby, this is our 1/50 attempt to kill it.
[ResetAnchorPoint] Setting AnchorPoint to {1134, 460} for 2451584503.
[ResetAnchorPoint] Setting CurrentAnchorPoint to {1134, 460} for 2451584503.
[TrackMobsTask] Alive monster is nearby, this is our 2/50 attempt to kill it.
[TrackMobsTask] Alive monster is nearby, this is our 3/50 attempt to kill it.
[TrackMobsTask] Alive monster is nearby, this is our 4/50 attempt to kill it.
[TrackMobsTask] Alive monster is nearby, this is our 5/50 attempt to kill it.
[TrackMobsTask] Alive monster is nearby, this is our 6/50 attempt to kill it.
[TrackMobsTask] Alive monster is nearby, this is our 7/50 attempt to kill it.
[TrackMobsTask] Alive monster is nearby, this is our 8/50 attempt to kill it.

lines in red
Code:
[GridExplorer] Area segmentation complete 00:00:01.1028692.
[AreaStateCache] The location 10192 [Orb of Transmutation] is being added.
[SetNewInstanceOverride] MapTier2_4 = True
[Blacklist] Blacklisting object with id 9577 for 01:00:00 (Expires at: 12/23/2014 09:34:51). Reason: Scary monster: Brittle Archer

since he blacklisted and "ignored" the mobs i think he passed the condition but he should TP outside asap and remake the zone/change map ;/

i also attempted to run DumpBuffDefinitions from the Dev tab. i tried to run the file DumpBuffDefinitions.cs and/or copy the source code and click run but either way there didnt happen anything. no idea how to use it.

im using the maprunner plugin btw, maybe this is messing it up.


sorry for all the trouble i just have some basic understanding
 
Last edited:
Back
Top