57 lines
1.9 KiB
Markdown
57 lines
1.9 KiB
Markdown
# SUICIDE LINUX BATTLE ROYALE
|
|
It's back, baby
|
|
|
|
coming soon! check #slbr on irc for updates!
|
|
|
|
typo? you're out.
|
|
|
|
when you play, you'll be dropped in a fresh vm. on the way to your goal, any
|
|
mistyped command will delete your vm and you'll be eliminated.
|
|
|
|
contact ~ben or sose on tilde.chat (in the #slbr channel) to sign up.
|
|
|
|
## How it works
|
|
- Each game has a series of challenges to complete, users are provided with a
|
|
bash shell and a folder of clues.
|
|
- The challenges are numbered 1-X.
|
|
- Users must submit the solutions to each challenge to the admin, the first
|
|
user to submit correct solutions to each challenge will win the game.
|
|
- If at any point the user enters an invalid shell command, they will be
|
|
eliminated from the game.
|
|
|
|
## Configuration
|
|
- Configuring a new set of challenges is as simple as editing the
|
|
`solutions.txt` file with their solutions, and providing new clues in the
|
|
`./image/inhere` folder.
|
|
- In the `solutions.txt` file, the line number of each solution corresponds to
|
|
the challenge it is the solution for. Solutions may not take up multiple lines.
|
|
|
|
## Prerequisites
|
|
- docker
|
|
- jq
|
|
- python3
|
|
- Twisted (`pip3 install twisted`)
|
|
- Python Docker SDK (`pip3 install docker`)
|
|
|
|
## Pre-Setup
|
|
- Make sure your port 1337 is not exposed to the internet, as SLBR will use it
|
|
internally
|
|
|
|
## Setup
|
|
- `mkdir /home/slbr-admin`
|
|
- `useradd slbr-admin -d /home/slbr-admin`
|
|
- `usermod -a -G docker slbr-admin`
|
|
- `chown slbr-admin:slbr-admin /home/slbr-admin`
|
|
- `sudo su slbr-admin`
|
|
- `cd`
|
|
- `git clone https://tildegit.org/sose/SLBRV2`
|
|
- `cd SLBRV2`
|
|
- Run the docker daemon rootlessly, i.e. with `dockerd-rootless.sh`
|
|
- You are now ready to manage an slbr game
|
|
|
|
## Running the game
|
|
- run `./start.sh` to start the sever listening for various game events
|
|
- run `./new_image.sh <user name> </path/to/pubkey>` to create a new user
|
|
- All game events and user commands will be logged to log.txt
|
|
- You can `./reset.sh` to cleanup after a game has finished
|