MC-249136 Fix
A hacky fix for server lag spikes when generating shipwreck buried treasure map / explorer map loot.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
MC-249136 Fix
|
## **NOTICE** [MC-249136 appears to have been fixed](https://bugs.mojang.com/browse/MC-249136) in newer versions of Minecraft! As such, I've decided not to update this mod for 1.20.5-onwards. If you still encounter problems with treasure maps in 1.20.5+, please [create an issue](https://gitlab.com/horrific-tweaks/MC-249136/-/issues/new) to let me know! |
# MC-249136 Fix
[](https://modrinth.com/mod/fabric-api)
[](https://gitlab.com/horrific-tweaks/MC-249136)
[](https://modrinth.com/mod/mc-249136-fix)
This mod implements a minimal hacky fix for [MC-249136](https://bugs.mojang.com/browse/MC-249136), a significant server lag spike that occurs when locating buried treasure structures for shipwreck loot.
To avoid this lag spike, structure location is moved into a separate thread that does not block the server tick loop. This does nothing to improve the structure location performance, but it does at least prevent it from significantly impeding gameplay.

## Configuration
The map "loading" images can be customized by placing `128x128` PNG files in `/config/mc249136/map_loading.png` and `/config/mc249136/map_not_found.png`.
For performance reasons, these images will draw all pixels as black unless they are fully transparent (i.e. `rgba(0,0,0,0)`). Minecraft's map color palette is difficult and expensive to calculate - so this mod literally just does an `if (rgb != 0)` to draw the image.
Known issues:
- This mod does not handle state persistence, and only updates loaded maps once they are inside a player's inventory.
This means that it is possible to prevent a treasure map from loading by breaking the chest, leaving it in item entity
form, and then restarting the server.