Distributed application framework, good for MMOGs
Narya provides a framework for building realtime distributed systems with an
emphasis on multiplayer online games (massive or otherwise). Its various
packages include:
Javadoc documentation is
provided.
Three Rings hosts a site called Game Gardens where the Narya library is used
to develop a wide array of multi-player online games. On that site you can find
tutorials and sample code relating to the use
of Narya in game development.
The library is built using Maven, or Ant.
The Maven build uses the standard targets:
package: builds the code and creates the jars and swcs
install: builds and installs the artifacts into your local Maven repository
test: builds and runs the unit tests
The Ant build uses the following targets:
all: builds the distribution files and javadoc documentation
compile: builds only the class files (dist/classes)
javadoc: builds only the javadoc documentation (dist/docs)
dist: builds the distribution jar files (dist/*.jar)
If you wish to build the ActionScript components via Ant, you will need to
supply the location of the Flex SDK on the command line:
% ant -Dflexsdk.dir=SOMEPATH dist
Narya provides three different build artifacts, for differing purposes:
Narya is published to Maven Central. To add a Narya dependency to a Maven
project, add the following to your pom.xml
:
<dependencies>
<dependency>
<groupId>com.threerings</groupId>
<artifactId>narya</artifactId>
<version>1.15</version>
</dependency>
</dependencies>
To add it to an Ivy, SBT, or other Maven repository using project, simply
remove the vast majority of the boilerplate above.
If you prefer to download pre-built binaries, those can be had here:
Narya is extended by the Nenya and Vilya libraries which provide additional
game related functionality like 2D and 3D graphics support, animated character
rendering and a more sophisticated virtual world framework.
Narya is released under the LGPL. The most recent version of the library is
available at http://github.com/threerings/narya
Questions, comments, and other worldly endeavors can be handled via the Three
Rings Libraries Google Group.
Narya is actively developed by the scurvy dogs at
Three Rings Contributions are welcome.