49783af611b86328d20bd2e683571c4cc8b057ef
T
libmc
A lightweight minecraft client-side protocol library for Kotlin Native and JVM
Supported targets
| Platform | Target | Support Tier |
|---|---|---|
| Java | JVM 1.8 | Mainly Supported |
| Windows | MinGW X64 | Mainly Supported |
| Linux | Linux X64 | Mainly Supported |
| Linux ARM64 | Not Tested | |
| macOS | macOS ARM64 (Silicon) | Not Tested |
Get started
Minecraft Protocol Library Status
Unimplemented
- Chunk & World Data: Level Chunk Data with Light decoder (Paletted Containers, Direct/Indirect Palettes)
- Light Engine Update: Sky & Block light nibble array parser
- Debug Packets Parsing: Debug subs, block/entity states, and game performance sample events
Encryption was implemented
Protocol Packet Codecs Mapping
Click to expand
1. Status Stage
Clientbound
0x00Status Response (ClientboundStatusResponsePacket)0x01Pong Response (ClientboundPongResponsePacket)
Serverbound
0x00Status Request (ServerboundStatusRequestPacket)0x01Ping Request (ServerboundPingRequestPacket)
2. Handshake Stage
Serverbound
0x00Handshake (ServerboundHandshakePacket)
3. Login Stage
Clientbound
0x00Disconnect (ClientboundDisconnectLoginPacket)0x01Encryption Request (ClientboundHelloPacket)0x02Login Success (ClientboundLoginSuccessPacket)0x03Set Compression (ClientboundSetCompressionPacket)0x04Login Plugin Request (ClientboundCustomQueryPacket)0x05Cookie Request (ClientboundCookieRequestPacket)
Serverbound
0x00Login Start (ServerboundLoginStartPacket)0x01Encryption Response (ServerboundKeyPacket)0x02Login Plugin Response (ServerboundCustomQueryAnswerPacket)0x03Login Acknowledged (ServerboundLoginAcknowledgedPacket)0x04Cookie Response (ServerboundCookieResponsePacket)
4. Configuration Stage
Clientbound
0x00Cookie Request (ClientboundCookieRequestPacket)0x01Custom Payload (ClientboundCustomPayloadPacket)0x02Disconnect (ClientboundDisconnectConfigurationPacket)0x03Finish Configuration (ClientboundFinishConfigurationPacket)0x04Keep Alive (ClientboundKeepAliveConfigurationPacket)0x05Ping (ClientboundPingConfigurationPacket)0x06Reset Chat (ClientboundResetChatPacket)0x07Registry Data (ClientboundRegistryDataPacket)0x08Remove Resource Pack (ClientboundRemoveResourcePackPacket)0x09Add Resource Pack (ClientboundAddResourcePackPacket)0x0AStore Cookie (ClientboundStoreCookiePacket)0x0BTransfer (ClientboundTransferPacket)0x0CUpdate Enabled Features (ClientboundUpdateEnabledFeaturesPacket)0x0DUpdate Tags (ClientboundUpdateTagsPacket)0x0ESelect Known Packs (ClientboundSelectKnownPacksPacket)0x0FCustom Report Details (ClientboundCustomReportDetailsPacket)0x10Server Links (ClientboundServerLinksPacket)0x11Clear Dialog (ClientboundClearDialogPacket)0x12Show Dialog (ClientboundConfigurationShowDialogPacket)0x13Code Of Conduct (ClientboundCodeOfConductPacket)
Serverbound
0x00Client Information (ServerboundCookieResponsePacket)0x01Cookie Response (ServerboundCookieResponsePacket)0x02Plugin Message (ServerboundCustomPayloadPacket)0x03Finish Configuration Acknowledged (ServerboundAckFinishConfigurationPacket)0x04Keep Alive Response (ServerboundKeepAliveConfigurationPacket)0x05Pong Response (ServerboundPongConfigurationPacket)0x07Select Known Packs (ServerboundSelectKnownPacksPacket)0x08Custom Click Action (ServerboundCustomClickActionPacket)0x09Accept Code Of Conduct (ServerboundAcceptCodeOfConductPacket)
5. Play Stage
Clientbound
0x00Delimiter (ClientboundDelimiterPacket)0x01Spawn Entity (ClientboundSpawnEntityPacket)0x02Entity Animation (ClientboundEntityAnimationPacket)0x03Award Statistics (ClientboundAwardStatisticsPacket)0x04Acknowledge Block Change (ClientboundAcknowledgeBlockChangePacket)0x05Block Destruction (ClientboundBlockDestructionPacket)0x06Block Entity Data (ClientboundBlockEntityDataPacket)0x07Block Event (ClientboundBlockEventPacket)0x08Block Update (ClientboundBlockUpdatePacket)0x09Boss Event (ClientboundBossEventPacket)0x0AChange Difficulty (ClientboundChangeDifficultyPacket)0x0BChunk Batch Finished (ClientboundChunkBatchFinishedPacket)0x0CChunk Batch Start (ClientboundChunkBatchStartPacket)0x0DChunks Biomes (ClientboundChunksBiomesPacket)0x0EClear Titles (ClientboundClearTitlesPacket)0x0FCommand Suggestions (ClientboundCommandSuggestionsPacket)0x10Commands (ClientboundCommandsPacket)0x11Container Close (ClientboundContainerClosePacket)0x12Container Set Content (ClientboundContainerSetContentPacket)0x13Container Set Data (ClientboundContainerSetDataPacket)0x14Container Set Slot (ClientboundContainerSetSlotPacket)0x15Cookie Request (ClientboundCookieRequestPacket)0x16Cooldown (ClientboundCooldownPacket)0x17Custom Chat Completions (ClientboundCustomChatCompletionsPacket)0x18Custom Payload (ClientboundCustomPayloadPacket)0x19Damage Event (ClientboundDamageEventPacket)0x1ADebug Block Value (ClientboundDebugBlockValuePacket)0x1BDebug Chunk Value (ClientboundDebugChunkValuePacket)0x1CDebug Entity Value (ClientboundDebugEntityValuePacket)0x1DDebug Event (ClientboundDebugEventPacket)0x1EDebug Sample (ClientboundDebugSamplePacket)0x1FDelete Chat (ClientboundDeleteChatPacket)0x20Disconnect (ClientboundDisconnectPlayPacket)0x21Disguised Chat Message (ClientboundDisguisedChatMessagePacket)0x22Entity Event (ClientboundEntityEventPacket)0x23Teleport Entity (ClientboundTeleportEntityPacket)0x24Explode (ClientboundExplodePacket)0x25Unload Chunk (ClientboundUnloadChunkPacket)0x26Game Event (ClientboundGameEventPacket)0x27Game Rule Values (ClientboundGameRuleValuesPacket)0x28Test Highlight Position (ClientboundTestHighlightPositionPacket)0x29Open Horse Screen (ClientboundOpenHorseScreenPacket)0x2AHurt Animation (ClientboundHurtAnimationPacket)0x2BInitialize World Border (ClientboundInitializeWorldBorderPacket)0x2CKeep Alive (ClientboundKeepAlivePlayPacket)0x2DLevel Chunk Update With Light (ClientboundLevelChunkUpdateWithLightPacket)0x2ELevel Event (ClientboundLevelEventPacket)0x2FParticle (ClientboundLevelParticlePacket)0x30Light Update (ClientboundLightUpdatePacket)0x31Login Play (ClientboundLoginPlayPacket)0x32Low Disk Space Warning (ClientboundLowDiskSpaceWarningPacket)0x33Map Item Data (ClientboundMapItemDataPacket)0x34Merchant Offers (ClientboundMerchantOffersPacket)0x35Update Entity Position (ClientboundUpdateEntityPositionPacket)0x36Update Entity Position and Rotation (ClientboundUpdateEntityPositionAndRotationPacket)0x37Move Minecart Along Track (ClientboundMoveMinecartAlongTrackPacket)0x38Update Entity Rotation (ClientboundUpdateEntityRotationPacket)0x39Move Vehicle (ClientboundMoveVehiclePacket)0x3AOpen Book (ClientboundOpenBookPacket)0x3BOpen Screen (ClientboundOpenScreenPacket)0x3COpen Sign Editor (ClientboundOpenSignEditorPacket)0x3DPing (ClientboundPingPacket)0x3EPong Response (ClientboundPongResponsePacket)0x3FPlace Ghost Recipe (ClientboundPlaceGhostRecipePacket)0x40Player Abilities (ClientboundPlayerAbilitiesPacket)0x41Player Chat Message (ClientboundPlayerChatMessagePacket)0x42Player End Combat (ClientboundPlayerEndCombatPacket)0x43Player Enter Combat (ClientboundPlayerEnterCombatPacket)0x44Player Combat Death (ClientboundPlayerCombatDeathPacket)0x45Player Info Remove (ClientboundPlayerInfoRemovePacket)0x46Player Info Update (ClientboundPlayerInfoUpdatePacket)0x47Player Look At (ClientboundPlayerLookAtPacket)0x48Synchronize Player Position (ClientboundSynchronizePlayerPositionPacket)0x49Player Rotation (ClientboundPlayerRotationPacket)0x4ARecipe Book Add (ClientboundRecipeBookAddPacket)0x4BRecipe Book Remove (ClientboundRecipeBookRemovePacket)0x4CRecipe Book Settings (ClientboundRecipeBookSettingsPacket)0x4DRemove Entities (ClientboundRemoveEntitiesPacket)0x4ERemove Entity Effect (ClientboundRemoveEntityEffectPacket)0x4FReset Score (ClientboundResetScorePacket)0x50Remove Resource Pack (ClientboundRemoveResourcePackPacket)0x51Add Resource Pack (ClientboundAddResourcePackPacket)0x52Respawn (ClientboundRespawnPacket)0x53Set Head Rotation (ClientboundSetHeadRotationPacket)0x54Update Section Block (ClientboundUpdateSectionBlockPacket)0x55Select Advancements Tab (ClientboundSelectAdvancementsTabPacket)0x56Server Data (ClientboundServerDataPacket)0x57Set Action Bar Text (ClientboundSetActionBarTextPacket)0x58Set Border Center (ClientboundSetBorderCenterPacket)0x59Set Border Leap Size (ClientboundSetBorderLeapSizePacket)0x5ASet Border Size (ClientboundSetBorderSizePacket)0x5BSet Border Warning Delay (ClientboundSetBorderWarningDelayPacket)0x5CSet Border Warning Distance (ClientboundSetBorderWarningDistancePacket)0x5DSet Camera (ClientboundSetCameraPacket)0x5ESet Center Chunk (ClientboundSetCenterChunkPacket)0x5FSet Render Distance (ClientboundSetRenderDistancePacket)0x60Set Cursor Item (ClientboundSetCursorItemPacket)0x61Set Default Spawn Position (ClientboundSetDefaultSpawnPositionPacket)0x62Set Display Objective (ClientboundSetDisplayObjectivePacket)0x63Set Entity Metadata (ClientboundSetEntityMetadataPacket)0x64Link Entities (ClientboundLinkEntitiesPacket)0x65Set Entity Velocity (ClientboundSetEntityVelocityPacket)0x66Set Equipment (ClientboundSetEquipmentPacket)0x67Set Experience (ClientboundSetExperiencePacket)0x68Set Health (ClientboundSetHealthPacket)0x69Set Carried Item (ClientboundSetCarriedItemPacket)0x6AUpdate Objective (ClientboundUpdateObjectivePacket)0x6BSet Passengers (ClientboundSetPassengersPacket)0x6CSet Player Inventory Slot (ClientboundSetPlayerInventorySlotPacket)0x6DSet Player Team (ClientboundSetPlayerTeamPacket)0x6EUpdate Score (ClientboundUpdateScorePacket)0x6FSet Simulation Distance (ClientboundSetSimulationDistancePacket)0x70Set Subtitle Text (ClientboundSetSubtitleTextPacket)0x71Set Time (ClientboundSetTimePacket)0x72Set Title Text (ClientboundSetTitleTextPacket)0x73Set Title Animation Times (ClientboundSetTitleAnimationTimesPacket)0x74Entity Sound Effect (ClientboundEntitySoundEffectPacket)0x75Sound Effect (ClientboundSoundEffectPacket)0x76Start Configuration (ClientboundStartConfigurationPacket)0x77Stop Sound (ClientboundStopSoundPacket)0x78Store Cookie (ClientboundStoreCookiePacket)0x79System Chat Message (ClientboundSystemChatMessagePacket)0x7ASet Tab List Header And Footer (ClientboundSetTabListHeaderAndFooterPacket)0x7BTag Query Response (ClientboundTagQueryResponsePacket)0x7CPickup Item (ClientboundPickupItemPacket)0x7DSynchronize Vehicle Position (ClientboundSynchronizeVehiclePositionPacket)0x7ETest Instance Block Status (ClientboundTestInstanceBlockStatusPacket)0x7FSet Ticking State (ClientboundSetTickingStatePacket)0x80Step Tick (ClientboundStepTickPacket)0x81Transfer (ClientboundTransferPacket)0x82Update Advancements (ClientboundUpdateAdvancementsPacket)0x83Update Attributes (ClientboundUpdateAttributesPacket)0x84Entity Effect (ClientboundEntityEffectPacket)0x85Update Recipes (ClientboundUpdateRecipesPacket)0x86Update Tags (ClientboundUpdateTagsPacket)0x87Projectile Power (ClientboundProjectilePowerPacket)0x88Custom Report Details (ClientboundCustomReportDetailsPacket)0x89Server Links (ClientboundServerLinksPacket)0x8AWaypoint (ClientboundWaypointPacket)0x8BClear Dialog (ClientboundClearDialogPacket)0x8CShow Dialog (ClientboundShowDialogPacket)
Serverbound
0x00Accept Teleportation (ServerboundAcceptTeleportationPacket)0x01Attack Action (ServerboundAttackActionPacket)0x02Query Block Entity Tag (ServerboundQueryBlockEntityTagPacket)0x03Bundle Item Selected (ServerboundBundleItemSelectedPacket)0x04Change Difficulty (ServerboundChangeDifficultyPacket)0x05Change Game Mode (ServerboundChangeGameModePacket)0x06Acknowledge Chat Message (ServerboundAcknowledgeChatMessagePacket)0x07Chat Command (ServerboundChatCommandPacket)0x08Signed Chat Command (ServerboundSignedChatCommandPacket)0x09Chat Message (ServerboundChatMessagePacket)0x0AUpdate Chat Session (ServerboundUpdateChatSessionPacket)0x0BChunk Batch Received (ServerboundChunkBatchReceivedPacket)0x0CClient Command (ServerboundClientCommandPacket)0x0DClient Tick End (ServerboundClientTickEndPacket)0x0EClient Information (ServerboundClientInformationPacket)0x0FCommand Suggestion Request (ServerboundCommandSuggestionRequestPacket)0x10Configuration Acknowledged (ServerboundConfigurationAcknowledgedPacket)0x11Container Click Button (ServerboundContainerClickButtonPacket)0x12Container Click (ServerboundContainerClickPacket)0x13Container Close (ServerboundContainerClosePacket)0x14Change Container Slot State (ServerboundChangeContainerSlotStatePacket)0x15Cookie Response (ServerboundCookieResponsePacket)0x16Custom Payload (ServerboundCustomPayloadPacket)0x17Debug Subscription Request (ServerboundDebugSubscriptionRequestPacket)0x18Edit Book (ServerboundEditBookPacket)0x19Query Entity Tag (ServerboundQueryEntityTagPacket)0x1AInteract (ServerboundInteractPacket)0x1BJigsaw Generate (ServerboundJigsawGeneratePacket)0x1CKeep Alive (ServerboundKeepAlivePlayPacket)0x1DLock Difficulty (ServerboundLockDifficultyPacket)0x1ESet Player Position (ServerboundSetPlayerPositionPacket)0x1FSet Player Position and Rotation (ServerboundSetPlayerPositionAndRotationPacket)0x20Set Player Rotation (ServerboundSetPlayerRotationPacket)0x21Set Player Movement Flag (ServerboundSetPlayerMovementFlagPacket)0x22Move Vehicle (ServerboundMoveVehiclePacket)0x23Paddle Boat (ServerboundPaddleBoatPacket)0x24Pick Item From Block (ServerboundPickItemFromBlockPacket)0x25Pick Item From Entity (ServerboundPickItemFromEntityPacket)0x26Ping Request (ServerboundPingRequestPacket)0x27Place Recipe (ServerboundPlaceRecipePacket)0x28Player Abilities (ServerboundPlayerAbilitiesPacket)0x29Player Action (ServerboundPlayerActionPacket)0x2APlayer Command (ServerboundPlayerCommandPacket)0x2BPlayer Input (ServerboundPlayerInputPacket)0x2CPlayer Loaded (ServerboundPlayerLoadedPacket)0x2DPong (ServerboundPongPlayPacket)0x2ERecipe Book Change Settings (ServerboundRecipeBookChangeSettingsPacket)0x2FRecipe Book Seen Recipe (ServerboundRecipeBookSeenRecipePacket)0x30Rename Item (ServerboundRenameItemPacket)0x31Resource Pack Response (ServerboundResourcePackResponsePacket)0x32Seen Advancements (ServerboundSeenAdvancementsPacket)0x33Select Trade (ServerboundSelectTradePacket)0x34Set Beacon (ServerboundSetBeaconPacket)0x35Set Carried Item (ServerboundSetCarriedItemPacket)0x36Set Command Block (ServerboundSetCommandBlockPacket)0x37Set Command Minecart (ServerboundSetCommandMinecartPacket)0x38Set Creative Mode Slot (ServerboundSetCreativeModeSlotPacket)0x39Set Game Rule (ServerboundSetGameRulePacket)0x3ASet Jigsaw Block (ServerboundSetJigsawBlockPacket)0x3BSet Structure Block (ServerboundSetStructureBlockPacket)0x3CSet Test Block (ServerboundSetTestBlockPacket)0x3DSign Update (ServerboundSignUpdatePacket)0x3ESpectator Action (ServerboundSpectatorActionPacket)0x3FSwing (ServerboundSwingPacket)0x40Teleport To Entity (ServerboundTeleportToEntityPacket)0x41Test Instance Block Action (ServerboundTestInstanceBlockActionPacket)0x42Use Item On (ServerboundUseItemOnPacket)0x43Use Item (ServerboundUseItemPacket)0x44Custom Click Action (ServerboundCustomClickActionPacket)
Open Source
Licensed under Apache-2.0
Description
Lightweight Minecraft client-side protocol library for Kotlin Multiplatform and JVM
Readme
Apache-2.0
1.8 MiB
1 Watchers
0 Forks
Languages
Kotlin
99.9%