A rust library to generate, load, manipulate and save minecraft schematic files.
| Format | Extension | Load | Save |
|---|---|---|---|
| Litematica | .litematica |
√ | √ |
| Vanilla structure | .nbt |
√ | √ |
| WorldEdit schem (1.13+) | .schem |
√ | √ |
| WorldEdit schem (1.12-) | .schematic |
√ |
-
mc_schem(rlib)The main rust lib
-
mc_schem(cdylib)C ffi for mc_schem
-
mc_schemC++ wrapperA header-only c++ wrapper based on C ffi of mc_schem
-
schemtool(executable)An executable to do various manipulations on schematics
-
Build with cargo directly (no c/c++ files)
cargo build # debug cargo build --release #release
-
Build with cmake (with c/c++ files)
mkdir build cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=install cmake --build build --parallel cmake --install build -
Use with cmake
find_package(mc_schem 1.3.2 CONFIG REQUIRED) target_link_libraries(<your target> PRIVATE mc_schem::mc_schem)
FetchContent is also supported:
include(FetchContent) FetchContent_Declare(mc_schem GIT_REPOSITORY https://github.com/SlopeCraft/mc_schem GIT_TAG v1.3.2 OVERRIDE_FIND_PACKAGE ) FetchContent_MakeAvailable(mc_schem)