Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Support Linear Region Format #202

Open
TheShyDolphin opened this issue Nov 23, 2023 · 1 comment
Open

[Feature] Support Linear Region Format #202

TheShyDolphin opened this issue Nov 23, 2023 · 1 comment

Comments

@TheShyDolphin
Copy link

The combination of Regionerator and Linear format will save a lot more disk space.
https://github.com/xymb-endcrystalme/LinearRegionFileFormatTools

@Jikoo
Copy link
Owner

Jikoo commented Nov 23, 2023

Doesn't look like there's a spec written up for it, which means that I am unlikely to put the work into reverse engineering and adopting it.

If anyone does feel like taking a crack at it, on the Regionerator end it's mostly just a case of modifying the WorldManager to conditionally return a different world implementation:

private @NotNull WorldInfo getWorldImpl(@NotNull World world) {
return new AnvilWorld(plugin, world);
}

That world implementation would likely return regions that only are capable of "rewriting" entire regions by deleting them if all chunks are eligible. I suppose with a more thorough understanding of the spec one could write a region implementation that can actually delete chunks, but based on my limited understanding that would require a full rewrite of the entire file every single time, which is a huge performance hit for Regionerator.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants