From 663c2f59911c8c4201d9608bf57025fc654bd999 Mon Sep 17 00:00:00 2001 From: Quinn Date: Tue, 8 Apr 2025 11:36:23 +0200 Subject: [PATCH] write the README.md to contain more information --- docs/README.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/docs/README.md b/docs/README.md index e69de29..fa432d5 100644 --- a/docs/README.md +++ b/docs/README.md @@ -0,0 +1,21 @@ +# mca selector lite +A from-scratch rewrite of [mcaselector](https://github.com/Querz/mcaselector) in C and Rust. + +[![licence](https://img.shields.io/github/license/thepigeongenerator/mcaselector-lite.svg)](https://github.com/thepigeongenerator/mcaselector-lite/blob/master/LICENSE) +[![latest release](https://img.shields.io/github/release/thepigeongenerator/mcaselector-lite.svg)](https://github.com/thepigeongenerator/mcaselector-lite/releases/) +[![issues](https://img.shields.io/github/issues/thepigeongenerator/mcaselector-lite.svg)](https://github.com/thepigeongenerator/mcaselector-lite/issues/) + +[![validate](https://github.com/thepigeongenerator/mcaselector-lite/actions/workflows/validate.yaml/badge.svg)](https://github.com/thepigeongenerator/mcaselector-lite/actions/workflows/validate.yaml) + + +## what does it do +MCA selector lite is a tool used to edit [region files](https://minecraft.wiki/w/Region_file_format) of your [Minecraft java](https://minecraft.wiki/w/Java_Edition) 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](https://dynmap.wiki.gg/wiki/Home) 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 and Rust, 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. +Rust is used for the front-end due to it's more verbose and memory safe nature, making the visual portion of the application easier to write. +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.