Main Page
From Gardenwiki
If you are a skilled Java programmer (or just learning), you can make your own games and host them on our servers so that others can come and play them at any time. This is accomplished through the use of free software libraries that we provide to handle networking and match-making which are documented below and demonstrated in the sample games.
Contents |
Download the Toolkit
Download one of the following archives which contain pre-built versions of all of the necessary libraries:
game-gardens.tar.gz game-gardens.zip
Tutorials
The best way to get started is to go through the main tutorial which takes you step by step through the process of implementing the game Reversi using the Game Gardens toolkit:
You might also want to check out tutorials on using particular Java IDEs to do your development:
Then there are a host of other tutorials, covering various topics:
- Compiling and Running the Sample Games
- A thread discussing the Presents distributed object architecture
- Mummichog Design Pattern Tutorial
- See also: a complete list of tutorials
Example Games
Three games are included with the main distribution. Many of the games uploaded to the site come with source code and also serve as good examples:
- Dugi: http://sourceforge.net/projects/dugi-gg
- Mummichog: http://sourceforge.net/projects/mummichog
- Tasty: svn://samskivert.com/games/trunk/tasty
- Tall Tales: svn://samskivert.com/games/trunk/talltales
Libraries and Documentation
The source and documentation for all the libraries used by the Game Gardens system and sample games are provided here:
- Narya library - javadocs
- Nenya library - javadocs
- Vilya library - javadocs
- ToyBox library - javadocs
- samskivert library - javadocs
Getting the Source
The Game Gardens toolkit comes pre-compiled with all of the necessary library dependencies included. You definitely want to start with this before you try rebuilding the toolkit from source code.
Once you're comfortable building things with the pre-compiled toolkit, you might want to check out the source code from Subversion. The Game Gardens toolkit is made up of a number of key libraries called Narya, Nenya, Vilya and Toybox. Those can be checked out from Subversion like so:
svn checkout svn://code.threerings.net/gardens/trunk gardens
This will checkout the source code to the various libraries used by Game Gardens as well as all of the necessary external library dependencies. The directory structure once you've checked it out will look something like this:
gardens/projects/narya - the Narya library gardens/projects/nenya - the Nenya library gardens/projects/vilya - the Vilya library gardens/projects/toybox - the ToyBox library gardens/projects/samskivert - the samskivert library gardens/projects/games - the sample games
You can rebuild all of the dependent libraries and generate the single combined jar file that is used by the game development environment by running (that will not work on a Windows machine):
cd gardens/ ant distall
That will create the file:
gardens/projects/games/client/gg-client.jar
which is what is used when you compile and test your games from:
gardens/projects/games/yourgame
Note that Windows users will likely want to use a GUI tool (like Tortois SVN).
Web Site Source
If you are interested in checking out the source code to the web applications that are used on this website and the various HTML and whatnot, you can find that here:
- The main website is in Subversion:
svn checkout svn://code.threerings.net/gardens/trunk gardens
- We also use the mvnForum message board system.
Further questions can comments are best handled on the message boards.

