common

package
v1.0.41 Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2024 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

View Source
const Version_Latest = Version_1_20_4

Variables

This section is empty.

Functions

This section is empty.

Types

type Bound

type Bound uint8
const (
	ClientBound Bound = iota
	ServerBound
)

type ClientBoundPacket added in v1.0.4

type ClientBoundPacket string
const (

	// Status
	ClientBoundStatusResponse ClientBoundPacket = "StatusResponse"
	ClientBoundStatusPong     ClientBoundPacket = "StatusPong"

	// Configuration
	ClientBoundConfigurationBrand           ClientBoundPacket = "PluginMessage"
	ClientBoundConfigurationDisconnect      ClientBoundPacket = "Disconnect"
	ClientBoundConfigurationFinish          ClientBoundPacket = "Finish"
	ClientBoundConfigurationKeepAlive       ClientBoundPacket = "KeepAlive"
	ClientBoundConfigurationPing            ClientBoundPacket = "Ping"
	ClientBoundConfigurationRegistryData    ClientBoundPacket = "RegistryData"
	ClientBoundConfigurationRemResourcePack ClientBoundPacket = "RemResourcePack"
	ClientBoundConfigurationAddResourcePack ClientBoundPacket = "AddResourcePack"
	ClientBoundConfigurationFeatureFlags    ClientBoundPacket = "FeatureFlags"
	ClientBoundConfigurationUpdateTags      ClientBoundPacket = "UpdateTags"

	// Login
	ClientBoundLoginDisconnect        ClientBoundPacket = "Disconnect"
	ClientBoundLoginEncryptionRequest ClientBoundPacket = "EncryptionRequest"
	ClientBoundLoginSuccess           ClientBoundPacket = "LoginSuccess"
	ClientBoundLoginSetCompression    ClientBoundPacket = "SetCompression"
	ClientBoundLoginPluginRequest     ClientBoundPacket = "LoginPluginRequest"

	// Play
	ClientBoundPlayBundleDelimiter                 ClientBoundPacket = "BundleDelimiter"
	ClientBoundPlaySpawnEntity                     ClientBoundPacket = "SpawnEntity"
	ClientBoundPlaySpawnExperienceOrb              ClientBoundPacket = "SpawnExperienceOrb"
	ClientBoundPlaySpawnPlayer                     ClientBoundPacket = "SpawnPlayer"
	ClientBoundPlayEntityAnimation                 ClientBoundPacket = "EntityAnimation"
	ClientBoundPlayAwardStatistics                 ClientBoundPacket = "AwardStatistics"
	ClientBoundPlayAcknowledgeBlockChange          ClientBoundPacket = "AcknowledgeBlockChange"
	ClientBoundPlaySetBlockDestroyStage            ClientBoundPacket = "SetBlockDestroyStage"
	ClientBoundPlayBlockEntityData                 ClientBoundPacket = "BlockEntityData"
	ClientBoundPlayBlockAction                     ClientBoundPacket = "BlockAction"
	ClientBoundPlayBlockUpdate                     ClientBoundPacket = "BlockUpdate"
	ClientBoundPlayBossBar                         ClientBoundPacket = "BossBar"
	ClientBoundPlayChangeDifficulty                ClientBoundPacket = "ChangeDifficulty"
	ClientBoundPlayChunkBatchFinished              ClientBoundPacket = "ChunkBatchFinished"
	ClientBoundPlayChunkBatchStart                 ClientBoundPacket = "ChunkBatchStart"
	ClientBoundPlayChunkBiomes                     ClientBoundPacket = "ChunkBiomes"
	ClientBoundPlayClearTitles                     ClientBoundPacket = "ClearTitles"
	ClientBoundPlayCommandSuggestionsResponse      ClientBoundPacket = "CommandSuggestionsResponse"
	ClientBoundPlayCommands                        ClientBoundPacket = "Commands"
	ClientBoundPlayCloseContainer                  ClientBoundPacket = "CloseContainer"
	ClientBoundPlaySetContainerContent             ClientBoundPacket = "SetContainerContent"
	ClientBoundPlaySetContainerProperty            ClientBoundPacket = "SetContainerProperty"
	ClientBoundPlaySetContainerSlot                ClientBoundPacket = "SetContainerSlot"
	ClientBoundPlaySetCooldown                     ClientBoundPacket = "SetCooldown"
	ClientBoundPlayChatSuggestions                 ClientBoundPacket = "ChatSuggestions"
	ClientBoundPlayPluginMessage                   ClientBoundPacket = "PluginMessage"
	ClientBoundPlayDamageEvent                     ClientBoundPacket = "DamageEvent"
	ClientBoundPlayDeleteMessage                   ClientBoundPacket = "DeleteMessage"
	ClientBoundPlayDisconnect                      ClientBoundPacket = "Disconnect"
	ClientBoundPlayDisguisedChatMessage            ClientBoundPacket = "DisguisedChatMessage"
	ClientBoundPlayEntityEvent                     ClientBoundPacket = "EntityEvent"
	ClientBoundPlayExplosion                       ClientBoundPacket = "Explosion"
	ClientBoundPlayUnloadChunk                     ClientBoundPacket = "UnloadChunk"
	ClientBoundPlayGameEvent                       ClientBoundPacket = "GameEvent"
	ClientBoundPlayOpenHorseScreen                 ClientBoundPacket = "OpenHorseScreen"
	ClientBoundPlayHurtAnimation                   ClientBoundPacket = "HurtAnimation"
	ClientBoundPlayInitializeWorldBorder           ClientBoundPacket = "InitializeWorldBorder"
	ClientBoundPlayKeepAlive                       ClientBoundPacket = "KeepAlive"
	ClientBoundPlayChunkDataAndUpdateLight         ClientBoundPacket = "ChunkDataAndUpdateLight"
	ClientBoundPlayWorldEvent                      ClientBoundPacket = "WorldEvent"
	ClientBoundPlayParticle                        ClientBoundPacket = "Particle"
	ClientBoundPlayUpdateLight                     ClientBoundPacket = "UpdateLight"
	ClientBoundPlayLogin                           ClientBoundPacket = "Login"
	ClientBoundPlayMapData                         ClientBoundPacket = "MapData"
	ClientBoundPlayMerchantOffers                  ClientBoundPacket = "MerchantOffers"
	ClientBoundPlayUpdateEntityPosition            ClientBoundPacket = "UpdateEntityPosition"
	ClientBoundPlayUpdateEntityPositionAndRotation ClientBoundPacket = "UpdateEntityPositionAndRotation"
	ClientBoundPlayUpdateEntityRotation            ClientBoundPacket = "UpdateEntityRotation"
	ClientBoundPlayMoveVehicle                     ClientBoundPacket = "MoveVehicle"
	ClientBoundPlayOpenBook                        ClientBoundPacket = "OpenBook"
	ClientBoundPlayOpenScreen                      ClientBoundPacket = "OpenScreen"
	ClientBoundPlayOpenSignEditor                  ClientBoundPacket = "OpenSignEditor"
	ClientBoundPlayPing                            ClientBoundPacket = "Ping"
	ClientBoundPlayPingResponse                    ClientBoundPacket = "PingResponse"
	ClientBoundPlayPlaceGhostRecipe                ClientBoundPacket = "PlaceGhostRecipe"
	ClientBoundPlayPlayerAbilities                 ClientBoundPacket = "PlayerAbilities"
	ClientBoundPlayPlayerChatMessage               ClientBoundPacket = "PlayerChatMessage"
	ClientBoundPlayEndCombat                       ClientBoundPacket = "EndCombat"
	ClientBoundPlayEnterCombat                     ClientBoundPacket = "EnterCombat"
	ClientBoundPlayCombatDeath                     ClientBoundPacket = "CombatDeath"
	ClientBoundPlayPlayerInfoRemove                ClientBoundPacket = "PlayerInfoRemove"
	ClientBoundPlayPlayerInfoUpdate                ClientBoundPacket = "PlayerInfoUpdate"
	ClientBoundPlayLookAt                          ClientBoundPacket = "LookAt"
	ClientBoundPlaySynchronizePlayerPosition       ClientBoundPacket = "SynchronizePlayerPosition"
	ClientBoundPlayUpdateRecipeBook                ClientBoundPacket = "UpdateRecipeBook"
	ClientBoundPlayRemoveEntities                  ClientBoundPacket = "RemoveEntities"
	ClientBoundPlayRemoveEntityEffect              ClientBoundPacket = "RemoveEntityEffect"
	ClientBoundPlayResourcePack                    ClientBoundPacket = "ResourcePack"
	ClientBoundPlayRespawn                         ClientBoundPacket = "Respawn"
	ClientBoundPlayResetScore                      ClientBoundPacket = "ResetScore"
	ClientBoundPlayRemoveResourcePack              ClientBoundPacket = "RemoveResourcePack"
	ClientBoundPlaySetHeadRotation                 ClientBoundPacket = "SetHeadRotation"
	ClientBoundPlayUpdateSectionBlocks             ClientBoundPacket = "UpdateSectionBlocks"
	ClientBoundPlaySelectAdvancementTab            ClientBoundPacket = "SelectAdvancementTab"
	ClientBoundPlayServerData                      ClientBoundPacket = "ServerData"
	ClientBoundPlaySetActionBarText                ClientBoundPacket = "SetActionBarText"
	ClientBoundPlaySetBorderCenter                 ClientBoundPacket = "SetBorderCenter"
	ClientBoundPlaySetBorderLerpSize               ClientBoundPacket = "SetBorderLerpSize"
	ClientBoundPlaySetBorderSize                   ClientBoundPacket = "SetBorderSize"
	ClientBoundPlaySetBorderWarningDelay           ClientBoundPacket = "SetBorderWarningDelay"
	ClientBoundPlaySetBorderWarningDistance        ClientBoundPacket = "SetBorderWarningDistance"
	ClientBoundPlaySetCamera                       ClientBoundPacket = "SetCamera"
	ClientBoundPlaySetHeldItem                     ClientBoundPacket = "SetHeldItem"
	ClientBoundPlaySetCenterChunk                  ClientBoundPacket = "SetCenterChunk"
	ClientBoundPlaySetRenderDistance               ClientBoundPacket = "SetRenderDistance"
	ClientBoundPlaySetDefaultSpawnPosition         ClientBoundPacket = "SetDefaultSpawnPosition"
	ClientBoundPlayDisplayObjective                ClientBoundPacket = "DisplayObjective"
	ClientBoundPlaySetEntityMetadata               ClientBoundPacket = "SetEntityMetadata"
	ClientBoundPlayLinkEntities                    ClientBoundPacket = "LinkEntities"
	ClientBoundPlaySetEntityVelocity               ClientBoundPacket = "SetEntityVelocity"
	ClientBoundPlaySetEquipment                    ClientBoundPacket = "SetEquipment"
	ClientBoundPlaySetExperience                   ClientBoundPacket = "SetExperience"
	ClientBoundPlaySetHealth                       ClientBoundPacket = "SetHealth"
	ClientBoundPlayUpdateObjectives                ClientBoundPacket = "UpdateObjectives"
	ClientBoundPlaySetPassengers                   ClientBoundPacket = "SetPassengers"
	ClientBoundPlayUpdateTeams                     ClientBoundPacket = "UpdateTeams"
	ClientBoundPlayUpdateScore                     ClientBoundPacket = "UpdateScore"
	ClientBoundPlaySetSimulationDistance           ClientBoundPacket = "SetSimulationDistance"
	ClientBoundPlaySetSubtitleText                 ClientBoundPacket = "SetSubtitleText"
	ClientBoundPlayUpdateTime                      ClientBoundPacket = "UpdateTime"
	ClientBoundPlaySetTitleText                    ClientBoundPacket = "SetTitleText"
	ClientBoundPlaySetTitleAnimationTimes          ClientBoundPacket = "SetTitleAnimationTimes"
	ClientBoundPlayEntitySoundEffect               ClientBoundPacket = "EntitySoundEffect"
	ClientBoundPlaySoundEffect                     ClientBoundPacket = "SoundEffect"
	ClientBoundPlayStartConfiguration              ClientBoundPacket = "StartConfiguration"
	ClientBoundPlayStopSound                       ClientBoundPacket = "StopSound"
	ClientBoundPlaySystemChatMessage               ClientBoundPacket = "SystemChatMessage"
	ClientBoundPlaySetTabListHeaderAndFooter       ClientBoundPacket = "SetTabListHeaderAndFooter"
	ClientBoundPlayTagQueryResponse                ClientBoundPacket = "TagQueryResponse"
	ClientBoundPlayPickupItem                      ClientBoundPacket = "PickupItem"
	ClientBoundPlaySetTickingState                 ClientBoundPacket = "SetTickingState"
	ClientBoundPlayStepTick                        ClientBoundPacket = "StepTick"
	ClientBoundPlayTeleportEntity                  ClientBoundPacket = "TeleportEntity"
	ClientBoundPlayUpdateAdvancements              ClientBoundPacket = "UpdateAdvancements"
	ClientBoundPlayUpdateAttributes                ClientBoundPacket = "UpdateAttributes"
	ClientBoundPlayFeatureFlags                    ClientBoundPacket = "FeatureFlags"
	ClientBoundPlayEntityEffect                    ClientBoundPacket = "EntityEffect"
	ClientBoundPlayUpdateRecipes                   ClientBoundPacket = "UpdateRecipes"
	ClientBoundPlayUpdateTags                      ClientBoundPacket = "UpdateTags"
)

