Speeds up the resource pack organizer screen
Go to file
Johannes Frohnmeyer 9ae05db5c5
ci/woodpecker/push/jfmod Pipeline was successful Details
ci/woodpecker/tag/jfmod Pipeline was successful Details
chore: update to 1.20.5
2024-04-25 12:39:02 +02:00
src chore: update to 1.20.5 2024-04-25 12:39:02 +02:00
.gitignore Initial commit 2023-06-27 23:31:57 +02:00
.woodpecker.yml Initial commit 2023-06-27 23:31:57 +02:00
LICENSE Initial commit 2023-06-27 23:31:57 +02:00
README.md chore: update to 1.20.5 2024-04-25 12:39:02 +02:00
build.gradle.kts chore: update to 1.20.5 2024-04-25 12:39:02 +02:00
settings.gradle.kts Initial commit 2023-06-27 23:31:57 +02:00

README.md

Note

This mod no longer seems to be required as of MC 1.20.5. Nonetheless, interactions between mods might still cause an issue, so I will keep updating it for the time being. If you experience no lag spikes, you can safely remove this mod.

Original Description

In vanilla minecraft, the list of resource packs is refreshed by scanning all possible sources synchronously.

Generally, this is not a problem, but in the resource pack organizer screen, this scan is performed whenever it is resized and every twenty ticks.

If another mod (such as respackopts) hooks into the pack scan and increases its duration even slightly, this leads to major lag spikes and makes the screen near-unusable when using more than a few packs.

This mod fixes that issue by moving this computation to another thread and scheduling a scan task on those events instead, drastically improving perceived performance.

Since the vanilla code is designed for synchronous execution, this can cause issues like crashes in edge cases, but worked well enough in my testing.