Quinn 2cfae0fce4 rework error.h, to decrease impact on binary size.
We were statically creating a new string per log message, so re-using
the same message would cause duplicate byte sizes.
Now, all prefixes / suffixes are only defined once, the file name is
defined once per file, the line number should be defined once per unique
line.
This just saves some memory in the final binary, allowing things to be
optimised a little better.
2025-09-10 11:37:20 +02:00
2025-08-13 16:01:51 +02:00
2025-08-18 13:47:54 +02:00
2025-06-02 12:41:00 +02:00

Caution

this application is under active development and it is not recommended to use yet.

mca selector lite

A from-scratch rewrite of mcaselector in C.

licence issues

what does it do

MCA selector lite is a tool used to edit region files of your Minecraft java worlds. This is useful for reducing world size, general world management, perhaps copying chunks from one world to another or various other administrative tasks. Although not the intended main use case, it is also possible to use this tool to view the world map. Though, it is recommended to use something like dynmap instead (if applicable).

why does this project exist?

MCA selector is a tool written in Java. Where it depends upon JRE21 and JavaFX. Where the application is primarily developed for Windows users, where other platforms get a .jar file, which can at times be clunky to work with. The goal of this project is to create a version of the original MCA selector, but written in C, leveraging the improved performance due to native execution and more low-level control. I have picked C as the language for the core portions of the application, where I prefer fine-grained control with little abstractions. This version is not intended to serve to entirely replace MCA selector, just to offer an alternative. Both tools will have their strengths and weaknesses.

planned features

  • (very basic) world map viewing (Y level + surface)
  • filtering chunks based on time spent in them
  • chunk-level removal of data.
  • CLI-only version
  • (idea) change chunk compression
  • (idea) view chunk metadata
  • (idea) change chunk sNBT (this'll be tricky to add) note that entries marked with (idea) aren't guaranteed to be implemented. Due to their viability and usefulness is still to be measured.
Description
A fork of the original MCASelector, written by Querz. Rewritten for better optimisation and better multi-platform support, utilising GLFW and C.
Readme MIT 1.3 MiB
Languages
C 97.7%
Makefile 1.3%
GLSL 1%