This code has been moved to the Worldforge repository.
Eris is a client library for the WorldForge system. It's meant to be used by any client which wishes to easily interact with a Worldforge server.
It handles the client-side implementation of the meta-server protocol, and querying game servers; out-of-game (OOG) operations (via the Lobby and Rooms), and most importantly, in-game (IG) operations such as entity creation, movement and attribute updates.
If you intend to build this as a prerequisite for the Ember client or the Cyphesis server we strongly suggest that you use the Hammer tool to compile it. This is script provided by the Worldforge project which will download and install all of the required libraries and components used by Worldforge.
Alternatively you can use Conan to install all dependencies.
conan remote add worldforge https://artifactory.ogenvik.org/artifactory/api/conan/conan
conan install tools/conan --build missing
cmake --preset conan-release
cmake --build --preset conan-release
Otherwise the library can most easily be built through the following commands.
mkdir build && cd build
cmake ..
make -j all install
The test suite can be built and run using the check
target. For example:
make check
or
cmake --build --preset conan-release --target check
If Doxygen is available API documentation can be generated using the dox
target. For example:
make dox
or
cmake --build --preset conan-release --target dox
Eris provides a generic 'Entity' class, which you are free to sub-class and provide to the system (by registering a factory); thus you are free to create different classes to handle characters, walls, vehicles, etc as your client dictates. An alternative approach is to create peer classes, and connect them to Eris via callbacks. Eris makes extensive use of libSigC++, which must be correctly installed and functioning on your system.
If you're interested in helping out with development you should check out these resources: