DPB1Class · Game state and actions

LokiPoe.ObjectManager

Retrieve informations about all the game Objects, Npcs, Monsters, WorldItems, AreaTransitions, but also interactable objects like Blight Towers, Ultimatum monolith, harmfull effects, etc etc. Litterally all the dynamic objects placed in game by the server. Use this wisely, as even if the ObjectManager have a cache that is refreshed every 30ms, calling it that fast, is really cpu intensive, you should code your components in the most efficent way possible.

Namespace: DreamPoeBot.Loki.Game

public static class LokiPoe.ObjectManagerView DPB2 version →

Examples

Imports used by these examples
using System;
using System.Linq;
using DreamPoeBot.Loki.Game;
using DreamPoeBot.Loki.Game.Objects;
using DreamPoeBot.Loki.Bot;
using DreamPoeBot.Loki.Bot.Pathfinding;
using DreamPoeBot.Loki.Common;

Find a targetable transition

var transition = LokiPoe.ObjectManager
    .GetObjectsByType<AreaTransition>()
    .FirstOrDefault(item => item.IsTargetable);

if (transition == null)
    return;

Requires System.Linq. This selects an object; it does not interact with it.

Members and overloads

51 results

AreaTransition

MethodLink ↗
public static AreaTransition LokiPoe.ObjectManager.AreaTransition(string name)

Retrieve a specific AreaTransition by its Name.

namestring
The name of the AreaTransition to retrieve

Returns: A AreaTransition object if found, or null.

ClearAwake

MethodLink ↗
public static void LokiPoe.ObjectManager.ClearAwake()

This will Clear the actual cache, you dont need to call this function, the cache is rebuild every 30ms.

CorruptedAreaTransition

MethodLink ↗
public static AreaTransition LokiPoe.ObjectManager.CorruptedAreaTransition()

Retrieve a specific corrupted AreaTransition by its Name.

Returns: A AreaTransition object if found, or null.

GetExpeditionPlacementIndicator

MethodLink ↗
public static ExpeditionPlacementIndicator LokiPoe.ObjectManager.GetExpeditionPlacementIndicator()

Retrieve the ExpeditionPlacementIndicator as NetworkObject.

Returns: The NetworkObject retrieved, or null.

GetMetadatas

MethodLink ↗
public static IEnumerable<string> LokiPoe.ObjectManager.GetMetadatas(params LokiPoe.ObjectManager.PoeObjectEnum[] enums)

Returns metadatas using the supplied arguments.

enumsPoeObjectEnum[]
Specifies enums.

Returns: The IEnumerable<string> result.

GetObjectByAddress

MethodLink ↗
public static NetworkObject LokiPoe.ObjectManager.GetObjectByAddress(long addr)

Retrieve a specific NetworkObject by its address.

addrlong
The address of the NetworkObject to retrieve

Returns: The NetworkObject retrieved, or null.

GetObjectById

MethodLink ↗
public static NetworkObject LokiPoe.ObjectManager.GetObjectById(long id)

Retrieve a specific NetworkObject by its id. Please note, this is the faster way to retrieve NetworkObjects, as it directly pull them from the game dictionary Id, address.

idlong
The id of the NetworkObject to retrieve

Returns: The NetworkObject retrieved, or null.

GetObjectById

MethodLink ↗
public static T LokiPoe.ObjectManager.GetObjectById<T>(long id) where T : class

Retrieve a specific Type Object by its id. Please note, this is the faster way to retrieve NetworkObjects, as it directly pull them from the game dictionary Id, address.

idlong
The id of the object to retrieve

Returns: The T object retrieved, or null.

GetObjectByMetadata

MethodLink ↗
public static NetworkObject LokiPoe.ObjectManager.GetObjectByMetadata(string metadata)

Retrieve a specific NetworkObject by its metadata.

metadatastring
The metadata of the NetworkObject to retrieve

Returns: The NetworkObject retrieved, or null.

GetObjectByName

MethodLink ↗
public static NetworkObject LokiPoe.ObjectManager.GetObjectByName(string name)

Retrieve a specific NetworkObject by its name.

namestring
The name of the NetworkObject to retrieve

Returns: The NetworkObject retrieved, or null.

GetObjectByName

MethodLink ↗
public static T LokiPoe.ObjectManager.GetObjectByName<T>(string name) where T : class

Retrieve a specific Type object by its name.

namestring
The name of the object to retrieve

Returns: The T object retrieved, or null.

GetObjectByType

MethodLink ↗
public static T LokiPoe.ObjectManager.GetObjectByType<T>() where T : class

Retrieve the first objects of a specific T Type found.

Returns: The first objects of a specific T Type found, or null.

GetObjects

MethodLink ↗
public static IEnumerable<NetworkObject> LokiPoe.ObjectManager.GetObjects(params LokiPoe.ObjectManager.PoeObjectEnum[] enums)

Retrieve a IEnumerable NetworkObject given a array of PoeObjectEnum.

enumsPoeObjectEnum[]
A array of PoeObjectEnum

Returns: A IEnumerable NetworkObject found.

GetObjects