type PacketRegistry

type PacketRegistry interface {
	Register(state State, id primitive.VarInt, packet string)
	GetPacket(state State, id primitive.VarInt) *string
	GetID(state State, packet string) *primitive.VarInt
}

func NewPacketRegistry

func NewPacketRegistry() PacketRegistry

Ideally we would get via something like PacketRegistry.GetPacketID(nil.(Type))

type ServerBoundPacket added in v1.0.4

type ServerBoundPacket string
const (

	// Handshake
	ServerBoundHandshake                     ServerBoundPacket = "Handshake"
	ServerBoundHandshakeLegacyServerListPing ServerBoundPacket = "LegacyServerListPing"

	// Status
	ServerBoundStatusRequest ServerBoundPacket = "StatusRequest"
	ServerBoundStatusPing    ServerBoundPacket = "StatusPing"

	// Configuration
	ServerBoundConfigurationClientInformation    ServerBoundPacket = "ClientInformation"
	ServerBoundConfigurationPluginMessage        ServerBoundPacket = "PluginMessage"
	ServerBoundConfigurationFinish               ServerBoundPacket = "Finish"
	ServerBoundConfigurationKeepAlive            ServerBoundPacket = "KeepAlive"
	ServerBoundConfigurationPong                 ServerBoundPacket = "Pong"
	ServerBoundConfigurationResourcePackResponse ServerBoundPacket = "ResourcePackResponse"

	// Login
	ServerBoundLoginStart              ServerBoundPacket = "LoginStart"
	ServerBoundLoginEncryptionResponse ServerBoundPacket = "LoginEncryptionResponse"
	ServerBoundLoginPluginResponse     ServerBoundPacket = "LoginPluginResponse"
	ServerBoundLoginAcknowledged       ServerBoundPacket = "LoginAcknowledged"

	// Play
	ServerBoundPlayConfirmTeleportation         ServerBoundPacket = "ConfirmTeleportation"
	ServerBoundPlayQueryBlockEntityTag          ServerBoundPacket = "QueryBlockEntityTag"
	ServerBoundPlayChangeDifficulty             ServerBoundPacket = "ChangeDifficulty"
	ServerBoundPlayMessageAcknowledgement       ServerBoundPacket = "MessageAcknowledgement"
	ServerBoundPlayChatCommand                  ServerBoundPacket = "ChatCommand"
	ServerBoundPlayChatMessage                  ServerBoundPacket = "ChatMessage"
	ServerBoundPlayPlayerSession                ServerBoundPacket = "PlayerSession"
	ServerBoundPlayChunkBatchReceived           ServerBoundPacket = "ChunkBatchRecieved"
	ServerBoundPlayClientCommand                ServerBoundPacket = "ClientCommand"
	ServerBoundPlayClientInformation            ServerBoundPacket = "ClientInformation"
	ServerBoundPlayCommandSuggestionsRequest    ServerBoundPacket = "CommandSuggestionsRequest"
	ServerBoundPlayConfigurationAcknowledged    ServerBoundPacket = "ConfigurationAcknowledged"
	ServerBoundPlayClickContainerButton         ServerBoundPacket = "ClickContainerButton"
	ServerBoundPlayClickContainer               ServerBoundPacket = "ClickContainer"
	ServerBoundPlayCloseContainer               ServerBoundPacket = "CloseContainer"
	ServerBoundPlayChangeContainerSlotState     ServerBoundPacket = "ChangeContainerSlotState"
	ServerBoundPlayPluginMessage                ServerBoundPacket = "PluginMessage"
	ServerBoundPlayEditBook                     ServerBoundPacket = "EditBook"
	ServerBoundPlayQueryEntityTag               ServerBoundPacket = "QueryEntityTag"
	ServerBoundPlayInteractEntity               ServerBoundPacket = "InteractEntity"
	ServerBoundPlayJigsawGenerate               ServerBoundPacket = "JigsawGenerate"
	ServerBoundPlayKeepAlive                    ServerBoundPacket = "KeepAlive"
	ServerBoundPlayLockDifficulty               ServerBoundPacket = "LockDifficulty"
	ServerBoundPlaySetPlayerPosition            ServerBoundPacket = "SetPlayerPosition"
	ServerBoundPlaySetPlayerPositionAndRotation ServerBoundPacket = "SetPlayerPositionAndRotation"
	ServerBoundPlaySetPlayerRotation            ServerBoundPacket = "SetPlayerRotation"
	ServerBoundPlaySetPlayerOnGround            ServerBoundPacket = "SetPlayerOnGround"
	ServerBoundPlayMoveVehicle                  ServerBoundPacket = "MoveVehicle"
	ServerBoundPlayPaddleBoat                   ServerBoundPacket = "PaddleBoat"
	ServerBoundPlayPickItem                     ServerBoundPacket = "PickItem"
	ServerBoundPlayPingRequest                  ServerBoundPacket = "PingRequest"
	ServerBoundPlayPlaceRecipe                  ServerBoundPacket = "PlaceRecipe"
	ServerBoundPlayPlayerAbilities              ServerBoundPacket = "PlayerAbilities"
	ServerBoundPlayPlayerAction                 ServerBoundPacket = "PlayerAction"
	ServerBoundPlayPlayerCommand                ServerBoundPacket = "PlayerCommand"
	ServerBoundPlayPlayerInput                  ServerBoundPacket = "PlayerInput"
	ServerBoundPlayPong                         ServerBoundPacket = "Pong"
	ServerBoundPlayChangeRecipeBookSettings     ServerBoundPacket = "ChangeRecipeBookSettings"
	ServerBoundPlaySetSeenRecipe                ServerBoundPacket = "SetSeenRecipe"
	ServerBoundPlayRenameItem                   ServerBoundPacket = "RenameItem"
	ServerBoundPlayResourcePack                 ServerBoundPacket = "ResourcePack"
	ServerBoundPlaySeenAdvancements             ServerBoundPacket = "SeenAdvancements"
	ServerBoundPlaySelectTrade                  ServerBoundPacket = "SelectTrade"
	ServerBoundPlaySetBeaconEffect              ServerBoundPacket = "SetBeaconEffect"
	ServerBoundPlaySetHeldItem                  ServerBoundPacket = "SetHeldItem"
	ServerBoundPlayProgramCommandBlock          ServerBoundPacket = "ProgramCommandBlock"
	ServerBoundPlayProgramCommandBlockMinecart  ServerBoundPacket = "ProgramCommandBlockMinecart"
	ServerBoundPlaySetCreativeModeSlot          ServerBoundPacket = "SetCreativeModeSlot"
	ServerBoundPlayProgramJigsawBlock           ServerBoundPacket = "ProgramJigsawBlock"
	ServerBoundPlayProgramStructureBlock        ServerBoundPacket = "ProgramStructureBlock"
	ServerBoundPlayUpdateSign                   ServerBoundPacket = "UpdateSign"
	ServerBoundPlaySwingArm                     ServerBoundPacket = "SwingArm"
	ServerBoundPlayTeleportToEntity             ServerBoundPacket = "TeleportToEntity"
	ServerBoundPlayUseItemOn                    ServerBoundPacket = "UseItemOn"
	ServerBoundPlayUseItem                      ServerBoundPacket = "UseItem"
)

type State

type State uint8
const (
	HandshakingState State = iota
	StatusState
	LoginState
	ConfigurationState
	PlayState
)

type Version

type Version uint16

Version is a type that represents the version of the protocol.

const (
	Version_1_7_10 Version = 5
	Version_1_8    Version = 47
	Version_1_9    Version = 107
	Version_1_9_1  Version = 108
	Version_1_9_2  Version = 109
	Version_1_9_3  Version = 110
	Version_1_9_4  Version = 111
	Version_1_10   Version = 210
	Version_1_11   Version = 315
	Version_1_11_1 Version = 316
	Version_1_12   Version = 335
	Version_1_12_1 Version = 338
	Version_1_12_2 Version = 340
	Version_1_13   Version = 393
	Version_1_13_1 Version = 401
	Version_1_13_2 Version = 404
	Version_1_14   Version = 477
	Version_1_14_1 Version = 480
	Version_1_14_2 Version = 485
	Version_1_14_3 Version = 490
	Version_1_14_4 Version = 498
	Version_1_15   Version = 573
	Version_1_15_1 Version = 575
	Version_1_15_2 Version = 578
	Version_1_16   Version = 735
	Version_1_16_1 Version = 736
	Version_1_16_2 Version = 751
	Version_1_16_3 Version = 753
	Version_1_16_4 Version = 754
	Version_1_17   Version = 755
	Version_1_17_1 Version = 756
	Version_1_18_1 Version = 757
	Version_1_18_2 Version = 758
	Version_1_19   Version = 759
	Version_1_19_1 Version = 760
	Version_1_19_2 Version = 760
	Version_1_19_3 Version = 761
	Version_1_19_4 Version = 762
	Version_1_20   Version = 763
	Version_1_20_1 Version = 763
	Version_1_20_2 Version = 764
	Version_1_20_3 Version = 765
	Version_1_20_4 Version = 765
)

func (Version) HasConfigState added in v1.0.40

func (v Version) HasConfigState() bool

HasConfigState represents that the server expects to go through the config state before login state

func (Version) HasNetworkNBT added in v1.0.40

func (v Version) HasNetworkNBT() bool

HasNetworkNBT represents that the server expects nameless nbt data https://wiki.vg/NBT#Network_NBT_.28Java_Edition.29

Jump to

Keyboard shortcuts

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