New Ultima Remake: Ultima 3 in Python


This is a remake of Ultima 3 being crafted using Python. It uses the .ULT data files from the PC version of the game, but both the engine and code are entirely new, built from scratch.

To date, several of the original game’s commands (e.g. LOOK, TRANSACT) have been implemented, and moongates work more or less as they should. Volume control for sound effects and music has been implemented, and the town of Dawn appears only when it should (e.g. during a new moon). The combat system is a bit rudimentary at present; battles are automatically won after a short time, as the party system hasn’t yet been implemented. However, this contrivance has allowed Duda to ensure that the encounter maps are working correctly, as is random monster generation. Similarly, whirlpools have been implemented on the seas, though at present they don’t swallow ships.

At present, Duda is looking to begin work on either the character creation sequence or support for dungeons. He would also like to hear from the Ultima fandom regarding how the spawning of enemies in the game should work.

As you might well expect, there’s also a new project entry for this remake here at the Codex.

2 Responses