MT-CTF/capturetheflag

GitHub: MT-CTF/capturetheflag

Stars: 97 | Forks: 94

Capture the Flag

Capture the Flag

Combat the enemy with swords, guns, grenades, and more as you try to capture their flag before they capture yours!

ContentDB Build Status GitHub Contributors Issues GitHub pull requests

Official Server

Address: ctf.rubenwardy.com Port: 30001

You will need a Luanti (formerly Minetest) Client to join.


## Installation ### Git Capture the flag uses several submodules. Make sure to grab them all by cloning like this: git clone --recursive https://github.com/MT-CTF/capturetheflag.git ### ContentDB Simply download the game with the ingame content browser. Note that this version may be slightly behind the git version, but it will be a little more stable. Note that downloading from ContentDB will probably delete any existing CTF folder downloaded via git, unless you move it out of the Luanti `games` directory first. ## Recommended Setup * [!] You should host your server using the `dummy` backend if it's not in mapedit mode, this will prevent Luanti from writing the map to disk, which speeds up map operations (and general server speed as a result) a lot, especially on HDDs. ### For public servers: * Storing rankings using the `redis` backend, all steps are required: * Install redis, luarocks, and luaredis (Ubuntu) * `sudo apt install luarocks redis` * `sudo luarocks install luaredis` * Add `ctf_rankings` to your `secure.trusted_mods` * Make sure you don't add any malicious mods to your server. **It is possible they can breach the sandbox through `ctf_rankings` when it is a trusted mod** * Run something like this when starting your server: `(cd minetest/worlds/yourworld && redis-server) | ` * If you run your Minetest server using a system service it is recommended to run redis-server on a seperate service, with the Minetest service depending upon it ## Starting a game (GUI instructions) * Create a new `singlenode` world * Turn on `Enable Damage` and `Host Server`, turn off `Creative Mode`, *memorize* your port * Click `Host Game`, a round should automatically start as soon as you join in * Players on your LAN can join using your local IP and the port you *memorize*d. You will have to port forward for other people on the internet to join ## Development * CTF API Docs: Lua API Reference - [Link](docs/ctf-api.md) * If you use Visual Studio Code we recommend these extensions: * https://marketplace.visualstudio.com/items?itemName=sumneko.lua * https://marketplace.visualstudio.com/items?itemName=dwenegar.vscode-luacheck * https://marketplace.visualstudio.com/items?itemName=GreenXenith.minetest-tools ## License Created by [rubenwardy](https://rubenwardy.com/). Developed by [LandarVargan](https://github.com/LoneWolfHT). Previous Developers: [savilli](https://github.com/savilli). Check out [mods/](mods/) to see all the installed mods and their respective licenses. Licenses where not specified:\ Code: [GNU LGPLv2.1+](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html)\ Media: [CC BY-SA 3.0 Unported](https://creativecommons.org/licenses/by-sa/3.0/) ### Textures * [Header](menu/header.png): [CC BY 3.0 Unported](https://creativecommons.org/licenses/by/3.0/) by [SuddenSFD](https://github.com/SuddenSFD) * [Background Image](menu/background.png): [CC BY-SA 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/) (where applicable) by [GreenBlob](https://github.com/a-blob) (Uses [Minetest Game](https://github.com/minetest/minetest_game) textures, the majority of which are licensed [CC BY-SA 3.0 Unported](https://creativecommons.org/licenses/by-sa/3.0/)). The player skins used are licensed under [CC BY-SA 3.0 Unported](https://creativecommons.org/licenses/by-sa/3.0/) * [Icon](menu/icon.png): [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/) by [SuddenSFD](https://github.com/SuddenSFD)