
Fabric Packet Logger
Deep packet logging mod for Minecraft Fabric - captures all network traffic with full NBT/Component data
Screenshots




About this Mod
Fabric Package Logger
A deep packet logging mod for Minecraft Fabric that captures all network traffic (S2C and C2S) with full NBT/Component data.
Use Cases
- Mod Development: Debug network communication between client and server
- Container Inspection: View exact contents of inventories with full NBT/Component data and copying them
- Reverse Engineering: Analyze server-side mechanics and packet structures
- Anti-Cheat Analysis: Understand what data the server sends and receives
- Learning: Understand how Minecraft's network protocol works
Usage
Keybind
Press F6 to open the config screen.
Packet Selection
Use the dual-list selector to choose which packets to log:
- S2C (Server β Client): Incoming packets like inventory updates, entity spawns, etc.
- C2S (Client β Server): Outgoing packets like clicks, movements, etc.
Log Modes
- Chat: Display packets in the game chat (truncated for readability)
- File: Save packets to log files with full data
Log Files
Logs are saved to:
MINECRAFT_FOLDER/packet-logger/packets_2026-01-04_15-30-45_servername.log
A new log file is created when:
- Joining a world/server
- Re-enabling logging after it was disabled
Example Output
[12:34:56.789] [S2C] InventoryS2CPacket {syncId:2,revision:1,id:"minecraft:generic_9x3",components:{"minecraft:container":[{item:{id:"minecraft:diamond_sword",count:1,components:{"minecraft:enchantments":{levels:{"minecraft:sharpness":5}}}},slot:0}]}}

