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 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 to let me know! |
# MC-249136 Fix



This mod implements a minimal hacky fix for 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.