W3Booster SDK 4.8.0
    Preparing search index...

    Interface Hero

    An observed unit instance. IDs are opaque strings scoped to match.id.

    interface Hero {
        abilities?: readonly HeroAbility[];
        combat?: HeroCombatTotals;
        experience?: number;
        heroOrder?: number;
        hitpoints?: ValuePool;
        id: string;
        inventory?: readonly string[];
        inventoryCharges?: readonly (number | null)[];
        inventoryCooldowns?: readonly (TimedProgress | null)[];
        isIllusion: boolean;
        level?: number;
        mana?: ValuePool;
        position?: Point;
        typeId: string;
    }

    Hierarchy (View Summary)

    Index
    abilities?: readonly HeroAbility[]
    experience?: number
    heroOrder?: number

    Native player-relative hero-bar ordering key. Lower values come first. Not a spawn timestamp or immutable slot; ownership/lifecycle changes can reassign it. Omitted until observed. Use the full instance ID as a deterministic fallback/tie-breaker.

    hitpoints?: ValuePool
    id: string
    inventory?: readonly string[]
    inventoryCharges?: readonly (number | null)[]

    Remaining charges, aligned with inventory slots. Null means unobserved or empty; zero is a known count. Missing arrays are unavailable, never catalog defaults.

    inventoryCooldowns?: readonly (TimedProgress | null)[]

    Direct engine cooldown observations, aligned with inventory slots. Null means no observed active cooldown.

    isIllusion: boolean

    Always observed by the reader. Raw collections retain illusions; selectors exclude them by default.

    level?: number
    mana?: ValuePool

    Observed current/max mana, including ordinary units. Missing means unavailable; max 0 means an observed unit without mana capacity.

    position?: Point

    Heroes: sampled every 200 ms. Structures: first observed position, retained. Ordinary units: omitted.

    typeId: string

    Actual Warcraft unit type rawcode; never an instance identity.