Scaffolding MC (1.15.2 ONLY!!!!)
A minecraft server with the main purpose being previewing map files. VERY EARLY ALPHA STAGE!
What currently works:
- Reading region files (only with both x and y positive)
- Sending rudimentary chunk data
- Login in both online and offline mode
- Multiple clients at the same time
- Keepalive
What needs to be done:
- Clients seeing each other
- Getting player position and updating what chunks get sent
- Sending empty chunks at the edges
- Streaming of chunk data rather than pregeneration (That was a lazy hack)
- Significant reduction of memory usage (this goes back to the previous point)
- Time of day locking
- Toggling flights for the clients
- Support for versions other than 1.15.2
- (maybe) chat
- (unlikely) discord integration for chat
How to use it?
Generally, you shouldn't right now. If you really want, build the project simply by running go build *.go
The config file included in this repo should be self-explanatory. The x
and y
positions are in reference to chunks not blocks.
You will also need a special file generated by the real minecraft server that contains information on block states and their IDs. Follow instructions at this link: https://wiki.vg/Data_Generators#Blocks_report . YOU MUST USE 1.15.2!!!!!! Then create a folder next to the server binary called registries
. In that folder, create a folder called 578
(578 is the protocol version for 1.15.2). In that folder, put the blocks.json
file.
Once you have the config file, the map files and the registry file, you should be able to just run the server. Join, look for bugs, and have fun!