By Chris Wild, Jure Rogelj and Mike Singleton

*Notes and Announcements
 Updated 14/09/04

In 1991 I ported Mike Singleton's "Lords of Midnight" and "Doomdark's Revenge" to the PC. After I had finished, I sat back and wondered what it would be like running under windows...

Eight years passed and I was still wondering! Various things has conspired against me, and I had never got the chance to write a true windows version.

Well, I finally started the process... and it is underway... albeit a tad slowly. I keep going through fits and starts but never really getting anywhere. I am frustrated by my lack of ability to bring this project to a logical conclusion, but I'm not overly worried. A good wind is all it will need...     

start of the game

looking back to the tower of the moon

When I started the project I had a few ideas on where I wanted WinLom99 to go... see goals but since I went public many things changed.

The project is now "The Midnight Project" which encompasses a number of separate things. My overall aim is to create an "engine" that can play both Lords of Midnight and Doomdark's Revenge. As well as these games, or scenarios as I now term them, the engine must allow for additional scenarios.

This is accomplished by the engine having all the features that both games require, but without limiting anything. 

To do this I first removed vast amounts of game specific code and data and created a scenario database that controls much of what goes on. Scenarios can then be changed by just altering the tables of data. Almost everything in the game can be altered easily. Secondly I have opened up the interpretation of the data and added extra data for further functionality. Some of this new data is not even used in the traditional scenarios... but allows for much more complex games.

The engine also allows for specific code to be written for each scenario. It achieves this by using C++ and allowing for much of the functionality to be overwritten. The scenarios are loaded as DLL's which effectively switch in or out scenario specific code.

Finally I have tried to allow for the engine not to be machine specific. I have achieved this be splitting it into two four separate parts. Software library functions, Hardware library functions, front-end and game engine.

map screen showing viewed locations

The theory is that the game engine only uses software library functions and itself. None of this should be machine specific. The front-end uses all the parts. This allows for individual parts to be changed dependent on machine but also allows for the front-end graphic interface to be changed but still play the same game without any re-coding!

The front end is just one way of representing the scenario. It interfaces with the midnight engine but never actually plays the game. The way the front end looks is dependent on the programmer. I see possibilities for Freeform 3d, Isometric, Text adventure, Top down board game... and many many more.

I will program the default front-end in order to produce the first two scenarios... and scenario designers who don't want to program front ends can use it to run there scenario.
The front end will also be configurable to reflect new features in new scenarios - ie: new graphics for characters, terrain etc...

The final piece of the puzzle is the Editor. Hopefully a user-friendly editor will allow for scenario designers to easily create their vision.


Notes and Announcements

Email Suggestions to me or send them to the mailing list

at night with the giants

fight information screen

Tower of the Moon

Hit Counter