Ultima 6 ... recoded for Windows
(developement stopped years ago)
Some years ago I tried to play U6 under WinXP, it took me a while
to make it run correctly. In the mean time, I started to investigate U6 files in order to
rewrite the game in a recent language. Ouch ! Was it just in order to
minimize disk and memory space, or rather obfuscation ? Most of the files were
LZW-compressed, packed, with shuffled bits !
Surfing the internet, I found other people having the same interest in U6 files formats. Some of them had done their investigations several years before me, with a lot of interesting results that I re-used in my own work (links to their sites).
I chose Java for my first attempt to recode U6, but the result was disappointing (slow frame rate). So I ported it in C++/DirectX.
The last version included features like :
But I gave up while trying to recode the dialogs, because I couldn't decode all the "control bytes" included in the dialog files (usecode).
Therefore the following features will never be implemented (I definitly stopped the developments) :
Here are some screenshots of the C++ version.
For people interested in U6 resources, I extracted data from the original U6 files : the in-game bitmaps (introduction, portraits, item tiles, ground tiles), and also builds the whole world maps. It also produces text files for the dialogs, the books and signs, the description of grounds and items, etc...
... And yes, I know that similar files can be found on other fan-sites since the 1990's
*** SPOILER*** - The world maps :
Due to technical limitations, Britannia map has been divided into 2x2 pieces (you'll have to download each part separately).
Each sub-bitmap is 8192 x 8192 pixels: The whole map in only one bitmap
(half res: 8192 x 8192):
NEW The whole map in only one bitmap
(full res: 16384 x 16384) (227 MB !) :
Some viewers will struggle to display such a big bitmap,
especially if your system doesn't have enough RAM...
The other levels (dungeons and gargoyle land) are smaller and then could be rendered to one bitmap each :
Dungeons - Level 1 Dungeons - Level 2
Dungeons - Level 3 Dungeons - Level 4
Realm of the Gargoyles
If you find errors inside these maps, please email me.
*** SPOILER*** - 3D maps :
I generated the 3D levels (Britannia, dungeons, Ambrosia) with what was supposed to be a basic algorithm, which finally appeared to get more complex than expected.
I had fun adding a few simple meshes instead of 2D sprites, with self-made textures. I won't complete this work because I don't have enough time to, but the result is realistic enough.
Text files :
The portraits of NPCs :
The items tiles :
Introduction bitmaps :
NB : below are only some of the most interesting pictures, you can download all the bitmaps here
Misc (some in-game bitmaps) :
(download these bitmaps)
The mouse cursors :
(download the cursors)
Pseudo-3D linked dungeons levels :
I generated pseudo-3D meshes for the 22 dungeons. The output files are in DirectX ".x" format, so you'll need a x-file viewer to visualize them. I personally use "Deep Exploration" (Right Emisphere) instead of Microsoft DirectX Viewer (which doesn't support transparency very well).
For instance, below is an overview of "Dungeon Hythloth", with an entrance in "Avatar Isle" (at level 0), and another entrance in the "Realm of the Gargoyles" (at level 5) :
Another overview : the "Pirate Cave", with several down-only holes (in red) between the levels 3 and 4 :
Download the x-files here (15 MB)
JP Morris (Doug the Eagle) : U6 developer's Tool Bartholomew J. Melnicki ( rackne) : Maps, Engine, and Decoder for U6, Martian Dreams, and Savage Empire Marc Winterrowd (nodling dragon) : Ultima Tech info and Patches Xenerkes : Ultimatrix : an Ultima map viewer, and a useful LZW-decompressor Jim Ursetto : pu6e (Python Ultima6 Editor)
DosBox emulator : DosBox