Releases: pmmp/ext-chunkutils2
Releases · pmmp/ext-chunkutils2
0.3.5
0.3.4
0.3.3
Changes since 0.3.2
- Fixed bogus corruption errors due to non-zero bits in 3, 5 and 6 bits-per-block
PalettedBlockArray
s. - Fixed memory corruption and assert failures in the following methods (now ignoring all but the final 4 bits in the coordinates given):
PalettedBlockArray::get()
PalettedBlockArray::set()
LightArray::get()
LightArray::set()
0.3.2
Changes since 0.3.1
- Now PHP 8.1 ready.
PalettedBlockArray::fromData()
now performs validation of the provided offset table (words) to ensure that no offset value points to an uninitialized or invalid palette offset. This was mainly a problem with corrupted data loaded from disk, where the palette for a block array was truncated for some reason.- Fixes various uninitialized values being returned in cases where offsets pointed outside of the palette.
- Fixes a bug in 16 bpb that caused memory corruption outside the bounds of the palette when writing a block while the palette was already full. This happened because 16 bits can represent up to 65536 offsets, but the palette size is hard-capped at 4096. When 16 bpb has used all 4096 palette entries, the one used for the replaced block is directly overwritten without validating the offset.
0.3.1
0.3.0
Changes since 0.2.0
- PHP 8.0 is now required as a minimum.
- Added support for 0-bits-per-block palettes (readiness for Minecraft Bedrock 1.18).
- Added
LightArray->isUniform()
, which tells if the light array only contains the given unique value. - Fixed
SubChunkConverter::convertFromLegacyColumn()
not checking bounds of theyOffset
parameter.