JRider will be a computer game in which you and your friends race around a virtual world. It's written in pure Java, so it ought to run on pretty much any modern computer. I'm writing it in my spare time for fun. It's unfinished.

This site includes everything you need to run the latest version. In fact, it provides two alternative ways of running it:

I'll explain each of these methods in turn. At the end, I'll explain how to play the game.

Java Web Start

This is Sun's latest plan for getting Java onto your computer. To be fair it's quite clever. The idea is that you download the Web Start application just once, in the same way that you'd download RealPlayer or Macromedia Flash or something. You then configure your browser so that whenever you find a JNLP file on the web, your browser will open it using Web Start. This downloads and runs a Java application.

You get your hands on a free copy of Java Web Start from java.sun.com. It's quite a large download, as it includes the complete Java platform. Once you have it, it will automatically upgrade itself whenever it finds a JNLP file that requires it (it will also automatically upgrade the Java applications that it runs).

Then all you need is the JNLP file for JRider.

Java application

The way the game is designed to be run is as a Java application. To run Java applications you need to download and install the Java platform. Then type the command

java -jar jrider.jar <seed> <number of players> <camera mode> <drive mode>

You can get your hands on a free copy of the Java platform from java.sun.com. The product you are looking for is called a Java Runtime Environment (JRE). If you fancy writing programs too, get a Java Development Kit (JDK) instead. There are versions of both for all common operating systems, including Windows, MacOS and Linux. Get a recent version (JRider requires version 1.3). It's quite a big download, but once you've got it you can run any Java application, not just JRider.

If you want to play a network game, then type the following similar command instead:

java -cp jrider.jar org.sc3d.apt.jrider.v1.NetworkGame jrider.minworks.co.uk:51234 <seed> <number of players> <camera mode> <drive mode>
where jrider.minworks.co.uk:51234 is the game server to which you wish to connect, and the other arguments are the same as for a local game. All players anywhere on the internet who connect to the same server and specify the same track play together. There is currently no way of determining on which tracks people are already playing, so you should probably arrange a meeting point with your friends.

The server running on jrider.minworks.co.uk:51234 is probably not the best bet for the 1337 gamer, due to being a long way over the internet from you (probably). Jrider doesn't cope too well with lag and spikes. I may also have to reduce the bandwidth to appease my ISP (assuming JRider becomes the runaway hit it so richly deserves to be :-)). All of which means you might want to start up other JRider servers. You can get the required program from its author, Chris Lightfoot.


So, the game is running. A Map window has opened, and one window for each player. They're probably all on top of each other at first, so spread them out. Also, a message has been printed to the console, listing the keys that each player should use.

The keys for the first two players are:

PlayerLeftRight AccelerateBrakeChange gear
Green<> @?#

If you do not have an ordinary UK keyboard, these might be rather inconvenient. The number sign (hash, sharp, whatever you want to call it) seems particularly problematic. I'll fix that later.

Ensure that one of the player windows has the focus, and press 'Escape' to start the game. Press the accelerator. Now that the car is moving, you should be able to steer. Press the brake to stop. It's obvious, isn't it?

Each time you press 'change gear', the program will automatically select the most appropriate gear that you are not already in. There are five forward gears and one reverse. To select reverse, it has to be the most appropriate gear that you are not already in, so you have to be almost stationary in first gear.

If you get your car stuck, turn it over, or smash its wheels off, then you will need the panic button. Press left, right and brake at the same time, and you will be instantly restored to a state of disbelief. To prevent cheating, the panic button only works when you are stationary. If you get really stuck, press Escape to start all the players from the beginning.

The small yellow and black blobs floating in the air are to indicate how far round the lap you've completed. As long as they're just in front of you, you're doing fine. If you can't see them, you're probably going the wrong way, or you're on the wrong bit of the track. Each time you (legally!) cross the start line, the number of laps you have completed, your time for the last lap and your best lap time will be printed on the console. There's no official end to the race yet - agree it before you start. For example, you might agree that the first person to complete 10 laps is the winner, or perhaps the person with the best lap time at that point.

There's considerable variation in the tracks, so make sure you get a fair sample. Unavoidably, a small fraction are unusable; just try another. I'm compiling a page of recommendations to which you can contribute by emailing me ('jrider' at 'minworks.co.uk'). You've got about eight billion billion tracks to try out, so you'd better get going!


The important files are contained in the files 'jrider.jar' and 'sources.zip'. There are two Java packages, which have separate licences.

Think of this development version as an advertisement for a future product.

Source code

Ah yes, source code. It's all javadoc-ed.


Features already implemented:

Features definitely planned:

Features requested but not currently planned: