Package

net.psforever.packet.game

objectcreate

Permalink

package objectcreate

Visibility
  1. Public
  2. All

Type Members

  1. final case class AegisShieldGeneratorData(deploy: CommonFieldDataWithPlacement, health: Int) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the aegis shield generator deployed using an advanced adaptive construction engine.

    A representation of the aegis shield generator deployed using an advanced adaptive construction engine.

    deploy

    data common to objects spawned by the (advanced) adaptive construction engine

    health

    the amount of health the object has, as a percentage of a filled bar

  2. final case class BasicCharacterData(name: String, faction: types.PlanetSideEmpire.Value, sex: types.CharacterGender.Value, head: Int, voice: types.CharacterVoice.Value) extends Product with Serializable

    Permalink

    A part of a representation of the avatar portion of ObjectCreateMessage packet data.

    This partition of the data stream contains information used to represent how the player's avatar is presented.

    A part of a representation of the avatar portion of ObjectCreateMessage packet data.

    This partition of the data stream contains information used to represent how the player's avatar is presented. This appearance coincides with the data available from the CharacterCreateRequestMessage packet.

    name

    the unique name of the avatar; minimum of two characters

    faction

    the empire to which the avatar belongs

    sex

    whether the avatar is Male or Female

    head

    the avatar's face and hair; by row and column on the character creation screen, the high nibble is the row and the low nibble is the column

    voice

    the avatar's voice selection

    See also

    PlanetSideEmpire
    CharacterGender

  3. final case class CaptureFlagData(pos: PlacementData, faction: types.PlanetSideEmpire.Value, unk1: Int, unk2: Int, unk3: Int, unk4: Int) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the capture flag portion of ObjectCreateDetailedMessage packet data.

    A representation of the capture flag portion of ObjectCreateDetailedMessage packet data. This creates what is known as a lattice logic unit, or LLU. It is originally spawned in the base object called the lattice link socket during certain base captures.

    Players can not directly interact with the capture flag. Whenever an applicable player is nearby, that client will rapidly fire off ItemUseMessage packets to the server. The capture flag will be picked-up by the player and stored in a special slot that is not part of their inventory. A special dropping keybind has been prepared to relinquish the capture flag back to the game world.

    faction

    the empire whose players may interact with this capture flag

    unk1

    na

    unk2

    na

    unk3

    na

    unk4

    na

  4. final case class CharacterAppearanceA(app: BasicCharacterData, data: CommonFieldData, exosuit: types.ExoSuitType.Value, unk5: Int, unk6: Long, unk7: Int, unk8: Int, unk9: Int, unkA: Int)(name_padding: Int) extends StreamBitSize with Product with Serializable

    Permalink

    A part of a representation of the avatar portion of ObjectCreateDetailedMessage packet data.

    A part of a representation of the avatar portion of ObjectCreateDetailedMessage packet data.

    app

    the player's cardinal appearance settings

    data

    common field data
    -bops - this vehicle belongs to the Black Ops, regardless of the faction field; activates the green camo and adjusts permissions
    -destroyed - flagged when using a model that is not the standard player in some stance
    -jammered - the player has been caught in an EMP blast recently; creates a jammered sound effect that follows the player around and can be heard by others
    -player_guid - does nothing?

    exosuit

    the type of exo-suit the avatar will be depicted in; for Black OPs, the agile exo-suit and the reinforced exo-suit are replaced with the Black OPs exo-suits

    See also

    ExoSuitType

    DetailedCharacterData

    CharacterData

  5. final case class CharacterAppearanceB(unk0: Long, outfit_name: String, outfit_logo: Int, unk1: Boolean, backpack: Boolean, unk2: Boolean, unk3: Boolean, unk4: Boolean, facingPitch: Float, facingYawUpper: Float, lfs: Boolean, grenade_state: types.GrenadeState.Value, is_cloaking: Boolean, unk5: Boolean, unk6: Boolean, charging_pose: Boolean, unk7: Boolean, on_zipline: Option[ZiplineData])(alt_model: Boolean, name_padding: Int) extends StreamBitSize with Product with Serializable

    Permalink

    A part of a representation of the avatar portion of ObjectCreateDetailedMessage packet data.

    A part of a representation of the avatar portion of ObjectCreateDetailedMessage packet data.

    outfit_name

    the name of the outfit to which this player belongs; if the option is selected, allies with see either "[outfit_name]" or "{No Outfit}" under the player's name

    outfit_logo

    the decal seen on the player's exo-suit (and beret and cap) associated with the player's outfit; if there is a variable color for that decal, the faction-appropriate one is selected

    facingPitch

    a "pitch" angle

    facingYawUpper

    a "yaw" angle that represents the angle of the avatar's upper body with respect to its forward-facing direction; this number is normally 0 for forward facing; the range is limited between approximately 61 degrees of center turned to left or right

    lfs

    this player is looking for a squad; all allies will see the phrase "[Looking for Squad]" under the player's name

    grenade_state

    if the player has a grenade Primed; should be GrenadeStateState.None if nothing special

    is_cloaking

    avatar is cloaked by virtue of an Infiltration Suit

    charging_pose

    animation pose for both charging modules and BFR imprinting

    on_zipline

    player's model is changed into a faction-color ball of energy, as if on a zip line

    See also

    http://www.planetside-universe.com/p-outfit-decals-31.htm

    RibbonBars

    GrenadeState

    ExoSuitType

    DetailedCharacterData

    CharacterData

  6. final case class CharacterAppearanceData(a: CharacterAppearanceA, b: CharacterAppearanceB, ribbons: RibbonBars)(name_padding: Int) extends StreamBitSize with Product with Serializable

    Permalink

    A part of a representation of the avatar portion of ObjectCreateDetailedMessage packet data.

    This is a shared partition of the data used to represent how the player's avatar is presented.

    A part of a representation of the avatar portion of ObjectCreateDetailedMessage packet data.

    This is a shared partition of the data used to represent how the player's avatar is presented. It is utilized by both 0x17 ObjectCreateMessage CharacterData and 0x18 ObjectCreateDetailedMessage DetailedCharacterData. This can be considered the data that goes into creating the player's model.

    Only a few changes would occur depending on which packet would deal with the data. One example is facingYawUpper which, when depicting avatars, can be set to represent non-trivial turning angles. When depicting other players, it is limited to a small range of angles in the direction of that model's forward-facing. Another example is the outfit information: not usually represented for avatars; but, always represented for other players.

    One way the player's model can be changed dramatically involves being depicted as "released." In this form, their body appears as a backpack (or pumpkin or pastry) that can be looted for the equipment carried while alive. Companion data will describe how the player is represented while he is "dead," usually a requirement for being "released." Without that requirement here, it is possible to depicte the player as a "living backpack." The said equipment is also defined elsewhere. Another dramatic change replaces the player's model with a ball of plasma that masks the player while riding zip lines.

    Exploration:
    How do I crouch?

    ribbons

    the four merit commendation ribbon medals

    See also

    DetailedCharacterData

    CharacterData

  7. final case class CharacterData(health: Int, armor: Int, uniform_upgrade: UniformStyle.Value, unk: Int, command_rank: Int, implant_effects: List[ImplantEffects.Value], cosmetics: Option[Cosmetics])(is_backpack: Boolean, is_seated: Boolean) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    This information outlines most of the specifics required to depict some other player's character.

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    This information outlines most of the specifics required to depict some other player's character. Someone else decides how that character is behaving and the server tells each client how to depict that behavior. For that reason, the character is mostly for presentation purposes, rather than really being fleshed-out. Of the inventory for this character, only the initial five weapon slots are defined. In the "backend of the client," the character produced by this data is no different from the kind of character that could be declared a given player's avatar. In terms of equipment and complicated features common to an avatar character, however, any user would find this character ill-equipped.

    health

    the amount of health the player has, as a percentage of a filled bar; the bar has 85 states, with 3 points for each state; when 0% (less than 3 of 255), the player will collapse into a death pose on the ground; while is_backpack == true, health will always report as 0; while is_seated == true, health will (try to) report as 100

    armor

    the amount of armor the player has, as a percentage of a filled bar; the bar has 85 states, with 3 points for each state; while is_seated == true, armor will always report as 0

    uniform_upgrade

    the level of upgrade to apply to the player's base uniform

    command_rank

    the player's command rank as a number from 0 to 5; cosmetic armor associated with the command rank will be applied automatically

    implant_effects

    the effects of implants that can be seen on a player's character; the number of entries equates to the number of effects applied; the maximu number of effects is three

    cosmetics

    optional decorative features that are added to the player's head model by console/chat commands; they become available at battle rank 24, but here they require the third uniform upgrade (rank 25); these flags do not exist if they are not applicable

    is_backpack

    this player character should be depicted as a corpse; corpses are either coffins (defunct), backpacks (normal), or a pastry (festive); the alternate model bit should be flipped

    is_seated

    this player character is seated in a vehicle or mounted to some other object; alternate format for data parsing applies

    See also

    Cosmetics

    DetailedCharacterData

  8. final case class CommonFieldData(faction: types.PlanetSideEmpire.Value, bops: Boolean, alternate: Boolean, v1: Boolean, v2: Option[CommonFieldDataExtra], v3: Boolean, v4: Option[Boolean], v5: Option[Int], guid: PlanetSideGUID) extends ConstructorData with Product with Serializable

    Permalink

    Data that is common to a number of game object serializations.

    Data that is common to a number of game object serializations.

    faction

    faction affinity NEUTRAL when not required to be any specific value

    bops

    usually indicates black ops affiliation

    alternate

    usually indicates variance in model from default (e.g., vehicle is destroyed, player has released, etc.); when set on a tool, that tool will be rendered nonfunctional instead (though it can still be equipped)

    v1

    na

    v2

    na; optional data whose reading is triggered in unknown conditions; flag a weapon as "jammered"

    v3

    na; for weapons, works like alternate

    v4

    na; a field used by a second encoding format for this data

    v5

    na; previously considered to flag as "jammered"

    guid

    usually indicates another active game object that placed/leverages/[action]s this object

  9. final case class CommonFieldDataExtra(unk1: Int, unk2: Boolean) extends StreamBitSize with Product with Serializable

    Permalink
  10. final case class CommonFieldDataWithPlacement(pos: PlacementData, data: CommonFieldData) extends ConstructorData with Product with Serializable

    Permalink

    Data that is common to a number of game object serializations, plus position information

    Data that is common to a number of game object serializations, plus position information

    pos

    the location, orientation, and potential velocity of the object

    data

    the common fields

    See also

    DroppedItemData

  11. abstract class ConstructorData extends StreamBitSize

    Permalink

    The base type for the representation of any data used to produce objects from ObjectCreateMessage packet data.

    The base type for the representation of any data used to produce objects from ObjectCreateMessage packet data. There is no reason to instantiate this class as-is. Children of this class are expected to be able to translate through scodec operations into packet data.

    The object data is uncoupled from the object class as multiple classes use the same format for their data. For example, both the Suppressor and the Gauss will use a "weapon data" format. For example, both 9mm bullets and energy cells will use an "ammunition data" format.

  12. final case class Cosmetics(pstyles: Int) extends StreamBitSize with Product with Serializable

    Permalink

    The different cosmetics that a player can apply to their character model's head.

    The player gets the ability to apply these minor modifications at battle rank twenty-four, just one rank before the third uniform upgrade.

    The different cosmetics that a player can apply to their character model's head.

    The player gets the ability to apply these minor modifications at battle rank twenty-four, just one rank before the third uniform upgrade. These flags are only valid if the player has: for DetailedCharacterData, achieved at least battle rank twenty-four (battle experience points greater than 2286230), or, for CharacterData, achieved at least battle rank twenty-five (acquired their third uniform upgrade). CharacterData, as suggested, will not display these options until one battle rank after they would have become available.

    pstyles

    a value that indicates certain cosmetic features by bitwise math

    See also

    PersonalStyleFeatures

    UniformStyle

  13. final case class DCDExtra1(unk1: String, unk2: Int) extends StreamBitSize with Product with Serializable

    Permalink

    na

    na

    unk1

    na

    unk2

    na

  14. final case class DCDExtra2(unk1: Int, unk2: Int) extends StreamBitSize with Product with Serializable

    Permalink

    na

    na

    unk1

    an

    unk2

    na

  15. final case class DestroyedVehicleData(pos: PlacementData) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the charred husk of a destroyed vehicle.

    This is a hand-crafted Codec and was not based on something found on Gemini Live.

    A representation of the charred husk of a destroyed vehicle.

    This is a hand-crafted Codec and was not based on something found on Gemini Live.

    pos

    where and how the object is oriented; pos.vel existing is fine

  16. final case class DetailedAmmoBoxData(data: CommonFieldData, magazine: Int) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the ammunition portion of ObjectCreateDetailedMessage packet data.

    A representation of the ammunition portion of ObjectCreateDetailedMessage packet data. This data will help construct a "box" of that type of ammunition when standalone. It can also be constructed directly inside a weapon as its magazine.

    The maximum amount of ammunition that can be stored in a single box is 65535 units. Regardless of the interface, however, the number will never be fully visible. Only the first three digits or the first four digits may be represented.

    data

    na

    magazine

    the number of rounds available

    See also

    DetailedWeaponData

  17. final case class DetailedCharacterA(bep: Long, cep: Long, unk1: Long, unk2: Long, unk3: Long, healthMax: Int, health: Int, unk4: Boolean, armor: Int, unk5: Long, staminaMax: Int, stamina: Int, max_field: Option[Long], unk6: Int, unk7: Int, unk8: Long, unk9: List[Int], certs: List[types.CertificationType.Value]) extends StreamBitSize with Product with Serializable

    Permalink

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    bep

    the avatar's battle experience points, which determines his Battle Rank

    cep

    the avatar's command experience points, which determines his Command Rank

    healthMax

    for x / y of hitpoints, this is the avatar's y value; range is 0-65535

    health

    for x / y of hitpoints, this is the avatar's x value; range is 0-65535

    armor

    for x / y of armor points, this is the avatar's x value; range is 0-65535; the avatar's y armor points is tied to their exo-suit type

    staminaMax

    for x / y of stamina points, this is the avatar's y value; range is 0-65535

    stamina

    for x / y of stamina points, this is the avatar's x value; range is 0-65535

    max_field

    unk; this field exists only when the player is wearing a mechanized assault exo-suit

    certs

    the List of certifications

    See also

    CertificationType

    CharacterData

  18. final case class DetailedCharacterB(unk1: Option[Long], implants: List[ImplantEntry], unk2: List[DCDExtra1], unk3: List[DCDExtra1], firstTimeEvents: List[String], tutorials: List[String], unk4: Long, unk5: Long, unk6: Long, unk7: Long, unk8: Long, unk9: Option[DCDExtra2], unkA: List[Long], unkB: List[String], unkC: Boolean, cosmetics: Option[Cosmetics])(bep: Long, pad_length: Option[Int]) extends StreamBitSize with Product with Serializable

    Permalink

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    implants

    the List of implant slots currently possessed by this avatar

    firstTimeEvents

    the list of first time events performed by this avatar; the size field is a 32-bit number; the first entry may be padded

    tutorials

    the List of tutorials completed by this avatar; the size field is a 32-bit number; the first entry may be padded

    cosmetics

    optional decorative features that are added to the player's head model by console/chat commands; they become available at battle rank 24; these flags do not exist if they are not applicable

    See also

    Cosmetics

    CharacterData

  19. final case class DetailedCharacterData(a: DetailedCharacterA, b: DetailedCharacterB)(pad_length: Option[Int]) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    This densely-packed information outlines most of the specifics required to depict a character as an avatar.

    A representation of a portion of an avatar's ObjectCreateDetailedMessage packet data.

    This densely-packed information outlines most of the specifics required to depict a character as an avatar. It goes into depth about information related to the given character in-game career that is not revealed to other players. To be specific, it passes more thorough data about the character that the client can display to the owner of the client. For example, health is a full number, rather than a percentage, as is the case with CharacterData. Just as prominent is the list of first time events and the list of completed tutorials. Additionally, a full inventory, as opposed to the initial five weapon slots.

    See also

    CharacterData

  20. final case class DetailedCommandDetonaterData(data: CommonFieldData) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the command uplink device.

  21. final case class DetailedConstructionToolData(data: CommonFieldData, mode: Int) extends ConstructorData with Product with Serializable

    Permalink

    DetailedACEData - data.faction is faction affinity, data.unk1 is true DetailedBoomerTriggerData - data.faction can be NEUTRAL, data.unk1 is true DetailedTelepadData - data.faction can be NEUTRAL, data.jammered is the router's GUID

  22. final case class DetailedLockerContainerData(data: CommonFieldData, inventory: Option[InventoryData]) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the inventory portion of ObjectCreateDetailedMessage packet data that contains the items in the avatar's locker space.

    Although these items are technically always loaded and registered with globally unique identifiers for the current zone, the actual container for them, in grid format, can only be accessed by interacting with locker objects in the game world.

    A representation of the inventory portion of ObjectCreateDetailedMessage packet data that contains the items in the avatar's locker space.

    Although these items are technically always loaded and registered with globally unique identifiers for the current zone, the actual container for them, in grid format, can only be accessed by interacting with locker objects in the game world. Items are generally added and removed in the same way as with any other opened inventory. Unlike other inventories, however, locker space is personal to an avatar and can not be accessed by other players.

    data

    na

    inventory

    the items in this inventory

  23. final case class DetailedPlayerData(pos: Option[PlacementData], basic_appearance: CharacterAppearanceData, character_data: DetailedCharacterData, inventory: Option[InventoryData], drawn_slot: DrawnSlot.Value)(position_defined: Boolean) extends ConstructorData with Product with Serializable

    Permalink

    A representation of an avatar player for the ObjectCreateDetailedMessage packet.

    A representation of an avatar player for the ObjectCreateDetailedMessage packet. As an avatar, the character created by this data is expected to be controllable by the client that gets sent this data.

    Divisions exist to make the data more manageable. The first division defines the player's location within the game coordinate system. The second division defines features of the avatar that are shared by both the ObjectCreateDetailedMessage version of a controlled player character (this) and the ObjectCreateMessage version of a player character. The third field expands on the nature of the character and this avatar's campaign. Expansive information about previous interactions, the contents of their inventory, and equipment permissions are included.

    The presence or absence of position data as the first division creates a cascading effect causing all of fields in the other two divisions to gain offsets. These offsets exist in the form of String and List padding.

    pos

    the optional position of the character in the world environment

    basic_appearance

    common fields regarding the the character's appearance

    character_data

    the class-specific data that discusses the character

    inventory

    the player's full or partial (holsters-only) inventory

    drawn_slot

    the holster that is depicted as exposed, or "drawn"

    position_defined

    used to seed the state of the optional position fields

    See also

    DrawnSlot

    InventoryData

    DetailedCharacterData

    CharacterAppearanceData

  24. final case class DetailedREKData(data: CommonFieldData, unk: Int = 0) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the REK portion of ObjectCreateDetailedMessage packet data.

    A representation of the REK portion of ObjectCreateDetailedMessage packet data. This data will help construct the "tool" called a Remote Electronics Kit.

    Of note is the first portion of the data which resembles the DetailedWeaponData format.

    data

    na

    unk

    na

  25. final case class DetailedWeaponData(data: CommonFieldData, fire_mode: Int, ammo: List[InternalSlot], unk: Boolean = false) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a class of weapons that can be created using ObjectCreateDetailedMessage packet data.

    A representation of a class of weapons that can be created using ObjectCreateDetailedMessage packet data. This data will help construct a "loaded weapon" such as a Suppressor or a Gauss.

    The data for the weapons nests information for the default (current) type and number of ammunition in its magazine. This ammunition data essentially is the weapon's magazines as numbered slots. An "expected" number of ammunition slot data can be passed into the function.

    data

    field common to multiple game objects

    fire_mode

    the current fire mode

    ammo

    data regarding the currently loaded ammunition type(s) and quantity(ies)

    See also

    WeaponData

    DetailedAmmoBoxData

  26. final case class DroppedItemData[T <: ConstructorData](pos: PlacementData, obj: T) extends ConstructorData with Product with Serializable

    Permalink

    Provide information that positions a given object on the ground in the game world.

    Provide information that positions a given object on the ground in the game world.

    T

    a subclass of ConstructorData that indicates what type the object is

    pos

    where and how the object is oriented

    obj

    the object on the ground

  27. final case class DroppodData(basic: CommonFieldDataWithPlacement, health: Int, burn: Boolean, unk: Boolean) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a droppod that is dropped from the HART shuttle and ferries the player into battle.

    A representation of a droppod that is dropped from the HART shuttle and ferries the player into battle. Droppods are also used when a player has activated Instant Action.

    When the server first spawns the droppod, it will be placed at the world ceiling - 1024.0f. It is placed under control via another packet that sends it hurtling to the ground. Upon hitting the ground, it opens up, releasing the player, and despawns.

    Although the droppod is not technically a vehicle, it is treated as such by the game. A spawned and unoccupied droppod can be entered and exited, as expected (the seat is 0). There is no entry animation. The exit animation is the droppod flowering open as usual. Even in its spread open state, the droppod can be re-entered, though it will remain spread open. The player's character will disappear once "inside." Upon exiting again, the droppod will snap shut and spread open.

    Exploration: When basic.player_guid is defined, the droppod will not be at the world ceiling anymore and its boosters will be activate. Does this basic.player_guid actually represent the player who is in the pod?

    basic

    data common to objects

    health

    the amount of health the object has, as a percentage of a filled bar

    burn

    whether the boosters are ignited

    See also

    DroppodLaunchResponseMessage

    DroppodLaunchRequestMessage

  28. final case class HandheldData(data: CommonFieldData, mode: Int, unk: Int) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a number of simplified objects that the user can hold in their hands, including: the advanced construction engine (ace), the field deployable unit (advanced_ace), the boomer trigger apparatus, the remote telepad (not deployed), the flail laser pointer (flail_targeting_laser), and the command uplink device (command_detonater).

    A representation of a number of simplified objects that the user can hold in their hands, including: the advanced construction engine (ace), the field deployable unit (advanced_ace), the boomer trigger apparatus, the remote telepad (not deployed), the flail laser pointer (flail_targeting_laser), and the command uplink device (command_detonater).

    data

    fields that are common to this game object

    • v4 - not used, i.e., the simple format CommonFieldData object is employed
    • v5 - for the telepad, this field is expected to be the GUID of the associated Router
  29. final case class ImplantEntry(implant: types.ImplantType.Value, initialization: Option[Int], active: Boolean) extends StreamBitSize with Product with Serializable

    Permalink

    An entry in the List of valid implant slots in DetailedCharacterData.

    An entry in the List of valid implant slots in DetailedCharacterData.

    implant

    the type of implant

    initialization

    the amount of time necessary until this implant is ready to be activated; technically, this is unconfirmed

    active

    whether this implant is turned on; technically, this is unconfirmed

    See also

    ImplantType

  30. final case class InternalSlot(objectClass: Int, guid: PlanetSideGUID, parentSlot: Int, obj: ConstructorData) extends StreamBitSize with Product with Serializable

    Permalink

    An intermediate class for the primary fields of ObjectCreate*Message with an implicit parent-child relationship.

    Any object that is contained in a "slot" of another object will use InternalSlot to hold the anchoring data.

    An intermediate class for the primary fields of ObjectCreate*Message with an implicit parent-child relationship.

    Any object that is contained in a "slot" of another object will use InternalSlot to hold the anchoring data. This prior object will clarify the identity of the "parent" object that owns the given parentSlot. As the name implies, this should never have to be used in the representation of a non-child object.

    Try to avoid exposing this class in the process of implementing common object code. Provide overrode constructors that mask the creation of InternalSlot where applicable.

    objectClass

    the code for the type of object being constructed

    guid

    the GUID this object will be assigned

    parentSlot

    a parent-defined slot identifier that explains where the child is to be attached to the parent

    obj

    the data used as representation of the object to be constructed

    See also

    ObjectClass.selectDataDetailedCodec

    ObjectClass.selectDataCodec

  31. final case class InventoryData(contents: List[InventoryItem] = List.empty) extends StreamBitSize with Product with Serializable

    Permalink

    A representation of the inventory portion of ObjectCreate*Message packet data for avatars.

    The inventory is a temperamental thing.

    A representation of the inventory portion of ObjectCreate*Message packet data for avatars.

    The inventory is a temperamental thing. Items placed into the inventory must follow their proper encoding schematics to the letter. The slot number refers to the position occupied by the item. In icon format, all-encompassing slots are absolute positions; and, grid-distributed icons use the upper-left corner. No values are allowed to be misplaced and no unexpected regions of data can be discovered. If there is even a minor failure, the remainder of the inventory will fail to translate.

    Inventories are usually prefaced with a single bit value not accounted for here to switch them "on."

    contents

    the items in the inventory

    See also

    InventoryItemData

  32. final case class LargeDeployableData(deploy: CommonFieldDataWithPlacement, health: Int, internals: Option[InventoryData] = None) extends ConstructorData with Product with Serializable

    Permalink

    This class currently is unused but is based on the SmallTurretData Codec class.

  33. final case class LockerContainerData(inventory: Option[InventoryData]) extends ConstructorData with Product with Serializable

    Permalink

    A representation for a game object that can contain items.

    For whatever reason, these "lockers" are typically placed at the origin coordinates.

    A representation for a game object that can contain items.

    For whatever reason, these "lockers" are typically placed at the origin coordinates.

    inventory

    the items inside this locker

  34. final case class ObjectCreateMessageParent(guid: PlanetSideGUID, slot: Int) extends Product with Serializable

    Permalink

    The parent information of a created object.

    In normal packet data order, there are two ways the parent object can be assigned.

    The parent information of a created object.

    In normal packet data order, there are two ways the parent object can be assigned. The first is an implicit association between a parent object and a child object that are both created at the same time. A player character object, for example, is initialized in the same breath as the objects in his inventory are initialized. A weapon object is constructed with an ammunition object already included within itself. The second is an explicit association between the child and the parent where the parent exists before the child is created. When a new inventory object is produced, it is usually assigned to some other existing object's inventory. That is the relationship to the role of "parent" that this object defines. As such, only its current unique identifier needs to be provided. If the parent can not be found, the child object is not created.

    A third form of parent object to child object association involves the impromptu assignment of an existing child to an existing parent. Since no objects are being created, that is unrelated to ObjectCreateMessage. Refer to ObjectAttachMessage, MountVehicleMsg, and MountVehicleCargoMsg.

    When associated, the child object is "attached" to the parent object at a specific location called a "slot." "Slots" are internal to the object and are (typically) invisible to the player. Any game object can possess any number of "slots" that serve specific purposes. Player objects have equipment holsters and grid inventory capacity. Weapon objects have magazine feed positions. Vehicle objects have seating for players and trunk inventory capacity.

    guid

    the GUID of the parent object

    slot

    a parent-defined slot identifier that explains where the child is to be attached to the parent; encoded as the length field of a Pascal string

  35. final case class OneMannedFieldTurretData(deploy: CommonFieldDataWithPlacement, health: Int, internals: Option[InventoryData] = None) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the player-mountable large field turrets deployed using an advanced adaptive construction engine.

    Field turrets are divided into the turret base, the mounted turret weapon, and the turret's ammunition.

    A representation of the player-mountable large field turrets deployed using an advanced adaptive construction engine.

    Field turrets are divided into the turret base, the mounted turret weapon, and the turret's ammunition. The ammunition is always the same regardless of which faction owns the turret. Turret bases and turret weapons are generally paired by the faction.

    If the turret has no health, it is rendered as destroyed. If the turret has no internal weapon, it is safest rendered as destroyed. Trying to fire a turret with no internal weapon will soft-lock the PlanetSide client.

    deploy

    data common to objects spawned by the (advanced) adaptive construction engine

    health

    the amount of health the object has, as a percentage of a filled bar

    internals

    data regarding the mountable weapon

  36. final case class OrbitalShuttleData(faction: types.PlanetSideEmpire.Value, pos: Option[PlacementData] = None) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the high altitude rapid transport (HART) shuttle that ferries the player into battle.

    A representation of the high altitude rapid transport (HART) shuttle that ferries the player into battle. This Codec is different depending on whether the shuttle is the child of a parent or independent.

    Three HART shuttles dock with the three HART buildings in the three sanctuaries for short periods on a timed schedule. When one is landed, players may board the shuttle using designated hallways in the lobbies of the HART building. After the shuttle leaves the sanctuary, it transports those players up into orbit above the continents. The shuttle docks again, this time with space stations that orbit the planet. It allows infantry to use droppods to land on the continents by pinpointing locations on that continent's tactical map.

    The previous explanation is smoke and mirrors nonsense. Lore-wise, the separation of Auraxis during the Bending rendered it impossible for the shuttle to visit all of the continents. The orbital stations - even if they multiplied one per planet - don't really exist. (They almost existed but all assets for them were cut from the game.) The HART shuttle also isn't a traditional vehicle. It isn't even tangible. The game just treats it like a vehicle for the purpose of allowing players to access the controllable droppod system.

    When accessible to the player, the shuttle has an access point called a "trunk." Trying to access it yields the brief message "OSMustBeDockedToMount."

    faction

    empire the object is affiliated with

    pos

    optional; where and how the object is oriented

    See also

    OrbitalShuttleTimeMsg

    DroppodLaunchResponseMessage

    DroppodLaunchRequestMessage

  37. final case class PlacementData(coord: Vector3, orient: Vector3, vel: Option[Vector3] = None) extends StreamBitSize with Product with Serializable

    Permalink

    A specific location and heading in game world coordinates and game world measurements.

    A specific location and heading in game world coordinates and game world measurements.

    coord

    the xyz-coordinate location in the world

    orient

    the ijk-orientation around the object's center

    vel

    optional movement data (that occurs upon placement)

  38. final case class PlayerData(pos: Option[PlacementData], basic_appearance: CharacterAppearanceData, character_data: CharacterData, inventory: Option[InventoryData], drawn_slot: DrawnSlot.Value)(position_defined: Boolean) extends ConstructorData with Product with Serializable

    Permalink

    A representation of another player's character for the ObjectCreateMessage packet.

    A representation of another player's character for the ObjectCreateMessage packet. In general, this packet is used to describe other players.

    Divisions exist to make the data more manageable. The first division defines the player's location within the game coordinate system. The second division defines features of the character that are shared by both the ObjectCreateDetailedMessage version of a controlled player character and the ObjectCreateMessage version of a player character (this). The third field provides further information on the appearance of the player character, albeit condensed. The fourth field involves the player's Equipment holsters and their inventory. The hand that the player has exposed is last. One of the most compact forms of a player character description is transcribed using this information.

    The presence or absence of position data as the first division creates a cascading effect causing all of fields in the other two divisions to gain offset values. These offsets exist in the form of String and List padding.

    pos

    the optional position of the character in the world environment

    basic_appearance

    common fields regarding the the character's appearance

    character_data

    the class-specific data that explains about the character

    inventory

    the player's inventory; typically, only the tools and weapons in the equipment holster slots

    drawn_slot

    the holster that is initially drawn

    position_defined

    used by the Codec to seed the state of the optional pos field

    See also

    CharacterData
    InventoryData
    DrawnSlot

  39. final case class REKData(data: CommonFieldData, unk1: Int, unk2: Int) extends ConstructorData with Product with Serializable

    Permalink

    na

    na

    data

    na

    unk1

    na; defaults to 0

    See also

    DetailedREKData

  40. final case class RibbonBars(upper: types.MeritCommendation.Value = MeritCommendation.None, middle: types.MeritCommendation.Value = MeritCommendation.None, lower: types.MeritCommendation.Value = MeritCommendation.None, tos: types.MeritCommendation.Value = MeritCommendation.None) extends StreamBitSize with Product with Serializable

    Permalink

    Enumerate the player-displayed merit commendation awards granted for excellence (or tenacity) in combat.

    Enumerate the player-displayed merit commendation awards granted for excellence (or tenacity) in combat. These are the medals players wish to brandish on their left pauldron.

    upper

    the "top" configurable merit ribbon

    middle

    the central configurable merit ribbon

    lower

    the lower configurable merit ribbon

    tos

    the top-most term of service merit ribbon

    See also

    DisplayedAwardMessage

    MeritCommendation

  41. final case class SmallTurretData(deploy: CommonFieldDataWithPlacement, health: Int, internals: Option[InventoryData] = None) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the Spitfire-based small turrets deployed using an adaptive construction engine.

    The turret may contain substructure defining a weapon is a turret weapon contained within the turret itself.

    A representation of the Spitfire-based small turrets deployed using an adaptive construction engine.

    The turret may contain substructure defining a weapon is a turret weapon contained within the turret itself. Furthermore, that turret-like weapon is loaded with turret-like ammunition. In other words, this outer turret can be considered a weapons platform for the inner turret weapon.

    If the turret has no health, it is rendered as destroyed. If the turret has no internal weapon, it is safest rendered as destroyed.

    deploy

    data common to objects spawned by the (advanced) adaptive construction engine

    health

    the amount of health the object has, as a percentage of a filled bar

    internals

    data regarding the mounted weapon

  42. sealed abstract class SpecificVehicleData extends StreamBitSize

    Permalink

    A basic Trait connecting all of the vehicle data formats (excepting Normal/None).

  43. trait StreamBitSize extends AnyRef

    Permalink

    Apply this trait to a class that needs to have its size in bits calculated.

  44. final case class TRAPData(deploy: CommonFieldDataWithPlacement, health: Int) extends ConstructorData with Product with Serializable

    Permalink

    A representation of the tactical resonance area protection unit deployed using an advanced adaptive construction engine.

    A representation of the tactical resonance area protection unit deployed using an advanced adaptive construction engine. Three metal beams, erect and tangled, block passage to enemies and their vehicles.

    deploy

    data common to objects spawned by the (advanced) adaptive construction engine

    health

    the amount of health the object has, as a percentage of a filled bar

  45. final case class TelepadDeployableData(data: CommonFieldData, unk1: Int, unk2: Int) extends ConstructorData with Product with Serializable

    Permalink

    A representation of simple objects that are spawned by the adaptive construction engine.

    A representation of simple objects that are spawned by the adaptive construction engine.

    data

    data common to game objects

    unk1

    na

    unk2

    na

  46. final case class TrackedProjectileData(data: CommonFieldDataWithPlacement, unk2: TrackedProjectile.Value, unk3: Int = 0) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a projectile that the server must intentionally convey to players other than the shooter.

    A representation of a projectile that the server must intentionally convey to players other than the shooter.

    data

    na

    unk2

    na; data specific to the type of projectile(?)

    unk3

    na

  47. final case class UtilityVehicleData(unk: Int) extends SpecificVehicleData with Product with Serializable

    Permalink

    The format of vehicle data for the type of vehicles that are considered "utility." The vehicles in this category are two: the advanced nanite transport, and the advanced mobile station.

    The format of vehicle data for the type of vehicles that are considered "utility." The vehicles in this category are two: the advanced nanite transport, and the advanced mobile station.

    unk

    na

  48. final case class VariantVehicleData(unk: Int) extends SpecificVehicleData with Product with Serializable

    Permalink

    A common format variant of vehicle data.

    A common format variant of vehicle data. This category includes all flying vehicles and the ancient cavern vehicles.

    unk

    na

  49. final case class VehicleData(pos: PlacementData, data: CommonFieldData, unk3: Boolean, health: Int, unk4: Boolean, no_mount_points: Boolean, driveState: types.DriveState.Value, unk5: Boolean, unk6: Boolean, cloak: Boolean, vehicle_format_data: Option[SpecificVehicleData], inventory: Option[InventoryData] = None)(vehicle_type: VehicleFormat.Value = VehicleFormat.Normal) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a generic vehicle.

    A representation of a generic vehicle.

    pos

    where the vehicle is and how it is oriented in the game world

    data

    common vehicle field data:
    -bops - this vehicle belongs to the Black Ops, regardless of the faction field; activates the green camo and adjusts permissions
    -destroyed - this vehicle has ben destroyed; health should be less than 3/255, or 0%
    -jammered - vehicles will not be jammered by setting this field
    -player_guid the vehicle's (official) owner; a living player in the game world on the same continent as the vehicle who may mount the driver seat

    unk3

    na

    health

    the amount of health the vehicle has, as a percentage of a filled bar (255)

    unk4

    na

    no_mount_points

    do not display entry points for the seats

    driveState

    a representation for the current mobility state; various vehicles also use this field to indicate "deployment," e.g., the advanced mobile spawn

    unk5

    na

    unk6

    na

    cloak

    if a vehicle (that can cloak) is cloaked

    vehicle_format_data

    extra information necessary to implement special-type vehicles; see vehicle_type

    inventory

    the seats, mounted weapons, and utilities (such as terminals) that are currently included; will also include trunk contents; the driver is the only valid seat entry (more will cause the access permissions to act up)

    vehicle_type

    a modifier for parsing the vehicle data format differently; see vehicle_format_data; defaults to Normal

  50. final case class WeaponData(data: CommonFieldData, fire_mode: Int, ammo: List[InternalSlot], unk: Boolean = false) extends ConstructorData with Product with Serializable

    Permalink

    A representation of a class of weapons that can be created using ObjectCreateMessage packet data.

    A representation of a class of weapons that can be created using ObjectCreateMessage packet data. This data will help construct a "loaded weapon" such as a Suppressor or a Gauss. Common uses include items deposited on the ground and items in another player's visible inventory (holsters).

    The data for the weapons nests information for the default (current) type of ammunition and number of ammunitions in its magazine(s). This ammunition data essentially is the weapon's magazines as numbered slots. An "expected" number of ammunition slot data can be passed into the class for the purposes of validating input.

    data

    na; commonly 8

    fire_mode

    the current mode of weapon's fire; zero-indexed

    ammo

    data regarding the currently loaded ammunition type(s)

    See also

    AmmoBoxData

Value Members

  1. object AegisShieldGeneratorData extends Marshallable[AegisShieldGeneratorData] with Serializable

    Permalink
  2. object AmmoBoxData

    Permalink

    A representation of ammunition that can be created using ObjectCreateMessage packet data.

    A representation of ammunition that can be created using ObjectCreateMessage packet data. This data will help construct a "box" of that type of ammunition when standalone. It can also be constructed directly inside a weapon as its magazine.

    This ammunition object ompletely ignores the capacity field, normal to detailed ammunition objects. Creating an object of this type directly and picking it up or observing it (in a weapon) will reveals single round.

    See also

    DetailedAmmoBoxData

  3. object CaptureFlagData extends Marshallable[CaptureFlagData] with Serializable

    Permalink
  4. object CharacterAppearanceData extends Marshallable[CharacterAppearanceData] with Serializable

    Permalink
  5. object CharacterData extends Marshallable[CharacterData] with Serializable

    Permalink
  6. object CommonFieldData extends Marshallable[CommonFieldData] with Serializable

    Permalink
  7. object CommonFieldDataExtra extends Serializable

    Permalink
  8. object CommonFieldDataWithPlacement extends Marshallable[CommonFieldDataWithPlacement] with Serializable

    Permalink
  9. object ConstructorData

    Permalink
  10. object Cosmetics extends Serializable

    Permalink
  11. object DestroyedVehicleData extends Marshallable[DestroyedVehicleData] with Serializable

    Permalink
  12. object DetailedAmmoBoxData extends Marshallable[DetailedAmmoBoxData] with Serializable

    Permalink
  13. object DetailedCharacterData extends Marshallable[DetailedCharacterData] with Serializable

    Permalink
  14. object DetailedCommandDetonaterData extends Marshallable[DetailedCommandDetonaterData] with Serializable

    Permalink
  15. object DetailedConstructionToolData extends Marshallable[DetailedConstructionToolData] with Serializable

    Permalink
  16. object DetailedLockerContainerData extends Marshallable[DetailedLockerContainerData] with Serializable

    Permalink
  17. object DetailedPlayerData extends Marshallable[DetailedPlayerData] with Serializable

    Permalink
  18. object DetailedREKData extends Marshallable[DetailedREKData] with Serializable

    Permalink
  19. object DetailedWeaponData extends Marshallable[DetailedWeaponData] with Serializable

    Permalink
  20. object DrawnSlot extends Enumeration

    Permalink

    Values for the equipment holster slot whose contained ("held") equipment can be drawn.

    Values for the equipment holster slot whose contained ("held") equipment can be drawn. The values for these Enums match the slot number by index for Infantry weapons.

    None is not a kludge. While any "not a holster" number can be used to indicate "no weapon drawn," seven is the value PlanetSide is looking for. Using five or six delays the first weapon draw while the client corrects its internal state.

  21. object DroppedItemData extends Serializable

    Permalink
  22. object DroppodData extends Marshallable[DroppodData] with Serializable

    Permalink
  23. object HandheldData extends Marshallable[HandheldData] with Serializable

    Permalink
  24. object ImplantEffects extends Enumeration

    Permalink

    Values for the implant effects on a character model.

    Values for the implant effects on a character model. The effects are not additive and this value is not a bitmask.

    RegenEffects is a reverse-flagged item - inactive when the corresponding bit is set. For that reason, every other effect is n + 1, while NoEffects is 1 and RegenEffects is 0.

  25. object ImplantEntry extends Serializable

    Permalink
  26. object InternalSlot extends Serializable

    Permalink
  27. object InventoryData extends Serializable

    Permalink
  28. object InventoryItemData

    Permalink

    Mask the use of InternalSlot using a fake class called an InventoryItemData.

  29. object LargeDeployableData extends Marshallable[LargeDeployableData] with Serializable

    Permalink
  30. object LockerContainerData extends Marshallable[LockerContainerData] with Serializable

    Permalink
  31. object MountItem

    Permalink

    Mask the use of InternalSlot using a fake class called a MountItem.

  32. object ObjectClass

    Permalink

    A reference between all object class codes and the name of the object they represent.

    A reference between all object class codes and the name of the object they represent. Object class types are defined by an 11-bit (0xB) value.

  33. object ObjectCreateBase

    Permalink
  34. object OneMannedFieldTurretData extends Marshallable[OneMannedFieldTurretData] with Serializable

    Permalink
  35. object OrbitalShuttleData extends Marshallable[OrbitalShuttleData] with Serializable

    Permalink
  36. object PersonalStyle extends Enumeration

    Permalink

    Values for the different specific customizations available as cosmetics.
    NoHelmet removes the current helmet on the reinforced exo-suit and the agile exo-suit; other cosmetics require no_helmet to be true before they can be seen; NoHelmet does not override Beret or BrimmedCap
    Beret player dons a beret
    Sunglasses player dons sunglasses
    Earpiece player dons an earpiece on the left
    BrimmedCap player dons a cap; the cap overrides the beret, if both are selected

  37. object PlacementData extends Marshallable[PlacementData] with Serializable

    Permalink
  38. object PlayerData extends Marshallable[PlayerData] with Serializable

    Permalink
  39. object Prefab

    Permalink

    A compilation of the common *Data objects that would be used for stock game objects.

    A compilation of the common *Data objects that would be used for stock game objects. Each function is named after the ObjectClass name (internal name) it creates. No Prefab assumes empire allegiance or initial health. This file is more useful for reference, rather than application.

  40. object REKData extends Marshallable[REKData] with Serializable

    Permalink
  41. object RibbonBars extends Marshallable[RibbonBars] with Serializable

    Permalink
  42. object SmallTurretData extends Marshallable[SmallTurretData] with Serializable

    Permalink
  43. object StreamBitSize

    Permalink
  44. object TRAPData extends Marshallable[TRAPData] with Serializable

    Permalink
  45. object TelepadDeployableData extends Marshallable[TelepadDeployableData] with Serializable

    Permalink
  46. object TerminalData

    Permalink

    A representation of an object that can be interacted with when using a variety of terminals.

    A representation of an object that can be interacted with when using a variety of terminals. This object is generally invisible.

  47. object TrackedProjectile extends Enumeration

    Permalink
  48. object TrackedProjectileData extends Marshallable[TrackedProjectileData] with Serializable

    Permalink
  49. object UniformStyle extends Enumeration

    Permalink

    Values for the four different color designs that impact a player's uniform.

    Values for the four different color designs that impact a player's uniform. Exo-suits get minor graphical updates at the following battle rank levels: seven (1), fourteen (2), and twenty-five (4). The values 3 and 5 also exist and are visually descriptive to the third upgrade.

  50. object VehicleData extends Marshallable[VehicleData] with Serializable

    Permalink
  51. object VehicleFormat extends Enumeration

    Permalink

    An Enumeration of the various formats that known structures that the stream of bits for VehicleData can assume.

  52. object WeaponData extends Marshallable[WeaponData] with Serializable

    Permalink

Ungrouped