Package-level declarations

Types

Link copied to clipboard
class UpdateInvFull : OutgoingGameMessage

Update inv full is used to perform a full synchronization of an inventory's contents to the client. The client will wipe any existing cache of this inventory prior to performing an update. While not very well known, it is possible to send less objs than the inventory's respective capacity in the cache. As an example, if the inventory's capacity in the cache is 500, but the inv only has a single object at the first slot, a simple compression method is to send the capacity as 1 to the client, and only inform of the single object that does exist - all others would be presumed non-existent. There is no need to transmit all 500 slots when the remaining 499 are not filled, saving considerable amount of space in the process.

Link copied to clipboard
class UpdateInvPartial : OutgoingGameMessage

Update inv partial is used to send an update of an inventory that doesn't include the entire inventory. This is typically used after the first UpdateInvFull update has been performed, as subsequent updates tend to be smaller, such as picking up an object - only a single slot in the player's inventory would change, not warranting the full 28-slot update as a result.

Link copied to clipboard
class UpdateInvStopTransmit(val inventoryId: Int) : OutgoingGameMessage

Update inv stop transmit is used by the server to inform the client that no more updates for a given inventory are expected. In OldSchool RuneScape, this is sent whenever an interface that's linked to the inventory is sent. In doing so, the client will wipe its cache of the given inventory. There is no technical reason to send this, however, as it doesn't prevent anything from functioning as normal.