d2netpackettype

package
v0.0.0-...-7f92c57 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 21, 2021 License: GPL-3.0 Imports: 1 Imported by: 0

Documentation

Overview

Package d2netpackettype defines types which are encoded to JSON and sent in network

packet payloads.

Package d2netpacket/d2netpackettype defines a uint32 enumerable representing each packet type.

A struct is defined for each packet type. Each struct comes with a function which returns a NetPacket declaring the type enum (header) followed by the associated struct (body). The NetPacket is marshaled to JSON for transport. On receipt of the packet, the enum is read as a single byte then the remaining data (the struct) is unmarshalled to the type associated with the type enum.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NetPacketType

type NetPacketType uint32

NetPacketType is an enum referring to all packet types in package d2netpacket.

const (
	UpdateServerInfo                NetPacketType = iota // Sent by the server, client sets the given player ID and map seed
	GenerateMap                                          // Sent by the server, client generates a map
	AddPlayer                                            // Sent by the server, client adds a player
	MovePlayer                                           // Sent by client or server, moves a player entity
	PlayerConnectionRequest                              // Sent by the remote client when connecting
	PlayerDisconnectionNotification                      // Sent by the remote client when disconnecting
	Ping                                                 // Requests a Pong packet
	Pong                                                 // Responds to a Ping packet
	ServerClosed                                         // Sent by the local host when it has closed the server
	CastSkill                                            // Sent by client or server, indicates entity casting skill
	SpawnItem                                            // Sent by server
	SavePlayer                                           // Sent by the client, saves the player
	ServerFull                                           // Sent by server when server has reached max connections

	UnknownPacketType = 666
)

(Except NetPacket which declares a NetPacketType to specify the packet body type. See d2netpackettype.NetPacket.)

Warning

Do NOT re-arrange the order of these packet values unless you want to break compatibility between clients of slightly different versions. Also note that the packet id is a byte, so if we use more than 256 of these then we are doing something very wrong.

func (NetPacketType) MarshalPacket

func (n NetPacketType) MarshalPacket() ([]byte, error)

MarshalPacket marshals the packet to a byte slice

func (NetPacketType) String

func (n NetPacketType) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL