Skip to content

Releases: MineLittlePony/Fabwork

Fabwork 1.4.0 for Minecraft 26.1.X

09 Apr 16:07
143c915

Choose a tag to compare

Changelog

  • Updated to 26.1
  • Removed deprecations

Migration

The old "Packet" model that was deprecated in previous releases has now been removed along with any methods that relied on them.

There are no longer any restriction on the data types you can register. Developers are encouraged to move to the new methods. Handlers can be registered by going through the packet type you get back from the register methods, or by implementing the optional Handled interface on your data type.

Examples:

Old

// ModInitializer
static S2CPacket<MyClientPacket> TYPE = SimpleNetworking.serverToClient(new Identifier("mymod", "mypacket"), MyClientPacket::new);

// MyClientPacket
class MyClientPacket implements Packet<Player> {
   public MyClientPacket(RegistryFriendlyByteBuf buffer) {
   }

   @Override
   public void handle(Player player) {
   
   }
   
   @Override
   public void toBuffer(RegistryFriendlyByteBuf buffer) {
     ...
   }
}

New

// ModInitializer
static S2CPacket<MyClientPacket> TYPE = SimpleNetworking.serverToClient(new Identifier("mymod", "mypacket"), MyClientPacket.STREAM_CODEC);

// MyClientPacket
record MyClientPacket(...) {
      public static final StreamCodec<MyClientPacket> STREAM_CODEC = ...;
}

// ClientModInitializer
TYPE.receiver().addPersistentListener(myPacket -> {
    ...
});

Fabwork 1.3.3 for Minecraft 1.21.10

10 Oct 17:53
d5b018f

Choose a tag to compare

Changelog

  • Updated to 1.21.10
  • Deprecated methods are now marked for removal in Minecraft 1.22. Set your clocks, everyone!

Fabwork 1.3.2 for Minecraft 1.21.6 - 1.21.8

18 Jul 12:53
fad02d4

Choose a tag to compare

Changelog

  • Updated to 1.21.7
  • That's all, folk!

Fabwork 1.3.2 for Minecraft 1.21.X

14 Oct 19:11
5eb0ccb

Choose a tag to compare

Changelog

  • Updated apis to make more effective use of PacketCodecs. You can now only need a packet codec to register a packet type
  • Packets don't necessarily have to implement the Packet interface and Packet has been depreicated
  • HandledPacket has been depricated and replaced with Handled

Fabwork 1.3.1 for Minecraft 1.20.5/6

04 Sep 11:04
a0984cf

Choose a tag to compare

Changelog

  • Fixed server disconnects due to packets failing to serialize #3

Fabwork 1.3.1 for Minecraft 1.21, 1.21.1

04 Sep 11:04
613e445

Choose a tag to compare

Changelog

  • Fixed server disconnects due to packets failing to serialize #3

Fabwork 1.3.1 for Minecraft 1.21

03 Sep 23:30
613e445

Choose a tag to compare

Pre-release

Changelog

  • Fixed error serializing sync packets when connecting to a dedicated server
  • Fixed codecs for client-bound packets not registered on dedicated servers

Fabwork 1.3.0 for Minecraft 1.20.5 - 1.21

08 Jun 15:29
3a90f96

Choose a tag to compare

Changelog

  • Updated to 1.20.5, 1.20.6, and 1.21
  • Removed deprecated API (ServerConnectionEvents and ClientConnectionEvents)

Breaking Changes

  • PacketType#id has been changed to a CustomPayload.Id<Payload<T>> field rather than an Identifier
  • PacketType#constructor has been replaced with a PacketCodec<PacketByteBuf, Payload<T>>
  • Creating and registering packets are unchanged. The new version can be used as a drop-in replacement for the old.

Fabwork 1.2.0 for Minecraft 1.20.2 - 1.20.4

27 Sep 18:27
19234eb

Choose a tag to compare

Changelog

  • Updated to 1.20.2
  • Fabwork will now do its verification in the configuration stage before a player enters the world
  • The sender generic type for HandledPacket no longer has to extend PlayerEntity
  • Removed the unneccessary generic type from Packet
  • Deprecated ServerConnectionEvents (use Fabric API's own ServerConfigurationEvents instead)

Fabwork 1.2.0 for Minecraft 1.20.X

27 May 18:47

Choose a tag to compare

Changelog

  • Updated to 1.20-pre6