Packages

final case class BuildingInfoUpdateMessage(continent_id: Int, building_map_id: Int, ntu_level: Int, is_hacked: Boolean, empire_hack: types.PlanetSideEmpire.Value, hack_time_remaining: Long, empire_own: types.PlanetSideEmpire.Value, unk1: Long, unk1x: Option[Additional1], generator_state: types.PlanetSideGeneratorState.Value, spawn_tubes_normal: Boolean, force_dome_active: Boolean, lattice_benefit: Set[LatticeBenefit], cavern_benefit: Set[CavernBenefit], unk4: List[Additional2], unk5: Long, unk6: Boolean, unk7: Int, unk7x: Option[Additional3], boost_spawn_pain: Boolean, boost_generator_pain: Boolean) extends PlanetSideGamePacket with Product with Serializable

Update the state of map asset for a client's specific building's state. The most common application of this packet is to synchronize map state during world login.

A "building" mainly constitutes any map-viewable structure that has properties or whose ownership can be asserted. This packet is valid for all major facilities, field towers, warp gates, and some static environment elements. Additional properties, if available, can be viewed by selecting the sphere of influence of a given building. The combination of continent UID and building UID ensures that all buildings are uniquely-defined. This packet can be applied on any continent and will affect the appropriate building on any other continent. As the intercontinental map is always available, all map assets will publish real time updates to all players. Map information configured by this packet is not obscured from any players, regardless of faction. (Network state updates will be delayed for, and the type of compromise will not be specified to, defenders.)

Aside from the map-viewable aspects, a few properties set by this packet also have game world effects. Additionally, though most parameters are treated as mandatory, not all buildings will be able to use those parameters. A parameter that is not applicable for a given asset, e.g., NTU for a field tower, will be ignored. A collision between some parameters can occur. For example, if is_hacking is false, the other hacking fields are considered invalid. If is_hacking is true but the hacking empire is also the owning empire, the is_hacking state is invalid.

continent_id

the continent (zone)

building_map_id

the map id of this building from the MPO files

ntu_level

if the building has a silo, the amount of NTU in that silo; NTU is reported in multiples of 10%; valid for 0 (0%) to 10 (100%)

is_hacked

if the building can be hacked and will take time to convert, whether the building is being hacked

empire_hack

if the building is being hacked, the empire that is performing the hacking

hack_time_remaining

if the building is being hacked, the amount of time remaining until the hack finishes/clears; recorded in milliseconds (ms)

empire_own

the empire that owns the building currently

unk1

na; value != 0 causes the next field to be defined

unk1x

na

generator_state

if the building has a generator, the state of the generator

spawn_tubes_normal

if the building has spawn tubes, whether at least one of the tubes is powered and operational

force_dome_active

if the building is a capitol facility, whether the force dome is active

lattice_benefit

the benefits from other Lattice-linked bases does this building possess

cavern_benefit

cavern benefits; any non-zero value will cause the cavern module icon (yellow) to appear; proper module values cause the cavern module icon to render green; all benefits will report as due to a "Cavern Lock"

unk4

na

unk5

na

unk6

na

unk7

na; value != 8 causes the next field to be defined

unk7x

na

boost_spawn_pain

if the building has spawn tubes, the (boosted) strength of its enemy pain field

boost_generator_pain

if the building has a generator, the (boosted) strength of its enemy pain field

Source
BuildingInfoUpdateMessage.scala
Linear Supertypes
Product, Equals, PlanetSideGamePacket, PlanetSidePacket, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BuildingInfoUpdateMessage
  2. Product
  3. Equals
  4. PlanetSideGamePacket
  5. PlanetSidePacket
  6. Serializable
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new BuildingInfoUpdateMessage(continent_id: Int, building_map_id: Int, ntu_level: Int, is_hacked: Boolean, empire_hack: types.PlanetSideEmpire.Value, hack_time_remaining: Long, empire_own: types.PlanetSideEmpire.Value, unk1: Long, unk1x: Option[Additional1], generator_state: types.PlanetSideGeneratorState.Value, spawn_tubes_normal: Boolean, force_dome_active: Boolean, lattice_benefit: Set[LatticeBenefit], cavern_benefit: Set[CavernBenefit], unk4: List[Additional2], unk5: Long, unk6: Boolean, unk7: Int, unk7x: Option[Additional3], boost_spawn_pain: Boolean, boost_generator_pain: Boolean)

    continent_id

    the continent (zone)

    building_map_id

    the map id of this building from the MPO files

    ntu_level

    if the building has a silo, the amount of NTU in that silo; NTU is reported in multiples of 10%; valid for 0 (0%) to 10 (100%)

    is_hacked

    if the building can be hacked and will take time to convert, whether the building is being hacked

    empire_hack

    if the building is being hacked, the empire that is performing the hacking

    hack_time_remaining

    if the building is being hacked, the amount of time remaining until the hack finishes/clears; recorded in milliseconds (ms)

    empire_own

    the empire that owns the building currently

    unk1

    na; value != 0 causes the next field to be defined

    unk1x

    na

    generator_state

    if the building has a generator, the state of the generator

    spawn_tubes_normal

    if the building has spawn tubes, whether at least one of the tubes is powered and operational

    force_dome_active

    if the building is a capitol facility, whether the force dome is active

    lattice_benefit

    the benefits from other Lattice-linked bases does this building possess

    cavern_benefit

    cavern benefits; any non-zero value will cause the cavern module icon (yellow) to appear; proper module values cause the cavern module icon to render green; all benefits will report as due to a "Cavern Lock"

    unk4

    na

    unk5

    na

    unk6

    na

    unk7

    na; value != 8 causes the next field to be defined

    unk7x

    na

    boost_spawn_pain

    if the building has spawn tubes, the (boosted) strength of its enemy pain field

    boost_generator_pain

    if the building has a generator, the (boosted) strength of its enemy pain field

Type Members

  1. type Packet = BuildingInfoUpdateMessage

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val boost_generator_pain: Boolean
  6. val boost_spawn_pain: Boolean
  7. val building_map_id: Int
  8. val cavern_benefit: Set[CavernBenefit]
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  10. val continent_id: Int
  11. val empire_hack: types.PlanetSideEmpire.Value
  12. val empire_own: types.PlanetSideEmpire.Value
  13. def encode: Attempt[BitVector]
  14. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  16. val force_dome_active: Boolean
  17. val generator_state: types.PlanetSideGeneratorState.Value
  18. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  19. val hack_time_remaining: Long
  20. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  21. val is_hacked: Boolean
  22. val lattice_benefit: Set[LatticeBenefit]
  23. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  25. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. val ntu_level: Int
  27. def opcode: GamePacketOpcode.Value
  28. def productElementNames: Iterator[String]
    Definition Classes
    Product
  29. val spawn_tubes_normal: Boolean
  30. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  31. val unk1: Long
  32. val unk1x: Option[Additional1]
  33. val unk4: List[Additional2]
  34. val unk5: Long
  35. val unk6: Boolean
  36. val unk7: Int
  37. val unk7x: Option[Additional3]
  38. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  39. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  40. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from Product

Inherited from Equals

Inherited from PlanetSideGamePacket

Inherited from PlanetSidePacket

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped