Role Playing Game Engine

Note: development halted at the start of 2001

I've been employed as a full-time programmer since 2001; to avoid any confusion about the ownership of the copyright I've been avoiding further changes to this project.

Even without any copyright issues, this would still be shelved. Instead I'd probably look at helping with one of the RPG engines on SourceForge. This is archived and unlikely to be continued.


Background

This is something that I have wanted to do for a long time - an RPG game (it works as both an applet and a stand-alone application) in the spirit of the old Phantasy Star or Final Fantasies. It won't be as good, of course, but it should be fun. It will also let other people add locations to it, if they want to.

I'm doing it as a production-quality project*, with proper object-oriented design, and concentrating on getting the underlying non-graphical engine working before concentrating on the graphics.

* production-quality code. The quality of the artwork will not be above that in the gallery.


Last Version

Version 8 (October 4th 2000)

Battle is a lot closer to being finished, the graphics are bigger, you can now enter Torrenmoth (the volcano in the North-West corner of the map) and menu options that can not be selected are grayed out.

A plot has been worked out - the current game is merely a prelude to the project being planned.

History

Versions are numbered in the order that I put them up for public access on the web, hence the seemingly low numbers disguise how many there have been.

November 2000 put on hold

The project has been put on hold for a while.

(planned) Version 9

Things that are scheduled to be in version 9 are improvements to the battles, shops, treasure chests and more work on the Volcano.

Version 8 (October 4th 2000)

This is the one that you can play by following the link above.

Version 7 (Sept 23rd 2000)

Adds a lot, and rounds out many of the rough edges of version 6. Almost all the debugging code has been removed, and many of the game modules are approaching their final form.

Major improvements in all areas. The look & feel of the game has been standardized, and the ensuing bugs hunted down. The level editor has been completely re-written (it's still a sed-like Perl script, but a much better one), and a real title screen has been added (and the original debug code removed). To top it off, something resembling a plot has been added.

Still no battles, as the standardization (and move to lightweight components) introduced a lot of browser-bugs. I'm rolling out version 7 as is (tested, but no battles), and delaying the combat until version 8.

Version 6 (Sept 4th 2000)

This is version 5 with all the known bugs fixed, and improved memory handling and threading. Very few new features in this release.

I believe that the exploration section of the game is ready for use. Treasure chests and lava (damage) are not included yet. Battles occur at random intervals, and writing the battle section is the next stage of the project.

Version 5 (Sept 3rd 2000)

This adds working placeholders for the New Game and Battle modules. Currently they are skeletal implementations, but mean that the Main and Squares From Above modules can be finished.

Version 5 had a couple of features that improved memory use and image loading when run on Java 1.2 machines, these were supposed to turn themselves off if running on a 1.1 machine. Version 6 fixes the bugs in it.

Version 4 (Sept 1st 2000)

Fairly complete exploration section, but no battles.

(25 Aug 2000)

Added warps between maps, more or less finished the level editor. This allows the town/exploration back engine to be completed, and opens the way to a non-debug graphical front end, at which point the game will be playable.

It won't be interesting yet, as there are no battles (and no plot), I want the exploration section working before I add them.

(24 Aug 2000)

It now stands at 1250 lines of code / 30k, and has has enough of a graphical front end added to finish coding the back engine for the town and exploration parts of the game. However this is a debugging front end, and it's not playable.


Implemented so far

Main Engine

The main engine takes a request to load a map by number, and loads both it and the related language-specific data file. It then passes it to one of the following sub-programs.


Title Screen

This gives you the option of starting a new game. Loading a game (via cookies) is planned.

The option of reversed English has been removed. The feature works, but now that it's tested, adding and updating all the extra language files for a dummy language is a distraction from other development.


Town/Exploration

This lets you wander around a couple of maps.

You can walk out of town into the country, and walk back in again.

It's currently quite jerky (proper animation is planned when the rest of the engine is up and running).


Battle

You will be able to attack monsters, and have them attack you.

In Version 7, part of the back engine is missing, so you can only run away, and the monsters do not attack.

In Version 8, the monsters attack synchronously after your attack, and you have the option to attack normally, or to cast spells.


Level editor

The levels are edited as text files, then converted to the format used by the game with a Perl script. This is a completely debug arrangement, as I want to get a proper level editor at some stage. However, it makes sense to get the actual game working properly first.


Known browser incompatibilities and bugs

It requires Java 1.1 or later.
(Not considered a bug.)

There have been a lot of bugs with keyboard focus not transferring to the correct components in MSIE. Believed fixed, but still testing. (These all appeared after version 6, and are (hopefully) squashed in version 7).

Versions 6 and above have some enhancements that operate when run by a Java 1.2 VM, and which gracefully fall back to the 1.1 API on a 1.1 VM.

Keys

You can move with the cursor keys.

Pressing <space> will search/talk to people/read signs/open chests.