diff options
| author | Nicolas James <Eele1Ephe7uZahRie@tutanota.com> | 2025-02-12 21:57:46 +1100 |
|---|---|---|
| committer | Nicolas James <Eele1Ephe7uZahRie@tutanota.com> | 2025-02-12 21:57:46 +1100 |
| commit | e4483eca01b48b943cd0461e24a74ae1a3139ed4 (patch) | |
| tree | ed58c3c246e3af1af337697695d780aa31f6ad9a /README.md | |
| parent | 1cc08c51eb4b0f95c30c0a98ad1fc5ad3459b2df (diff) | |
Update to most recent version (old initial commit)
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..581388d --- /dev/null +++ b/README.md @@ -0,0 +1,69 @@ +# blockgame_linux + +A somewhat-completed attempt at writing *that game* from scratch in C++20. + + + + + + + +# Features + +- High performance OpenGL renderer capable of 64 chunk distance with ease +- Cross platform multiplayer support with a multithreaded scalable server +- Diverse biomes and a virtually infinite world +- Local player area bounded chat system +- Persistent world and player position +- Movement and collision system +- Simple user interface +- Decentralised anonymous authentication, no central authority + +# Dependencies + +- [CMake](https://cmake.org) : Cmake is a cross platform, open source build system generator. +- [Boost](https://boost.org) : Boost provides free peer-reviewed portable C++ source libraries. +- [sqlite3](https://sqlite.org) : SQLite is a C-language library that implements a SQL database engine. +- [assimp](https://github.com/assimp/assimp) : A library to import and export various 3d-model-formats. +- [SDL2](https://libsdl.org) : A library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware. +- [epoxy](https://github.com/anholt/libepoxy) : Epoxy is a library for handling OpenGL function pointer management for you. +- [freetype](https://freetype.org) : FreeType is a freely available software library to render fonts. +- [protobuf](https://github.com/protocolbuffers/protobuf) : Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. + +# Building from Source + +To download the latest available release, clone this repository over github. + +```console + $ git clone https://salvestromartin.com:443/nJ3ahxac/blockgame_linux.git +``` + +Then compile from source via cmake after moving into the blockgame_linux directory. +```console + $ cd ./blockgame_linux + $ cmake ./ + $ make +``` + +# Client Usage + +Simply executing the binary will start a background server and connect your client to it. +```console + $ ./blockgame_linux +``` +Others may connect, provided they provide your IP address as an address argument. +```console + $ ./blockgame_linux --address <your.ip.address.here> +``` +Other arguments can be found with the help argument. +```console + $ ./blockgame_linux --help +``` + +# Server Usage +A dockerfile has been provided and launching the server may be achieved with the +following helper script: +```console + $ ./run_server.sh +``` +We suggest you open the server's port (8191 by default) if necessary. |
