I've Seen Things is a multiplayer browser game implemented in Elixir, Phoenix LiveView and Surface using the Ecspanse library. The terminal graphics are done with the tuicss package.
The game is currenly deployed on fly.io and can be played HERE.
Disclaimer! While the game is playable, you should not take it too seriously. It was mainly used as a playground while developing the Ecspanse library. It aims to implement a paper-rock-scissors style game with 3 offensive and 3 defensive operations. However, it is not really balanced at this point.
It's main purpose is to act as a demo for the library and to show how to use it in a real world application. As it was built together with the library it has a lot of rough edges. But it can still display a lot of the library's use cases.
The game is a multiplayer space combat game. It is a free for all style game. It features also 100 bots acting as enemise when there are no other players online.
You can perform 3 offensive and 3 defensive operations.
The offensive operations are:
- fire laser
- fire railgun
- fire missile
The defensive operations are:
- activate shiled
- perform evasive maneuver
- spawn defense drone
Each action consumes energy. The energy regenerates orver time.
Create a dev.secret.exs
file in the config
directory with the following content:
import Config
config :iveseenthings, :basic_auth, username: "user", password: "password"
This is needed to access the live dashboard locally.
To start your Phoenix server:
- Install dependencies with
mix deps.get
- Start Phoenix endpoint with
mix phx.server
or inside IEx withiex -S mix phx.server
Now you can visit localhost:4000
from your browser.