5b5f876cad | ||
---|---|---|
bin | ||
dependencies | ||
scripts | ||
src | ||
test | ||
.gitignore | ||
LICENSE.md | ||
README.md | ||
setupenv.bashrc |
README.md
Minecraft
This is a WIP reimplementation of Minecraft.
For now, we target feature parity with 1.18.2 or 1.19.1.
Immediate goals:
- Networking library
- build a dummy server that Minecraft clients can detect
- get Minecraft to connect to the dummy server
- Dummy server
- send an empty void
- send a surface to stand on
- handle chat
- NBT library
- parse NBT
- decode and encode data
Project Setup Instructions
Prerequisites:
This project requires bash and a C++20 compiler.
The project setup requires wget or curl, gzip, and tar.
For people using other shells than bash: You need to at least have bash installed to use the scripts, but using it as your shell while working on this project also allows you to use the provided aliases.
If you don’t want to use bash as your shell, not even temporarily for this
project, you can use the scripts by running them from the project's base
directory and run any generated executables with LD_LIBRARY_PATH
set to
point to bin/lib
.
Setup
git clone
this repository- if using bash:
source
the filesetupenv.bashrc
from the project's base directory to load the provided shell environmentsetup_project
- if not using bash or not using the provided environment:
cd
to the project's base directoryscripts/setup_project.sh
Building
To build the project, just use the build
alias or invoke the build.sh
script from the project's base directory.