Synchronised Blockstates

Synchronised Blockstates

Mod

A mod to synchronise the list of blockstates from server to client to prevent mismatches

Client

132 downloads
2 followers
Follow Save
Filter versions...
Filter channels...

The 1.21.1 version's source code & project setup was a total mess, so I did an entire rewrite for 1.20.1 - this time doing it right.

Improvements:

  • Massively reduced the encoded size of blockstates:
    • Approximately an 8x reduction in size over the original 1.3.0 release for just vanilla states
    • Approximately a 37x reduction over 1.3.0 in certain large modpacks (hard to test due to 1.20.1/1.21.1)
  • Massively improved parsing and remapping times
    • Measured 70x improvement over 1.3.0 on even very lightly modded modpacks
  • Now properly handles:
    • Properties that only exist on the client
    • Properties that only exist on the server
    • Property values that only exist on the client
    • Property values that only exist on the server

I wrote version 2.0.0 in a way that should be easy to port to 1.21.1 again, and I already have ideas for further improvements and optimizations for a hypothetical 2.1.0 release.

Additionally, there are plans for a Forge/NeoForge release sometime in future if I ever get the time.

Changes (1.3.0 -> 1.4.0-b1):

  • Massively reduced packet and file size by well ordering states
  • Optimized encoding for chunked packets (approx 15x faster on large modpacks)
    • Unchunked packets are still a W.I.P. and will be part of the 1.4.0 release

Project members

JoshieGemFinder

Member

Details

Licensed GPL-2.0-or-later
Published 4 months ago
Updated a month ago