Available Packets
All packets are loaded dynamically from the game's PacketType registries and are selectable in the config screen's dual-list selector. Both S2C (Server β Client) and C2S (Client β Server) packets are covered across all protocol phases.
See for an example listing of all packets for Minecraft 1.21.4.
Click to expand (573 packets)
S2C (Server β Client)
Common
CommonPingS2CPacketCookieRequestS2CPacketCustomPayloadS2CPacketCustomReportDetailsS2CPacketDisconnectS2CPacketKeepAliveS2CPacketResourcePackRemoveS2CPacketResourcePackSendS2CPacketServerLinksS2CPacketServerTransferS2CPacketStoreCookieS2CPacketSynchronizeTagsS2CPacket
Config
DynamicRegistriesS2CPacketFeaturesS2CPacketReadyS2CPacketResetChatS2CPacketSelectKnownPacksS2CPacket
Custom
DebugBeeCustomPayloadBee
DebugBrainCustomPayloadBrain
DebugBreezeCustomPayloadBreezeInfo
DebugGameEventCustomPayloadDebugGameEventListenersCustomPayloadDebugGameTestAddMarkerCustomPayloadDebugGameTestClearCustomPayloadDebugGoalSelectorCustomPayloadGoal
DebugHiveCustomPayloadHiveInfo
DebugNeighborsUpdateCustomPayloadDebugPathCustomPayloadDebugPoiAddedCustomPayloadDebugPoiRemovedCustomPayloadDebugPoiTicketCountCustomPayloadDebugRaidsCustomPayloadDebugRedstoneUpdateOrderCustomPayloadWire
DebugStructuresCustomPayloadPiece
DebugVillageSectionsCustomPayloadDebugWorldgenAttemptCustomPayload
Login
LoginCompressionS2CPacketLoginDisconnectS2CPacketLoginHelloS2CPacketLoginQueryRequestS2CPacketLoginQueryRequestPayloadLoginSuccessS2CPacketUnknownLoginQueryRequestPayload
Play
AdvancementUpdateS2CPacketBlockBreakingProgressS2CPacketBlockEntityUpdateS2CPacketBlockEventS2CPacketBlockUpdateS2CPacketBossBarS2CPacketActionAddActionConsumerTypeUpdateNameActionUpdateProgressActionUpdatePropertiesActionUpdateStyleAction
BundleDelimiterS2CPacketBundleS2CPacketChatMessageS2CPacketChatSuggestionsS2CPacketAction
ChunkBiomeDataS2CPacketSerialized
ChunkDataS2CPacketBlockEntityDataBlockEntityVisitor
ChunkDeltaUpdateS2CPacketChunkLoadDistanceS2CPacketChunkRenderDistanceCenterS2CPacketChunkSentS2CPacketClearTitleS2CPacketCloseScreenS2CPacketCommandSuggestionsS2CPacketSuggestion
CommandTreeS2CPacketArgumentNodeCommandNodeDataCommandTreeLiteralNodeSuggestableNode
CommonPlayerSpawnInfoCooldownUpdateS2CPacketCraftFailedResponseS2CPacketDamageTiltS2CPacketDeathMessageS2CPacketDebugSampleS2CPacketDifficultyS2CPacketEndCombatS2CPacketEnterCombatS2CPacketEnterReconfigurationS2CPacketEntitiesDestroyS2CPacketEntityAnimationS2CPacketEntityAttachS2CPacketEntityAttributesS2CPacketEntry
EntityDamageS2CPacketEntityEquipmentUpdateS2CPacketEntityPassengersSetS2CPacketEntityPositionS2CPacketEntityPositionSyncS2CPacketEntityS2CPacketMoveRelativeRotateRotateAndMoveRelative
EntitySetHeadYawS2CPacketEntitySpawnS2CPacketEntityStatusEffectS2CPacketEntityStatusS2CPacketEntityTrackerUpdateS2CPacketEntityVelocityUpdateS2CPacketExperienceBarUpdateS2CPacketExperienceOrbSpawnS2CPacketExplosionS2CPacketGameJoinS2CPacketGameMessageS2CPacketGameStateChangeS2CPacketReason
HealthUpdateS2CPacketInventoryS2CPacketItemPickupAnimationS2CPacketLightUpdateS2CPacketLookAtS2CPacketMapUpdateS2CPacketMoveMinecartAlongTrackS2CPacketNbtQueryResponseS2CPacketOpenHorseScreenS2CPacketOpenScreenS2CPacketOpenWrittenBookS2CPacketOverlayMessageS2CPacketParticleS2CPacketPlayerAbilitiesS2CPacketPlayerActionResponseS2CPacketPlayerListHeaderS2CPacketPlayerListS2CPacketActionEntrySerialized
PlayerPositionLookS2CPacketPlayerRemoveS2CPacketPlayerRespawnS2CPacketPlayerRotationS2CPacketPlayerSpawnPositionS2CPacketPlaySoundFromEntityS2CPacketPlaySoundS2CPacketProfilelessChatMessageS2CPacketProjectilePowerS2CPacketRecipeBookAddS2CPacketEntry
RecipeBookRemoveS2CPacketRecipeBookSettingsS2CPacketRemoveEntityStatusEffectS2CPacketRemoveMessageS2CPacketScoreboardDisplayS2CPacketScoreboardObjectiveUpdateS2CPacketScoreboardScoreResetS2CPacketScoreboardScoreUpdateS2CPacketScreenHandlerPropertyUpdateS2CPacketScreenHandlerSlotUpdateS2CPacketSelectAdvancementTabS2CPacketServerMetadataS2CPacketSetCameraEntityS2CPacketSetCursorItemS2CPacketSetPlayerInventoryS2CPacketSetTradeOffersS2CPacketSignEditorOpenS2CPacketSimulationDistanceS2CPacketStartChunkSendS2CPacketStatisticsS2CPacketStopSoundS2CPacketSubtitleS2CPacketSynchronizeRecipesS2CPacketTeamS2CPacketOperationSerializableTeam
TickStepS2CPacketTitleFadeS2CPacketTitleS2CPacketUnloadChunkS2CPacketUpdateSelectedSlotS2CPacketUpdateTickRateS2CPacketVehicleMoveS2CPacketWorldBorderCenterChangedS2CPacketWorldBorderInitializeS2CPacketWorldBorderInterpolateSizeS2CPacketWorldBorderSizeChangedS2CPacketWorldBorderWarningBlocksChangedS2CPacketWorldBorderWarningTimeChangedS2CPacketWorldEventS2CPacketWorldTimeUpdateS2CPacket
Query
PingResultS2CPacketQueryResponseS2CPacket
C2S (Client β Server)
Common
ClientOptionsC2SPacketCommonPongC2SPacketCookieResponseC2SPacketCustomPayloadC2SPacketKeepAliveC2SPacketResourcePackStatusC2SPacketStatus
SyncedClientOptions
Config
ReadyC2SPacketSelectKnownPacksC2SPacket
Handshake
HandshakeC2SPacketConnectionIntent
Login
EnterConfigurationC2SPacketLoginHelloC2SPacketLoginKeyC2SPacketLoginQueryResponseC2SPacketLoginQueryResponsePayloadUnknownLoginQueryResponsePayload
Play
AcknowledgeChunksC2SPacketAcknowledgeReconfigurationC2SPacketAdvancementTabC2SPacketAction
BoatPaddleStateC2SPacketBookUpdateC2SPacketBundleItemSelectedC2SPacketButtonClickC2SPacketChatCommandSignedC2SPacketChatMessageC2SPacketClickSlotC2SPacketClientCommandC2SPacketMode
ClientStatusC2SPacketMode
ClientTickEndC2SPacketCloseHandledScreenC2SPacketCommandExecutionC2SPacketCraftRequestC2SPacketCreativeInventoryActionC2SPacketDebugSampleSubscriptionC2SPacketHandSwingC2SPacketJigsawGeneratingC2SPacketMessageAcknowledgmentC2SPacketPickItemFromBlockC2SPacketPickItemFromEntityC2SPacketPlayerActionC2SPacketAction
PlayerInputC2SPacketPlayerInteractBlockC2SPacketPlayerInteractEntityC2SPacketHandlerInteractAtHandlerInteractHandlerInteractTypeInteractTypeHandler
PlayerInteractItemC2SPacketPlayerLoadedC2SPacketPlayerMoveC2SPacketFullLookAndOnGroundOnGroundOnlyPositionAndOnGround
PlayerSessionC2SPacketQueryBlockNbtC2SPacketQueryEntityNbtC2SPacketRecipeBookDataC2SPacketRecipeCategoryOptionsC2SPacketRenameItemC2SPacketRequestCommandCompletionsC2SPacketSelectMerchantTradeC2SPacketSlotChangedStateC2SPacketSpectatorTeleportC2SPacketTeleportConfirmC2SPacketUpdateBeaconC2SPacketUpdateCommandBlockC2SPacketUpdateCommandBlockMinecartC2SPacketUpdateDifficultyC2SPacketUpdateDifficultyLockC2SPacketUpdateJigsawC2SPacketUpdatePlayerAbilitiesC2SPacketUpdateSelectedSlotC2SPacketUpdateSignC2SPacketUpdateStructureBlockC2SPacketVehicleMoveC2SPacket
Query
QueryPingC2SPacketQueryRequestC2SPacket
License
This project is licensed under the GNU General Public License v3.0.
Credits
- Fabric API Team
- Minecraft Modding Community
Available Versions
How to Install Fabric Packet Logger on Your Client
Install the Mod Loader Locally
Install fabric for your local Minecraft version.
Download the Matching File
Choose the Fabric Packet Logger file for fabric and Minecraft 26.2.
Install Mod
Place the .jar file in your local .minecraft/mods folder and restart Minecraft. No server-side installation is required.
Compatibility
Mod Loaders
Minecraft Versions
26.2, 26.1.2, 26.1.1 (+13 more)
Server-side
β UnsupportedRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Does Fabric Packet Logger need to be installed on the Minecraft server?
No. Modrinth marks Fabric Packet Logger as unsupported on the server side. Install it only in your local Minecraft mods folder. Your server can remain unchanged unless the mod page lists an additional dependency.
Which version and loader does Fabric Packet Logger require?
Use a file for fabric and your exact Minecraft version. Supported versions include 26.2, 26.1.2, 26.1.1. Files for different loaders are not interchangeable.
Fabric Packet Logger is not working β what should I check?
First check the Minecraft version, loader version and required dependencies. Put the .jar file in your local .minecraft/mods folder and remove older duplicates. Because this mod is client-side, adding server RAM will not fix it.
Similar Mods
Minecraft Server for Your Group
Fabric Packet Logger stays on your client. Host a compatible world for your group.