diff --git a/README.md b/README.md index 5125ede..a2d9f75 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,47 @@ -# Basin -A high performance Minecraft server implementation written in C. - -# Features -* Low memory footprint (13 MB for a 400-chunk spawn and one player on a 64-bit system) -* Block placing/breaking -* Survival mode -* Creative mode -* Inventories -* Players, Chat, and Tab menu -* Item entities -* Chests, Furnaces, Crafting -* PvP -* Fall damage -* Block physics & updates -* C Plugin System -* Block & Sky Lighting - -# Planned Features -* Natural Mob Spawning & AI -* Lua Plugin Systems -* Comprehensive permissions & commands system -* Ultra-low memory mode - Sacrifice CPU Cycles for further memory use reduction -* Entities-by-chunk logic - Hold millions of entities in a world -* World generation -* Comprehensive opt-in Anticheat -* GPU accelerated world generation, AI, and more(?). +# Basin +A high performance Minecraft server implementation written in C. + +# Features +* Low memory footprint (13 MB for a 400-chunk spawn and one player on a 64-bit system) +* Block placing/breaking +* Survival mode +* Creative mode +* Inventories +* Players, Chat, and Tab menu +* Item entities +* Chests, Furnaces, Crafting +* PvP +* Fall damage +* Block physics & updates +* C Plugin System +* Block & Sky Lighting + +## Planned Features +* Natural Mob Spawning & AI +* Lua Plugin Systems +* Comprehensive permissions & commands system +* Ultra-low memory mode - Sacrifice CPU Cycles for further memory use reduction +* Entities-by-chunk logic - Hold millions of entities in a world +* World generation +* Comprehensive opt-in Anticheat +* GPU accelerated world generation, AI, and more(?). + +# Compiling +To compile Basin, you can use Make directly or use CMake if you choose. Output is always put in basin/Debug regardless of build system. + +### Make: +To compile: `cd basin/Debug; make` +To clean: `make clean` (in Debug) + +### CMake: +To compile: +``` +mkdir cmake-build-debug +cd cmake-build-debug +cmake .. +make -j 4 +``` +To clean: `make clean` (in cmake-build-debug) + +# Running Basin +To run Basin, simply invoke the binary `./basin`. Ensure that the binary is located with the relevant data files (the JSONs).