Ultima VII, an RPG from the early 1990's, still has a huge following. But, being a DOS game with a very non-standard memory manager, it is difficult to run it on the latest computers. Exult is a project to create an Ultima 7 game engine that runs on modern operating systems, capable of using the data and graphics files that come with the game.
Now that Exult has reached release status, I've taken it upon myself to add a whole new level of functionality to the game engine. The original Ultima VII data files contained enough information to represent all possible game objects by their three-dimensional bounding boxes. Using this data, all of the 2D objects can be represented in 3D space as bounding boxes with parts of the original 2D sprite pasted onto the sides.
With the initial stage of pasting 2D objects onto 3D cubes successful, it became obvious that there was more work to be done. While some objects, such as walls, looked very good with the automatic representation as 3D cubes, other objects, such as trees, mountains and people, left much to be desired. It was clear that these would have to be remade from scratch. I implemented a system to use 3D models (in a proprietary, very lightweight format) in the Exult3D engine.
The initial framework for the replacement models is in place, and I have already completed several hundred models and textures for all sorts of items around the Ultima VII world. However, much work is left to be done - Hundreds of NPCs and various objects are left unmodelled. While these objects will still show up and be interactive in the game world, they look mediocre. I hope to complete the missing models sometime this year.
One other remaining area of Exult3D that needs work done is the rendering engine itself. The camera movement system is a bit clunky, and the renderer runs slowly due to how it is integrated with the Exult engine. Both of these problems have clear remedies, and I just need to find the time.
One of my favourite computer games has always been Origin's Ultima Underworld. There was (and still is) so much just right about this game. Its graphics were beyond exceptional for its time (Ultima Underworld came out before id Software's Wolfenstein 3D, and boasted more advanced graphics than DOOM). Not only did it have superb graphics, but graphics were not the game's strong point; a strong ambience and atmosphere was created very early on in the game. Like Ultima VII, the Ultima Underworld series presented an unparalled level of immersion into the game world that has not yet been duplicated by another game (in my opinion).
With these memories of the Ultima Underworld series firmly in mind, I set about creating something that could get somewhere near the atmosphere created by the original games, but with new technology and a fresh story. The result (which is under ongoing development) is turning out nicely so far. The Abyss is a game engine created entirely from scratch, with a focus on dungeon-crawling.
What sets The Abyss apart from other similar-looking systems is the focus on world interaction that it has. A custom physics, combat, and interaction system fuels an immersive environment in which anything can interact with anything else in logical, yet surprising ways.
Combat is a strong point of the system. Instead of being based on random hits and misses, and premade animations, it is based on an adaptive physics system that allows the player complete control over their character and their environment. Their will be more information on this once I get it completely implemented.



