Class/Object

net.psforever.packet.game

ReplicationStreamMessage

Related Docs: object ReplicationStreamMessage | package game

Permalink

final case class ReplicationStreamMessage(behavior: Int, behavior2: Option[Int], entries: Vector[SquadListing]) extends PlanetSideGamePacket with Product with Serializable

Modify the list of squads available to a given player. The squad list updates in real time rather than just whenever a player opens the squad information window.

The four main operations are: initializing the list, updating entries in the list, removing entries from the list, and clearing the list. The process of initializing the list and clearing the list actually are performed by similar behavior. Squads would just not be added after the list clears. Moreover, removing entries from the list overrides the behavior to update entries in the list. The two-three codes per entry (see SquadHeader) are important for determining the effect of a specific entry. As of the moment, the important details of the behaviors is that they modify how the packet is encoded and padded.

Referring to information in SquadListing, entries are identified by their index in the list. This is followed by a coded section that indicates what action the entry will execute on that squad listing. After the "coded action" section is the "general information" section where the data for the change is specified. In this manner, all the entries will have a knowable length.

The total number of entries in a packet is not known until they have all been parsed. During the list initialization process, the entries must be in ascending order of index. Otherwise, the specific index of the squad listing is referenced. The minimum number of entries is "no entries." The maximum number of entries is supposedly 254. The last item is always the index 255 and this is interpreted as the end of the stream.

When no updates are provided, the client loads a default (but invalid) selection of data comprising four squads:
0  Holeesh      another purpose  Desolation  6/7
1  Korealis     another purpose  Drugaskan   10/10
2  PsychoSanta  blah blah blah               10/10
3  Squishling   another purpose  Cyssor      8/10
The last entry is entirely in green text.

Behaviors:
behavior behavior2
1        X         Update where initial entry removes a squad from the list
5        6         Clear squad list and initialize new squad list
5        6         Clear squad list (transitions directly into 255-entry)
6        X         Update a squad in the list

behavior

a code that suggests the primary purpose of the data in this packet

behavior2

during initialization, this code is read; it supplements the normal behavior and is typically is an "update" code

entries

a Vector of the squad listings

Source
ReplicationStreamMessage.scala
Linear Supertypes
Product, Equals, PlanetSideGamePacket, PlanetSidePacket, Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ReplicationStreamMessage
  2. Product
  3. Equals
  4. PlanetSideGamePacket
  5. PlanetSidePacket
  6. Serializable
  7. Serializable
  8. AnyRef
  9. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ReplicationStreamMessage(behavior: Int, behavior2: Option[Int], entries: Vector[SquadListing])

    Permalink

    behavior

    a code that suggests the primary purpose of the data in this packet

    behavior2

    during initialization, this code is read; it supplements the normal behavior and is typically is an "update" code

    entries

    a Vector of the squad listings

Type Members

  1. type Packet = ReplicationStreamMessage

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to any2stringadd[ReplicationStreamMessage] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ReplicationStreamMessage, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to ArrowAssoc[ReplicationStreamMessage] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. val behavior: Int

    Permalink

    a code that suggests the primary purpose of the data in this packet

  8. val behavior2: Option[Int]

    Permalink

    during initialization, this code is read; it supplements the normal behavior and is typically is an "update" code

  9. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def encode: Attempt[BitVector]

    Permalink
  11. def ensuring(cond: (ReplicationStreamMessage) ⇒ Boolean, msg: ⇒ Any): ReplicationStreamMessage

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to Ensuring[ReplicationStreamMessage] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: (ReplicationStreamMessage) ⇒ Boolean): ReplicationStreamMessage

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to Ensuring[ReplicationStreamMessage] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: Boolean, msg: ⇒ Any): ReplicationStreamMessage

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to Ensuring[ReplicationStreamMessage] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: Boolean): ReplicationStreamMessage

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to Ensuring[ReplicationStreamMessage] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. val entries: Vector[SquadListing]

    Permalink

    a Vector of the squad listings

  16. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to StringFormat[ReplicationStreamMessage] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  19. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  20. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  21. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  22. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  23. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  24. def opcode: GamePacketOpcode.Value

    Permalink
  25. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  26. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. def [B](y: B): (ReplicationStreamMessage, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ReplicationStreamMessage to ArrowAssoc[ReplicationStreamMessage] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from Product

Inherited from Equals

Inherited from PlanetSideGamePacket

Inherited from PlanetSidePacket

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from ReplicationStreamMessage to any2stringadd[ReplicationStreamMessage]

Inherited by implicit conversion StringFormat from ReplicationStreamMessage to StringFormat[ReplicationStreamMessage]

Inherited by implicit conversion Ensuring from ReplicationStreamMessage to Ensuring[ReplicationStreamMessage]

Inherited by implicit conversion ArrowAssoc from ReplicationStreamMessage to ArrowAssoc[ReplicationStreamMessage]

Ungrouped