Ultima IV map viewer

originally created for the blog post Imaginative Play

Ultima IV overworld


This program will load in data from the original Ultima IV (PC EGA version) and display the game's world map, in a pleasing "animated screenshot map" sort of manner.


Download the program here.

Download the original game data files needed here.

I didn't include these with the program itself to stay well clear of any potential rights issues. If the above link doesn't work, the easiest way to get the game data is to download the DOS version of the game from the XU4 project - direct link to the archive. The two specific files you need from that are WORLD.MAP and SHAPES.EGA.

Place the program in the same directory as those files, and run.

You can configure the screen resolution and whether or not the program runs in fullscreen with the included INI file.

If you're running the source Python script from SVN, you'll need the PyGame and PyOpenGL modules installed in addition to Python. I've only tested this on Python 2.5 and 2.6.

You can find that source and some of other projects on my google code project page.

Known Issues

The edges of the screen flicker a bit when scrolling. This is a bug left over from another project of mine that I lifted the map drawing code from. If I get enough emails from people saying they like this program, I'll fix it.

I've also noticed that the display flickers on some LCD screens because of the refresh speed and the high contrast color-on-black nature of the art and animation. I don't think there's much I can do about this, though if anyone has any ideas, I'm all ears.


The knowledge represented in the source code and documentation for the XU4 project - an open-source port of the original Ultima IV - was invaluable in making this.