mw-engine/README.md
2023-07-21 09:35:14 +01:00

49 lines
1.5 KiB
Markdown

# mw-engine
Core cellular automaton engine for MicroWorld.
## Part of the overall MicroWorld system
While this code works and is interesting on its own, you also need at least
[mw-parser](https://github.com/simon-brooke/mw-parser) and
[mw-ui](https://github.com/simon-brooke/mw-ui). There will be other
modules in due course.
You can see MicroWorld in action [here](http://www.journeyman.cc/microworld/) -
but please don't be mean to my poor little server. If you want to run big maps
or complex rule-sets, please run it on your own machines.
### Version compatibility
There are substantial changes in how rule functions are evaluated between 0.1.x
versions of MicroWorld libraries and 0.3.x versions. In particular, in 0.3.x
metadata is held on rule functions which is essential to the functioning of the
engine. Consequently, you cannot mix 0.1.x and 0.3.x libraries: it will not work.
## Usage
Primary entry points are make-world and run-world, both in mw-engine.core. See
source or generated documentation for details. Documentation can be generated
using
lein marg
To build the whole system, place all MicroWorld projects in a common directory,
and from that directory run *buildall.sh*. Alternatively, in each MicroWorld
project directory, run
lein clean
lein compile
lein marg
lein install
and then from the mw-ui directory, run
lein ring server
## License
Copyright © 2014 Simon Brooke
Distributed under the terms of the
[GNU General Public License v2](http://www.gnu.org/licenses/gpl-2.0.html)