Where is JGN these days?

Darkfrog, finally getting some time to do some more stuff with JavaGameNetworking. I noticed there is a message at dev.java.net saying that is not the place to get the source now. It points me to your captive imagination site. Is this current? I can browse the dirs, but there is no one nice way to get all the files in one dl … or is there?


Sorry, that’s not really very explanative.  I need to modify that.  The CVS repository on Java.net is no longer being used, but all releases are still being done there currently until I have the time to create a little web site to link them.  So you can download the latest release of 1.x from here:


I’m still working out all the bugs in JGN 2.0 which is far better, but I’ve been able to write a JUnit test that breaks it multithreaded so I’m caught up trying to figure out what in the world I’ve done wrong. :-p

Until then you can always use the latest release mentioned above or the latest update to 1.x from SVN at http://captiveimagination.com/svn/public/jgn/trunk as it has some additional features and fixes that the latest release doesn’t have, I just never got around to an actual release on it since I got so caught up with JGN 2.0.


Cool, thanks.  Do you have any more examples of usage up? The tests that came with it were informative, but limited in scope. I'm looking more for details on how to arrange my classes and packages for a decent client/server setup.

Basically, I'm trying to resolve if it makes more sense to make the server a headless jME app or to make it completely non-displaying, non-jME app. I'm wondering how you have approached it.

This would be for a multi-client/ single server arrangement for multiplayer and a single client / listen server setup for single-player.

I have gone primarily for a thick-client/thick-server ideology in most of my projects as it lets me keep everything running smoothly on the client, and makes things easier to manage on the server for validation and synchronization (also lets you only have to manage one code-base between client and server if you do it right).  However, there are many games that go thick-client/thin-server, or thin-client/thick-server.  It's generally just preference.  I will be spending a lot more time getting some tutorials up and more examples once JGN 2 is released.  If you would be interested in creating a tutorial yourself I would be happy to assist you in doing so.  Just let me know.

You should consider posting questions on the JGN forum instead of here though…plenty of discussion going on around here, but I've been getting the silent treatment on my forums ever since I announced JGN 2 was being developed. :-p  I think I scared everyone away. :o


No silent treatment - I think networking is even more daunting than Graphics programming, and you get less bang for your buck initially. Certainly, when I started

working on my own networking stuff, I found that it forced me to make some design decisions that I wasn;t qualified to make at the point. So I went on t o other, smaller, projects for the moment.

I’ll start a thread over there. As an FYI for others, ‘there’ is http://www.captiveimagination.com/forum/

Definitely it can be…and it was much more complicated a process than I even originally conceived.  I know standard networking pretty well, but when I got into the NIO aspects I bit off more than I was ready to chew at the time.  It was a major learning process for me and amazing just how many things you have to account for.  JGN 2.0 was started because I finally felt like I was finally beginning to understand NIO as a whole and the right way to do it.  JGN 1.x has some serious flaws in it.  Granted most people would never notice the majority of them, but they exist none the less.  JGN 2.0 was a start over from scratch to determine the best way to do everything.  I've reached even further than I had originally anticipated and if it's not apparent am extremely excited about what it will do. :slight_smile: