Home

Awesome

ExVenture

Build Status Trello Discord Patreon

<img src="https://exventure.org/images/exventure.png" alt="ExVenture Logo" width="200" />

A text based MMO server written in Elixir.

Features

Powerful web admin

Web client

Cross Game Chat

Front Page

Security

Resilient

Multi-node support

Games Running ExVenture

If you are running an ExVenture MUD and want to get on this list, let us know on the Discord!

Requirements

Setup

mix deps.get
mix compile
cd assets && npm install && node run build && cd ..
mix ecto.reset
mix run --no-halt

This will start a server on port 5555 that you can connect with using the local.tin tintin++ config. Ecto reset will include a sample area, classes, skills, and a login. You can also load http://localhost:4000/ in your browser for the admin panel and web client.

Running Tests

MIX_ENV=test mix ecto.create
MIX_ENV=test mix ecto.migrate
mix test

Web Client

A web client is hosted by the game. Once it is running locally, you can access it via http://localhost:4000/play.

Web Client

Admin Panel

There is an admin panel located at http://locahost:4000/admin that you can build out the game in. Create zones, rooms, npcs, items, etc. in the panel. They will become live instantly on creating or updating.

You can see more on exventure.org.

Admin Dashboard

Deployment

See exventure.org for deployment setup.

Metrics

Prometheus metrics are set up and will be reported on /metrics. You may want to have nginx deny requests to this endpoint or whitelist it for IPs, etc.