Flakkari is a UDP server created for the R-Type Epitech project.
Note: The project is still under development and may not be stable.
# Clone repository
$> git clone https://github.com/MasterLaplace/Flakkari.git
$> cd Flakkari
# Create a build directory
$> mkdir build
$> cd build
# Configure the project
(build)$> cmake .. && cmake --build .
# Or configure the project with Ninja
(build)$> cmake -G Ninja .. && cmake --build .
# Run the server executable
(build)$> ./r-type_server
Note:
- the server load Games from the
./Games
directory, so if you want to add a game, you have to put it in this directory before running. If the server is already running, use theaddGame <gameName>
command to load it.
Note:
- some input commands need administrator privileges to execute.
export FLAKKARI_PASSWORD=<password>
to set the password for the server to run with administrator privileges.
other build commands:
# Install the project
(build)$> sudo cmake --build . --target install
# Build project documentation
(build)$> cmake --build . --target doc
# Build project package
(build)$> cmake --build . --target package
(build)$> sudo dpkg -i r-type_server-<version>-Linux.deb
Note:
- the install target will install the server executable in the /usr/local/bin directory, the network library in the /usr/local/lib directory and the header files in the /usr/local/include directory.
- the doc target will generate the doxygen documentation in the docs directory.
# install docker on ubuntu
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
# check docker version (optional)
$ docker --version
> Docker version 24.0.7, build afdd53b
# build docker image
$ docker build -t flakkari .
# run docker image
$ docker run Flakkari -p 4242:4242
# list docker images
$ docker ps
# stop docker image
$ docker stop <container-id>
# remove docker image
$ docker rm <container-id>
Wiki:
For detailed documentation on the Flakkari protocol, see:
📋 Change Log.
This project is licensed under the terms of the MIT License.
Copyright © 2023-2024 Master_Laplace.