NOTE - this project is not active

This is an online gaming project that I started in the beginning of 1997. It has been paused since 1999 due to lack of time so the stuff on this site hasn't been updated since then. Feel free to browse around if you are interested! It was a very fun and inspiring project and we all learned a hell of a lot about during the process. We've also managed to inspire a few other programmers and gamers on the internet and contributed to other similar projects, which to a certain degree compensates for the fact that we never finished this project...

Even several years after, with lots more experience in client/server design, I still think the design of this system is pretty cool :o).  It's a bit overgeneric perhaps, more targeted towards programmers and the nerd-type gamers that are more interested in flexibility and extensibility than cool graphics and action. Also major redesigns would be necessary for scalability. But I certainly hope to be able pick this up again in the future, or perhaps a new project with along the same lines! Open source this time.

So... you have been warned. All the info below is history. Don't trust they "last updated" info on the pages - it always shows the current date for some reason. And the demo is a bit buggy due to browser evolution... it DID work better in 1998!

Oh yeah, here's a link to the internal pages, with some of the last design discussions and documentation. These pages were not publicly available before, but since the project isn't active I don't see any reason to be secretive.

/Henrik, 2001-07-16

What is this?

White Orb is, to be formal about it, a "multi-user icon-based internet roleplaying system". Some might also choose to call it a "multi-user virtual environment" or simply a "graphical MUD". It is implemented in Java.

Last status report (Sep 2, 1998)

Finally, we have a webserver!!  Big thanks to Emerson and iServer/Verio Web Hosting in Brazil for sponsoring us with this.

This project is now alive and kicking, after a slow period of about eigtht months.  This site is being revamped (Shane the gate creeper has been working hard), and will be even more revamped soon when I get my hands on it... hehehe.

Anyway, we are integrating the action, skills, and properties systems, which should provide a very generic, skillbased system.   Hard to describe without getting into details, you will see.  We are starting to get the combat system on it's feet, have cleaned out some client/server communication bugs that slowed things down, are making some more interesting AI-examples for the demo world, are implementing an anatomy system.  That is just a few of the things we are working on right now...

I am merging a more updated version now, after that I will fix the demo, finally!  Now that we have a server, we should be able to have a running online demo as well, and not just a standalone world where you run around alone.


User interface spec

Here is the (by no means complete) specification for how the graphic user interface will work, as well as the look-and-feel. See the demo page for screenshots of the latest GUI implementation. I will be adding to the specification below as the project progresses.

Program design

The documents and chapters below go through the general design of this program. You don't need to know Java to understand these documents, but you'll need some understanding of object oriented programming. I've tried to keep the documents on as high a level as possible to avoid bogging down on details. Besides, the details change from time to time and I don't want to keep having to update these documents...

Disclaimer - many of these design ideas are not invented by me alone - many of them are the result of long, intensive email discussions with Jukka V Heinonen (warning - his homepage is in Finnish), and some of the event propagation stuff is directly inspired by the Java AWT event delegation model, as well as the JavaBeans architecture.

Note - all documents & designs below are copyright (c) their authors.

Why am I publishing the program design anyway?

Well there are several reasons. First of all, this is not a one-man job.  Right now we are five developers, but we will probably be needing more as the project progresses for things like AI routines, client GUI, item libraries, races, geographic design, music, sound effects, etc, etc...

If I keep the design secret it will be hard to find people to do this work. Also, I welcome comments on the design. Do you see any risks? Have we overlooked something? Or perhaps you have an idea on how to improve some part of the design?  Get in touch. I want this to be an open system where people from the "outside" can create other worlds, like perhaps a science-fiction world...

It's also a matter of pride. I feel the documents above show that this project is serious, and that we are really trying to make general system for icon-based internet roleplaying games.

Some people have asked if I'm not afraid that people will steal the idea if I publish the internal design. Well, frankly, it's a risk I'm willing to take. If you like this idea and are capable enough to steal it by reading the design documents and implementing it, why don't you join the project instead and save yourself the trouble of copying it :o)


If you have any questions or comments, contact me:

Henrik Kniberg