~lthms/thaar

7f3cd01457eeedf2522e577c19b96431d5d5e5ca — Thomas Letan 3 years ago f0158b1
chore: Add a README to explain how to create and launch a party
1 files changed, 47 insertions(+), 14 deletions(-)

M README.md
M README.md => README.md +47 -14
@@ 1,21 1,54 @@
# Thaar
# thaar

**TODO: Add description**
`thaar` is a mini-game project for a
[http://miradelphia.forumpro.fr](Miradelphia) event called *Les grands jeux de
Thaar*, where gladiators from all around the world face each other on various
fights.

## Installation
## How to play

If [available in Hex](https://hex.pm/docs/publish), the package can be installed
by adding `thaar` to your list of dependencies in `mix.exs`:
First, you need to clone this repository.

```elixir
def deps do
  [
    {:thaar, "~> 0.1.0"}
  ]
end
```bash
git clone https://git.sr.ht/~lthms/thaar
```

Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
and published on [HexDocs](https://hexdocs.pm). Once published, the docs can
be found at [https://hexdocs.pm/thaar](https://hexdocs.pm/thaar).
`thaar` is implemented in Elixir using the `lkn` framework. There is no system
dependency, so starting the game server should be as simple as:

```bash
cd thaar
mix deps.get
iex -S mix
```

There is no admin panel of any sort, so creating and managing games is done via
`iex` REPL

```iex
iex(1)> Thaar.Admin.start_link "test"
:ok
```

You can now connect clients to the party:

```bash
${BROWSER} "client.html#test"
```

You might need to update `client.html` to provide the correct websocket
configuration, in case you have set up the server behind a http proxy such as
`nginx`.

Once your players are ready, go back to `iex` REPL and fill the missing places
with bots:

```iex
iex(2)> Thaar.Admin.spawn_bots "test"
```

You are ready to go! Start the party, and enjoy your players lose and win.

```iex
iex(3)> Thaar.Admin.start_party "test"
```