Skip to content
A dwarf-fortress clone / MUD / side project in Elixir
Elixir
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config
lib
rel
test
.gitignore
.tool-versions
.travis.yml
LICENSE
README.md
mix.exs
mix.lock
world

README.md

Dwarlixir

  • Travis Travis build
  • Semaphore Build Status

Getting started

Make sure you have Elixir ~> 1.5.1 available.

README-driven development

Things I need to bring back in as I switch to ECS:

  • generating a world
  • creating location entities
  • generating mobs at startup
  • putting mobs in locations
  • reproduction

components

  • Age
  • Mortal
  • SexualReproduction (Biology? Subcomponent? Not a component at all?)
  • OviparousReproduction
  • AIComponent.V1

Thoughts

What about aging; could be a separate tick for everyone (easy) or some kind of "everything ages at the same time" tick. If the latter, I need, I think, to make it possible to subscribe to events in the ECS framework. Well, my "Watcher" idea is growing old quickly isn't it. Unless I create a Universe entity with a Tick component which could get updated with a monotonically increasing value, and that would be something that various things could watch...

A player character:

  • can move
  • gains "idle xp" ?
  • can talk
  • can disconnect

Priority 1: on the server, able to send and receive messages Priority 2: actually having a working character Priority 3: being in a room

You can’t perform that action at this time.