# Third-party code ## MapSyncer for Xaero's World Map Everything under `src/main/java/com/mapsyncer/` and the two renderer adapters `src/main/java/lv/janhouse/mapsyncer/render/BlockPropertyResolver.java` and `PlaceholderBlockGetter.java` are taken from MapSyncer for Xaero's World Map https://github.com/RuoChennn/MapSyncer-for-XaeroWorldmap commit 116986ac17d9c18706bbbd9df7851bd365bb67f1 (2026-09-02, v1.0.4 beta) Copyright (c) RuoChennn and contributors Licensed under the GNU General Public License v3.0 That project is the reference implementation of the wire protocol this plugin speaks and of the Xaero region-file writer. This plugin as a whole is therefore also distributed under the GPL-3.0 (see `LICENSE`). Local modifications to the vendored code, kept deliberately small so upstream diffs stay readable: - `mca/ChunkMask.java` — new: lets a conversion skip chunks nobody has discovered (they become "no data" tiles instead of terrain). - `mca/convert/io/McaRegionLoader.java`, `mca/convert/RegionConversionPipeline.java` — overloads taking a `ChunkMask`. - `mca/McaReader.java` — imports the plain `net.jpountz` LZ4 package that the Paper server already ships (upstream relocates its own copy). - `mca/ChunkDataParser.java` — heightmap bit width uses vanilla's `ceillog2(height + 1)` (upstream under-counts by one for 256-high dimensions); accepted chunk statuses include `initialize_light`. - `XaeroWriter.java` — moved from `com.mapsyncer.server` to `com.mapsyncer`. - `render/BlockPropertyResolver.java`, `render/PlaceholderBlockGetter.java` — package moved; the cache-size constant is inlined. Everything else in `lv.janhouse.mapsyncer` is original to this repository. ## lz4-java LZ4-compressed region files are read through the `net.jpountz.lz4` classes the Paper server bundles (`at.yawk.lz4:lz4-java`, Apache License 2.0). Nothing of it is redistributed in this jar.