MethodLink ↗
public static IEnumerable<NetworkObject> LokiPoe.ObjectManager.GetObjects(IEnumerable<LokiPoe.ObjectManager.PoeObjectEnum> enums)

Retrieve a IEnumerable NetworkObject given a IEnumerable PoeObjectEnum .

enumsIEnumerable<PoeObjectEnum>
a IEnumerable PoeObjectEnum

Returns: A IEnumerable NetworkObject found.

GetObjectsByMetadata

MethodLink ↗
public static IEnumerable<NetworkObject> LokiPoe.ObjectManager.GetObjectsByMetadata(string metadata)

Retrieve a IEnumerable NetworkObject given a string rapresenting metadata

metadatastring
The string rapresenting metadata to search for

Returns: A IEnumerable NetworkObject found.

GetObjectsByMetadatas

MethodLink ↗
public static IEnumerable<NetworkObject> LokiPoe.ObjectManager.GetObjectsByMetadatas(IEnumerable<string> metadatas)

Retrieve a IEnumerable NetworkObject given a IEnumerable of string rapresenting metadata

metadatasIEnumerable<string>
The IEnumerable of string rapresenting metadata to search for

Returns: A IEnumerable NetworkObject found.

GetObjectsByMetadatas

MethodLink ↗
public static IEnumerable<NetworkObject> LokiPoe.ObjectManager.GetObjectsByMetadatas(params string[] metadatas)

Retrieve a IEnumerable NetworkObject given a array of string rapresenting metadata

metadatasstring[]
The array string rapresenting metadata to search for

Returns: A IEnumerable NetworkObject found.

GetObjectsByName

MethodLink ↗
public static IEnumerable<NetworkObject> LokiPoe.ObjectManager.GetObjectsByName(string name)

Retrieve a IEnumerable NetworkObject given a string rapresenting it name.

namestring
The name of the Objects to search for.

Returns: A IEnumerable NetworkObject found.

GetObjectsByName

MethodLink ↗
public static IEnumerable<T> LokiPoe.ObjectManager.GetObjectsByName<T>(string name) where T : class

Retrieve a IEnumerable Type T given a string rapresenting it name.

namestring
The name of the Objects to search for.

Returns: A IEnumerable of Type T found.

GetObjectsByPosition

MethodLink ↗
public static IEnumerable<T> LokiPoe.ObjectManager.GetObjectsByPosition<T>(Vector2i position) where T : NetworkObject

Retrieve a IEnumerable Type T given a Vector2i rapresenting it position.

positionVector2i
A Vector2i rapresenting the exact position to look for.

Returns: >A IEnumerable of Type T found.

GetObjectsByType

MethodLink ↗
public static IEnumerable<T> LokiPoe.ObjectManager.GetObjectsByType<T>() where T : class

Retrieve All objects of Type T

Returns: A IEnumerable of Type T found.

TownPortal

MethodLink ↗
public static Portal LokiPoe.ObjectManager.TownPortal(string ownerName)

Retrieve a TownPortal given the Owner name.

ownerNamestring
The owner name.

Returns: A Portal found, or null.

AflictionInitiator

PropertyLink ↗
public static AflictionInitiator LokiPoe.ObjectManager.AflictionInitiator { get; }

Retrieve the closer objects of type AflictionInitiator.

AllObjectsOverride

PropertyLink ↗
public static bool LokiPoe.ObjectManager.AllObjectsOverride { get; set; }

If set to true, it will ignore the cache and recollect all objects at every single call of the ObjectManager. Use carefully, this will eat alot of cpu. Default value is false.

AnyDoors

PropertyLink ↗
public static IEnumerable<TriggerableBlockage> LokiPoe.ObjectManager.AnyDoors { get; }

Retrieve All objects of type TriggerableBlockage, this specific method do retrieve Doors, GoldenDoors, SilverDoor, LockedDoor, HiddenDoor.

ArchnemesisTrappedMonsters

PropertyLink ↗
public static IEnumerable<ArchnemesisTrappedMonster> LokiPoe.ObjectManager.ArchnemesisTrappedMonsters { get; }

Retrieve All objects of type ArchnemesisTrappedMonster.

BlightDefensiveTowers

PropertyLink ↗
public static IEnumerable<BlightDefensiveTower> LokiPoe.ObjectManager.BlightDefensiveTowers { get; }

Retrieve All objects of type BlightDefensiveTower.

ClosestMaster

PropertyLink ↗
public static NetworkObject LokiPoe.ObjectManager.ClosestMaster { get; }

Retrieve the closer Master, or null if none are found.

Doors

PropertyLink ↗
public static IEnumerable<TriggerableBlockage> LokiPoe.ObjectManager.Doors { get; }

Retrieve All objects of type TriggerableBlockage, this specific method do retrieve ONLY Doors

GoldenChests

PropertyLink ↗
public static IEnumerable<NetworkObject> LokiPoe.ObjectManager.GoldenChests { get; }

Retrieve All objects of type NetworkObject, where the name is equal to `Golden Chest`

Related types

DPB1 0.3.29.47 · Reference reviewed 2026-10-02. Descriptions use source summaries where available, otherwise concise signature-based descriptions. Examples illustrate usage; they are not a live-game test.