bettola/README.org
2025-09-20 01:09:03 +01:00

50 lines
1.4 KiB
Org Mode

#+TITLE: Working Title: Bettola
A multiplayer hacking simulator with a graphical OS, built in C++ and OpenGL.
* Dependencies
The following dependencies are required:
- A C++ compiler (e.g., clang, g++)
- CMake (3.16 or newer)
- SDL3 development libraries
- GLEW development libraries
** Installation (Debian)
You can install all required dependencies with the following command:
#+BEGIN_SRC bash
sudo apt update
sudo apt install build-essential clang cmake libsdl3-dev libglew-dev
#+END_SRC
* Build Instructions
This project uses a top-level Makefile to simplify the CMake workflow. Build artifacts will be placed in the =bin/= directory.
Simply run the following commands from the root of the project directory:
- *Build the project:*
#+BEGIN_SRC bash
make
#+END_SRC
- *Build and run the client:*
#+BEGIN_SRC bash
make runc
#+END_SRC
- *Build and run the server:*
#+BEGIN_SRC bash
make runs
#+END_SRC
- *Clean the project:*
This removes the =bin/= directory.
#+BEGIN_SRC bash
make clean
#+END_SRC
* Project Structure
The codebase is organised into three main components:
- =common/=: A shared library (=libbettola=) containing code used by both the client and server.
- =client/=: The game client (=bettolac=), handles rendering, UI, and user input.
- =server/=: The game server, manages game state and the world simulation.