h1z1-server
    Preparing search index...

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    Accessors

    Methods

    addCombatlogEntry applySpecialWeaponEffect checkCurrentInteractionGuid checkResource clearReloadTimeout damage destroy dismountContainer equipContainerItem equipItem equipLoadout generateEquipmentFromLoadout getActiveEquipmentSlot getActiveLoadoutSlot getAvailableContainer getAvailableLoadoutSlot getAvailablePassiveEquipmentSlot getCombatLog getContainerFromGuid getDeathItems getEquippedWeapon getHealth getInventoryAsContainer getInventoryItem getInventoryItemAmount getItemById getItemContainer getLoadoutItem getLoadoutItemById getLoadoutSlots getMaterialType getResourceType getShaderGroup getSortedContainers getStats hasArmor hasHelmet hasItem isDefaultItem isGodMode lootContainerItem lootItem lootItemFromContainer meleeBlocked mountContainer OnExplosiveHit OnFullCharacterDataRequest OnInteractionString OnMeleeHit OnPlayerSelect OnProjectileHit pGetActivatableAbilities pGetActivatableAbility pGetAttachmentSlot pGetAttachmentSlots pGetContainerData pGetContainers pGetEquipment pGetEquipmentSlot pGetEquipmentSlotFull pGetEquipmentSlots pGetFootwearAudio pGetFull pGetInventoryItems pGetItemData pGetItemWeaponData pGetLightweight pGetLightweightPC pGetLoadoutSlot pGetLoadoutSlots pGetRecipes pGetRemoteWeaponData pGetRemoteWeaponExtraData pGetRemoteWeaponsData pGetRemoteWeaponsExtraData pGetResources pGetSendSelf pGetSimpleNpc pGetSimpleProxyHealth resetMetrics resetResources startResourceUpdater transferItemFromLoadout updateEquipment updateEquipmentSlot updateFootwearAudio updateLoadout updateResource updateResources

    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

    hairModel: string

    Values used upon character creation

    hasAirdropClearance: boolean = false
    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, NodeJS.Timeout | null> = ...

    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 entity is inside

    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 = ...

    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

      Returns {
          abilityLineId: number;
          itemDefinitionId: number;
          loadoutSlotId: number;
          unknownArray1: {
              unknownDword1: number;
              unknownDword2: number;
              unknownDword3: number;
          }[];
          unknownByte: number;
          unknownDword3: number;
      }

    • Parameters

      • slotId: number

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

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

    • 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: (
              | {
                  decalAlias: string;
                  effectId: number;
                  modelName: string;
                  SHADER_PARAMETER_GROUP: { SHADER_SEMANTIC_ID: number }[];
                  slotId: number;
                  textureAlias: string;
                  tintAlias: string;
              }
              | undefined
          )[];
          characterData: { characterId: string; profileId: number };
          decalAlias: string;
          equipmentSlots: (
              | {
                  equipmentSlotData: {
                      decalAlias: string;
                      effectId: number;
                      equipmentSlotId: number;
                      guid: string;
                      tintAlias: string;
                  };
                  equipmentSlotId: number;
              }
              | undefined
          )[];
          tintAlias: string;
          unknownBoolean1: boolean;
          unknownDword1: number;
      }

    • Parameters

      • slotId: number

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

    • Parameters

      • slotId: number

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

    • Returns (
          | {
              equipmentSlotData: {
                  decalAlias: string;
                  effectId: number;
                  equipmentSlotId: number;
                  guid: string;
                  tintAlias: string;
              };
              equipmentSlotId: number;
          }
          | 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 {
          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;
      }[]