h1z1-server
    Preparing search index...

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    Accessors

    Methods

    Constructors

    Properties

    _characterEffects: { [effectId: number]: CharacterEffect } = {}

    Used for applied effects to a player - burning, movement speed etc.

    _containers: { [loadoutSlotId: number]: LoadoutContainer } = {}
    _equipment: { [equipmentSlotId: number]: CharacterEquipment } = {}
    _loadout: { [loadoutSlotId: number]: LoadoutItem } = {}
    _resources: { [resourceId: number]: number } = {}

    BaseFullCharacter loadout values

    abilityInitTime: number = 0

    The time (milliseconds) at which a user has sent a second melee hit

    actorModelId: number

    Id of the model that corresponds to the entity

    aimVectorWarns: number = 0

    Used to determine if a player has aimlock

    awaitingTeleportLocation?: Float32Array<ArrayBufferLike>
    characterId: string

    Universal Identifier, used for locating the home of an entity

    characterStates: CharacterStates

    Determines several states of the player such as being in water or knocked out

    creationDate: string
    crouchCount: number = 0

    Values used for detecting Enas movement (spamming crouch for an advantage)

    currentChallenge: ChallengeType = ChallengeType.NONE
    currentInteractionGuid: string = ""

    Values determined by what entity the player is looking at and in range of

    currentLoadoutSlot: LoadoutSlots = LoadoutSlots.FISTS

    Current selected slot inside the player's hotbar

    defaultLoadout: (
        { count?: undefined; item: Items }
        | { count: number; item: Items }
    )[] = characterDefaultLoadout

    Default loadout the player will spawn with

    effectTags: number[] = []

    Used for vehicle abilities, array of the corresponding vehicles effects

    factionId: number = 2
    flags: {
        bit0: number;
        bit1: number;
        bit10: number;
        bit11: number;
        bit13: number;
        bit14: number;
        bit15: number;
        bit16: number;
        bit17: number;
        bit18: number;
        bit19: number;
        bit2: number;
        bit22: number;
        bit23: number;
        bit3: number;
        bit4: number;
        bit5: number;
        bit6: number;
        bit7: number;
        bit9: number;
        knockedOut: number;
        noCollide: number;
        nonAttackable: number;
        projectileCollision: number;
    } = ...

    Adjustable flags for the lightweight, useful flags: nonAttackable - disables melee flinch noCollide - determines if NpcCollision packet gets sent on player collide bit13 - causes a crash if 1 with noCollide 1 knockedOut - currently used for determining if a character is dead

    gender: number
    groupId: number = 0

    Id of the player's group

    h1emu_ai_id?: bigint
    hairModel: string

    Values used upon character creation

    hasAlertedBees: boolean = false

    Returns true if a player has recently melee'd a bee box

    headActor: string = ...

    Returns the modelId of the lightweight, zombies or players

    healingIntervals: Record<HealTypes, null | Timeout> = ...

    Used for applying the interval of healing to be applied for any heal type

    health: number = 1000000

    Health of the lightweight

    healType: { [healType: number]: HealType } = ...

    Used for applying multiple healing types at once

    hoodState: string = "Up"
    hudIndicators: { [typeName: string]: characterIndicatorData } = {}

    Indicator's for the bottom right HUD: bleeding, bandage, BEES! etc.

    initialized: boolean = false

    Called once SendSelfToClient has been sent

    interactionDistance: number

    Distance (H1Z1 meters) at which the player can interact with the entity

    isBandaged: boolean = false
    isBleeding: boolean = false

    Used for resources

    isCoffeeSugared: boolean = false
    isCrouching: boolean = false
    isDeerScented: boolean = false
    isExhausted: boolean = false
    isHidden: string = ""

    The guid of the secured shelter the player is inside

    isInInventory: boolean = false
    isLightweight: boolean = false

    Returns true if the character is a lightweight

    isMoving: boolean = false

    Determines if a player is currently moving

    isPoisoned: boolean = false
    isReady: boolean = false
    isRespawning: boolean = false
    isRunning: boolean = false

    States set by StanceFlags

    isSitting: boolean = false
    isSpectator: boolean = false
    isVanished: boolean = false
    lastCrouchTime: number = 0
    lastDropPlaytime: number = 0
    lastInteractionRequestGuid?: string
    lastInteractionStringTime: number = 0
    lastInteractionTime: number = 0
    lastJumpTime: number = 0

    Values used by Fairplay

    lastLockFailure: number = 0

    The time at which the most recent unlock attempt, failed

    lastLoginDate: string

    Last login date for the player

    lastMeleeHitTime: number = 0

    Last time (milliseconds) the player melee'd

    lastRepairTime: number = 0
    lastSitTime: number = 0
    lastWhisperedPlayer: string

    Last player that the user has whispered to

    loadoutId: CHARACTER = LoadoutIds.CHARACTER

    Current player/vehicle loadout

    materialType: number

    The physical material the entity is made of - See enums.ts/MaterialTypes for more information

    maxHealth: number = 1000000

    Maximum health of the lightweight

    meleeHit: MeleeHit = ...

    Used for keeping track of the location and characterId of the first registered melee hit

    metrics: CharacterMetrics = ...

    Metrics of miscellaneous attributes

    mountedContainer?: BaseLootableEntity

    The current container attached in the top left of the player's inventory

    movementVersion: number = 0
    mutedCharacters: string[] = []

    List of ignored players's characterIds

    name: string

    The players in-game name

    nameId: number = 0

    Id of the lightweight, used in determining the proper name for HUDTimer and InteractionString

    navAgent?: CrowdAgent
    npcRenderDistance: number

    Distance (H1Z1 meters) where the entity will render, when undefined, uses the zoneserver._charactersRenderDistance value instead

    onReadyCallback?: (clientTriggered: ZoneClient2016) => void

    Callback for OnFullCharacterDataRequest

    ownedVehicle?: string

    CharacterId of the vehicle spawned by /hax drive or spawnVehicle

    playTime: number = 0
    positionUpdate?: positionUpdate

    Handles the current position of the player

    positionUpdateType: PositionUpdateType = PositionUpdateType.STATIC

    Determines if the lightweight is moving with the positionUpdate - Avcio

    profileId: number = 0

    Used for constructions

    recipes: { [recipeId: number]: Recipe } = recipes

    HashMap of all recipes on a server uses recipeId (number) for indexing

    resourceHudIndicators: string[] = []

    Array of the player's applied HUD indicators

    resourcesUpdater?: any

    Used to update the status of the players resources

    scale: Float32Array<ArrayBuffer> = ...

    Physical size of the entity based on the entity model

    screenEffects: string[] = []

    Screen effects applied to a player: bleeding, night vision, etc. (see ScreenEffects.json)

    sitCount: number = 0
    spawnGridData: number[] = []

    Data for the spawn grid map, keeps track of which grids to block out

    spawnLocation?: string

    The location the player spawned at

    stance?: StanceFlags

    Current stance of the player: jumping, running etc. (See getStanceFlags for all possible stances)

    starthealingInterval: (
        client: ZoneClient2016,
        server: ZoneServer2016,
        healType: HealTypes,
    ) => void

    Used for applying the interval of healing to be applied for any heal type

    state: {
        lookAt: Float32Array;
        position: Float32Array;
        rotation: Float32Array;
        yaw: number;
    }

    State of the BaseLightweightCharacter, includes: state (Float32Array), rotation(Float32Array), lookAt(Float32Array), and yaw (number)

    tempGodMode: boolean = false

    Admin tools

    temporaryActorModelId?: number
    timeouts: any
    transientId: number

    Required for interactable entities, npc and interaction components packet

    useSimpleStruct: boolean = false

    Determines if the lightweight should be used as a SimpleNpc (non-moving)

    vehicleExitDate: number = ...

    Time (milliseconds) at which the player last exited a vehicle

    weaponStance: number = 1

    Current stance of the player while holding a weapon

    isAlive: boolean = true

    Set by isAlive(state), determines whether the player is alive

    Accessors

    Methods

    • Equips an item to a BaseFullCharacter.

      Parameters

      • server: ZoneServer2016

        The ZoneServer instance.

      • Optionalitem: BaseItem

        The item to equip.

      • sendPacket: boolean = true

        Optional: Only used if character param belongs to a client. Sends equipment, loadout, and item update packets to client if true.

      • loadoutSlotId: number = 0

        Optional: The loadoutSlotId to manually try to equip the item to. This will be found automatically if not defined.

      Returns void

    • Parameters

      • slotId: number

      Returns
          | undefined
          | {
              decalAlias: string;
              effectId: number;
              modelName: string;
              SHADER_PARAMETER_GROUP: { SHADER_SEMANTIC_ID: number }[];
              slotId: number;
              textureAlias: string;
              tintAlias: string;
          }

    • Returns (
          | undefined
          | {
              decalAlias: string;
              effectId: number;
              modelName: string;
              SHADER_PARAMETER_GROUP: { SHADER_SEMANTIC_ID: number }[];
              slotId: number;
              textureAlias: string;
              tintAlias: string;
          }
      )[]

    • Parameters

      Returns {
          associatedCharacterId: string;
          bulkUsed: number;
          definitionId: number;
          guid: string;
          hasBulkLimit: boolean;
          items: {
              itemData: {
                  baseDurability: number;
                  containerDefinitionId: number;
                  containerGuid: string;
                  containerSlotId: number;
                  count: number;
                  currentDurability: number;
                  guid: string;
                  itemDefinitionId: number;
                  itemSubData: { hasSubData: boolean };
                  maxDurabilityFromDefinition: number;
                  ownerCharacterId: string;
                  tintId: number;
                  unknownBoolean1: boolean;
                  unknownDword9: number;
                  weaponData:
                      | {
                          characterStats: never[];
                          isWeapon: boolean;
                          unknownArray1: never[];
                          unknownBoolean1?: undefined;
                          unknownData1: { unknownBoolean1: boolean };
                          unknownData2: {
                              ammoSlots: { ammoSlot: number }[];
                              equipmentSlotId: number;
                              firegroups: {
                                  firegroupId: any;
                                  unknownArray1: {
                                      unknownByte1: ...;
                                      unknownDword1: ...;
                                      unknownDword2: ...;
                                      unknownDword3: ...;
                                  }[];
                              }[];
                              unknownByte2: number;
                              unknownByte3: number;
                              unknownByte4: number;
                              unknownByte5: number;
                              unknownByte6: number;
                              unknownByte7: number;
                              unknownDword1: number;
                              unknownDword2: number;
                              unknownDword3: number;
                              unknownFloat1: number;
                          };
                      }
                      | {
                          characterStats?: undefined;
                          isWeapon: boolean;
                          unknownArray1?: undefined;
                          unknownBoolean1: boolean;
                          unknownData1?: undefined;
                          unknownData2?: undefined;
                      };
              };
              itemDefinitionId: number;
          }[];
          maxBulk: number;
          showBulk: boolean;
          slots: any;
          unknownDword1: number;
      }

    • Parameters

      Returns {
          containerData: {
              associatedCharacterId: string;
              bulkUsed: number;
              definitionId: number;
              guid: string;
              hasBulkLimit: boolean;
              items: {
                  itemData: {
                      baseDurability: number;
                      containerDefinitionId: number;
                      containerGuid: string;
                      containerSlotId: number;
                      count: number;
                      currentDurability: number;
                      guid: string;
                      itemDefinitionId: number;
                      itemSubData: { hasSubData: boolean };
                      maxDurabilityFromDefinition: number;
                      ownerCharacterId: string;
                      tintId: number;
                      unknownBoolean1: boolean;
                      unknownDword9: number;
                      weaponData:
                          | {
                              characterStats: never[];
                              isWeapon: boolean;
                              unknownArray1: never[];
                              unknownBoolean1?: undefined;
                              unknownData1: { unknownBoolean1: boolean };
                              unknownData2: {
                                  ammoSlots: { ammoSlot: ... }[];
                                  equipmentSlotId: number;
                                  firegroups: { firegroupId: ...; unknownArray1: ... }[];
                                  unknownByte2: number;
                                  unknownByte3: number;
                                  unknownByte4: number;
                                  unknownByte5: number;
                                  unknownByte6: number;
                                  unknownByte7: number;
                                  unknownDword1: number;
                                  unknownDword2: number;
                                  unknownDword3: number;
                                  unknownFloat1: number;
                              };
                          }
                          | {
                              characterStats?: undefined;
                              isWeapon: boolean;
                              unknownArray1?: undefined;
                              unknownBoolean1: boolean;
                              unknownData1?: undefined;
                              unknownData2?: undefined;
                          };
                  };
                  itemDefinitionId: number;
              }[];
              maxBulk: number;
              showBulk: boolean;
              slots: any;
              unknownDword1: number;
          };
          loadoutSlotId: number;
      }[]

    • Returns {
          attachmentData: (
              | undefined
              | {
                  decalAlias: string;
                  effectId: number;
                  modelName: string;
                  SHADER_PARAMETER_GROUP: { SHADER_SEMANTIC_ID: number }[];
                  slotId: number;
                  textureAlias: string;
                  tintAlias: string;
              }
          )[];
          characterData: { characterId: string; profileId: number };
          decalAlias: string;
          equipmentSlots: (
              | undefined
              | {
                  equipmentSlotData: {
                      decalAlias: string;
                      effectId: number;
                      equipmentSlotId: number;
                      guid: string;
                      tintAlias: string;
                  };
                  equipmentSlotId: number;
              }
          )[];
          tintAlias: string;
          unknownBoolean1: boolean;
          unknownDword1: number;
      }

    • Parameters

      • slotId: number

      Returns
          | undefined
          | {
              equipmentSlotData: {
                  decalAlias: string;
                  effectId: number;
                  equipmentSlotId: number;
                  guid: string;
                  tintAlias: string;
              };
              equipmentSlotId: number;
          }

    • Parameters

      • slotId: number

      Returns
          | undefined
          | {
              attachmentData: | undefined
              | {
                  decalAlias: string;
                  effectId: number;
                  modelName: string;
                  SHADER_PARAMETER_GROUP: { SHADER_SEMANTIC_ID: number }[];
                  slotId: number;
                  textureAlias: string;
                  tintAlias: string;
              };
              characterData: { characterId: string };
              equipmentSlot:
                  | undefined
                  | {
                      equipmentSlotData: {
                          decalAlias: string;
                          effectId: number;
                          equipmentSlotId: number;
                          guid: string;
                          tintAlias: string;
                      };
                      equipmentSlotId: number;
                  };
          }

    • Returns (
          | undefined
          | {
              equipmentSlotData: {
                  decalAlias: string;
                  effectId: number;
                  equipmentSlotId: number;
                  guid: string;
                  tintAlias: string;
              };
              equipmentSlotId: number;
          }
      )[]

    • Parameters

      Returns {
          baseDurability: number;
          containerDefinitionId: number;
          containerGuid: string;
          containerSlotId: number;
          count: number;
          currentDurability: number;
          guid: string;
          itemDefinitionId: number;
          itemSubData: { hasSubData: boolean };
          maxDurabilityFromDefinition: number;
          ownerCharacterId: string;
          tintId: number;
          unknownBoolean1: boolean;
          unknownDword9: number;
          weaponData:
              | {
                  characterStats: never[];
                  isWeapon: boolean;
                  unknownArray1: never[];
                  unknownBoolean1?: undefined;
                  unknownData1: { unknownBoolean1: boolean };
                  unknownData2: {
                      ammoSlots: { ammoSlot: number }[];
                      equipmentSlotId: number;
                      firegroups: {
                          firegroupId: any;
                          unknownArray1: {
                              unknownByte1: number;
                              unknownDword1: number;
                              unknownDword2: number;
                              unknownDword3: number;
                          }[];
                      }[];
                      unknownByte2: number;
                      unknownByte3: number;
                      unknownByte4: number;
                      unknownByte5: number;
                      unknownByte6: number;
                      unknownByte7: number;
                      unknownDword1: number;
                      unknownDword2: number;
                      unknownDword3: number;
                      unknownFloat1: number;
                  };
              }
              | {
                  characterStats?: undefined;
                  isWeapon: boolean;
                  unknownArray1?: undefined;
                  unknownBoolean1: boolean;
                  unknownData1?: undefined;
                  unknownData2?: undefined;
              };
      }[]

    • Parameters

      Returns {
          baseDurability: number;
          containerDefinitionId: number;
          containerGuid: string;
          containerSlotId: number;
          count: number;
          currentDurability: number;
          guid: string;
          itemDefinitionId: number;
          itemSubData: { hasSubData: boolean };
          maxDurabilityFromDefinition: number;
          ownerCharacterId: string;
          tintId: number;
          unknownBoolean1: boolean;
          unknownDword9: number;
          weaponData:
              | {
                  characterStats: never[];
                  isWeapon: boolean;
                  unknownArray1: never[];
                  unknownBoolean1?: undefined;
                  unknownData1: { unknownBoolean1: boolean };
                  unknownData2: {
                      ammoSlots: { ammoSlot: number }[];
                      equipmentSlotId: number;
                      firegroups: {
                          firegroupId: any;
                          unknownArray1: {
                              unknownByte1: number;
                              unknownDword1: number;
                              unknownDword2: number;
                              unknownDword3: number;
                          }[];
                      }[];
                      unknownByte2: number;
                      unknownByte3: number;
                      unknownByte4: number;
                      unknownByte5: number;
                      unknownByte6: number;
                      unknownByte7: number;
                      unknownDword1: number;
                      unknownDword2: number;
                      unknownDword3: number;
                      unknownFloat1: number;
                  };
              }
              | {
                  characterStats?: undefined;
                  isWeapon: boolean;
                  unknownArray1?: undefined;
                  unknownBoolean1: boolean;
                  unknownData1?: undefined;
                  unknownData2?: undefined;
              };
      }

    • Parameters

      Returns
          | {
              characterStats: never[];
              isWeapon: boolean;
              unknownArray1: never[];
              unknownBoolean1?: undefined;
              unknownData1: { unknownBoolean1: boolean };
              unknownData2: {
                  ammoSlots: { ammoSlot: number }[];
                  equipmentSlotId: number;
                  firegroups: {
                      firegroupId: any;
                      unknownArray1: {
                          unknownByte1: number;
                          unknownDword1: number;
                          unknownDword2: number;
                          unknownDword3: number;
                      }[];
                  }[];
                  unknownByte2: number;
                  unknownByte3: number;
                  unknownByte4: number;
                  unknownByte5: number;
                  unknownByte6: number;
                  unknownByte7: number;
                  unknownDword1: number;
                  unknownDword2: number;
                  unknownDword3: number;
                  unknownFloat1: number;
              };
          }
          | {
              characterStats?: undefined;
              isWeapon: boolean;
              unknownArray1?: undefined;
              unknownBoolean1: boolean;
              unknownData1?: undefined;
              unknownData2?: undefined;
          }

    • Gets the LightweightPC packet fields for use in SelfSendToClient and AddLightweightPC

      Returns {
          actorModelId?: number;
          attachedObject: { targetObjectId?: string };
          characterId?: string;
          flags: {
              flags1: {
                  bit0?: number;
                  bit1?: number;
                  bit2?: number;
                  bit3?: number;
                  bit4?: number;
                  bit5?: number;
                  bit6?: number;
                  bit7?: number;
              };
              flags2: {
                  bit10?: number;
                  bit11?: number;
                  bit13?: number;
                  bit14?: number;
                  bit15?: number;
                  bit9?: number;
                  nonAttackable?: number;
                  projectileCollision?: number;
              };
              flags3: {
                  bit16?: number;
                  bit17?: number;
                  bit18?: number;
                  bit19?: number;
                  bit22?: number;
                  bit23?: number;
                  knockedOut?: number;
                  noCollide?: number;
              };
          };
          headActor?: string;
          identity: { characterName: string };
          isLightweight?: boolean;
          managerCharacterId?: string;
          movementVersion?: number;
          nameId?: number;
          npcDefinitionId?: number;
          petName?: string;
          position?: Float32Array<ArrayBufferLike>;
          positionUpdateType?: number;
          profileId?: number;
          projectileUniqueId?: number;
          rotation: Float32Array<ArrayBufferLike>;
          scale?: Float32Array<ArrayBufferLike>;
          shaderGroupId: number;
          texture?: string;
          transientId: unknown;
          unknownByte1?: number;
          unknownDword1?: number;
          unknownDword10?: number;
          unknownDword11?: number;
          unknownDword13?: number;
          unknownDword15?: number;
          unknownDword2?: number;
          unknownDword3?: number;
          unknownDword8?: number;
          unknownDword9?: number;
          unknownFloatVector4?: Float32Array<ArrayBufferLike>;
          unknownQword2?: string;
          unknownString2?: string;
          unknownString3?: string;
          unknownString4?: string;
          useCollision?: number;
          vehicleId?: number;
      }

    • Parameters

      • slotId: number

      Returns {
          hotbarSlotId: number;
          loadoutId: number;
          loadoutItemData: {
              itemDefinitionId: number;
              loadoutItemGuid: string;
              unknownByte1: number;
          };
          slotId: number;
          unknownDword1: number;
      }

    • Returns {
          characterId: string;
          currentSlotId: LoadoutSlots;
          loadoutData: {
              loadoutSlots: {
                  hotbarSlotId: number;
                  loadoutId: number;
                  loadoutItemData: {
                      itemDefinitionId: number;
                      loadoutItemGuid: string;
                      unknownByte1: number;
                  };
                  slotId: number;
                  unknownDword1: number;
              }[];
          };
          loadoutId: LoadoutIds;
      }

    • Parameters

      Returns {
          guid: string;
          unknownArray1: any;
          unknownByte1: number;
          unknownByte2: number;
          unknownByte3: number;
          unknownByte4: number;
          unknownByte5: number;
          unknownByte6: number;
          unknownDword1: number;
          unknownDword2: number;
      }

    • Returns {
          resourceData: {
              resourceId: number;
              resourceType: number;
              value: number;
          };
          resourceType: number;
      }[]