blob: 9b32cb97848a00aead74d78d9247c8c1c5646ced [file] [log] [blame] [raw]
This source tree contains utilities for maintaining NBT files and Minecraft
Region files. The primary part is a FUSE-based file system implementation
which allowing NBT file or Minecraft Region file be mounted as a file system,
and then modified using normal file operations.
NBT parser and writer are originally written by Lukas Niederbremer as cNBT
project which this project is based on.
INSTALL
=======
To build it from source, make sure you have GCC or a compatible C compiler,
GNU Make or BSD make, FUSE development library, as well as zlib development
library installed, then type 'make'; some environment variables are useful to
configure the build:
CC C compiler
AR archive tool for creating static library
CFLAGS prepend flags to C compiler
LDFLAGS prepend flags to linker (e.g. -L <path>)
Example:
$ CC=gcc CFLAGS=-Os make
MONUT THE FILE SYSTEM
=====================
Use program mount.nbt(8) to mount the file system from a NBT file or a Region
file. The synopsis of the command line is:
mount.nbt [-o <fs-options>] [<other-options>] <mount-from-file> <mount-point>
The <fs-options> accepts both generic and FS-specific mount options; some
of them are useful to specify here; see man page mount.nbt(8) for a detailed
description of each FS-specific option.
Example:
# mount.nbt -o ro,region,umask=0022 /usr/home/minecraft/aether-realm/world/AETHER/region/r.1.1.mca /mnt/region/
# ls -al /mnt/region/80/Level/
total 0
-rw-r--r-- 1 root wheel 256 Jan 1 1970 Biomes
drwxr-xr-x 1 root wheel 1 Jan 1 1970 Entities
drwxr-xr-x 1 root wheel 1024 Jan 1 1970 HeightMap
-rw-r--r-- 1 root wheel 7 Jan 1 1970 InhabitedTime
-rw-r--r-- 1 root wheel 10 Jan 1 1970 LastUpdate
-rw-r--r-- 1 root wheel 2 Jan 1 1970 LightPopulated
drwxr-xr-x 1 root wheel 25 Jan 1 1970 Sections
-rw-r--r-- 1 root wheel 2 Jan 1 1970 TerrainPopulated
drwxr-xr-x 1 root wheel 1 Jan 1 1970 TileEntities
-rw-r--r-- 1 root wheel 2 Jan 1 1970 V
-rw-r--r-- 1 root wheel 3 Jan 1 1970 xPos
-rw-r--r-- 1 root wheel 3 Jan 1 1970 zPos
# ls -al /mnt/region/80/Level/Sections/
total 0
-rw-r--r-- 1 root wheel 9 Jan 1 1970 .type
drwxr-xr-x 1 root wheel 6 Jan 1 1970 0
drwxr-xr-x 1 root wheel 6 Jan 1 1970 1
drwxr-xr-x 1 root wheel 6 Jan 1 1970 2
drwxr-xr-x 1 root wheel 6 Jan 1 1970 3
# cat /mnt/region/80/Level/?Pos
48
34