Skip to content
 
 

Repository files navigation

SpigotEasyPlaceProtocol

An implementation of the Carpet Accurate Block Placement Protocol for Spigot/Paper-based servers. Adds support for FlexibleBlockPlacement from Tweakeroo and easyPlace from Litematica. Never place pistons, observers, or stairs wrong again!

Uses ProtocolLib and is compatible with Paper (and Spigot) 1.20 and newer. A single jar works across every supported version — the plugin contains no NMS/version-specific code: block placement is handled through the Bukkit API, block-placement packets are read via ProtocolLib, and the carpet:hello handshake is carried over Bukkit Plugin Messaging.

Compatibility notes (verified against Litematica 1.20.1 → 26.2 and fabric-carpet sources):

  • The easyPlace protocol V2 encoding is identical across all these versions, so placement decoding needs no per-version handling.
  • Litematica detects a "carpet server" purely by seeing any packet on the carpet:hello channel (it never reads the payload), so easyPlaceProtocolVersion "Auto" resolves to Version 2 automatically; setting it to "Version 2" manually works too.
  • On 1.20.2+ the plugin sends the handshake in carpet's NBT format (the wire format changed in fabric-carpet 1.20.2). Players who have the Carpet mod installed client-side are handled correctly — the old varint-format handshake would disconnect them.

How to install

First of all make sure to install ProtocolLib: https://www.spigotmc.org/resources/protocollib.1997/
Then just download the plugin and drop it in your "plugins" folder, no configuration needed. https://github.com/shou692199/SpigotEasyPlaceProtocol/releases

For Litematica: Make sure easyPlaceProtocolVersion is set to "Version 2", then build with easyPlace like normal.
For Tweakeroo: Make sure carpetAccuratePlacementProtocol is set to "true", you can then enable and use Flexible Block Placement.

About

An implementation of the Carpet Accurate Block Placement Protocol for Spigot/Paper-based servers.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages