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 to the platform. The Game Gardens toolkit is made up of a number of key libraries called Narya, Nenya, Vilya, which are hosted on Github, and ToyBox which is part of the main Game Gardens project. The main project can be checked out from Github like so:
git clone git://github.com/threerings/game-gardens.git
You can rebuild the Game Gardens SDK like so:
cd game-gardens/ ant distall
You can test against your locally built Game Gardens SDK by putting your game into game-gardens/projects/games and then using the standard "ant server" and "ant -Dusername=test client" targets.
You can try the example games that are shipped with the SDK by first building the SDK and then going into game-gardens/projects/games/atlantis, for example, and running "ant server" and (in a second terminal window) "ant -Dusername=test client".
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, that is also part of the main Game Gardens project. It can be checked out from Github like so:
git clone git://github.com/threerings/game-gardens.git
Further questions and comments are best handled on the message boards.