Ultima V: Warriors of Destiny (Modernized Engine)
Produced by: ChangeNode (synthwave-pixel)
Website: Ultima V @ GitHub
Play Online: Ultima V @ GitHub Pages
The Windows installer for ChangeNode’s modernized engine for Ultima V. A portable version is also available.
The Apple Silicon .dmg (macOS 13 or later) for ChangeNode’s modernized engine for Ultima V. Intel Macs and those running older OS versions can use the browser-based build.
An AppImage of ChangeNode’s modernized engine for Ultima V.
A Flatpak build of ChangeNode’s modernized engine for Ultima V, with Steam Deck and SteamOS support.
The Android APK for ChangeNode’s modernized engine for Ultima V, made for handhelds as well as phones and tablets.
This project is a new TypeScript-based engine for Ultima V: Warriors of Destiny (1988). Like other fan-made engines for the Ultima games, it includes none of the original game files; it reads data files from a version of the game you already own (GOG’s Ultima 4+5+6 pack works). A web-based version is available, which runs in any current web browser and installs as an offline web app (keeping your game data local to your system). Standalone builds for Windows, macOS, Linux, Android and the Steam Deck are also available.
The default Modern mode adds:
- full gamepad support, with menus for nearly every action,
- Avatar creation and customization,
- a quest journal,
- auto-mapping and a world map based on the cloth map,
- snap combat and loot-all,
- translated runes,
- Modern, Apple II and PC tile sets,
- rebuilt music and sound,
- Modern, Classic and Story rule sets, with optional cheats.
Classic input, classic rules and the original 1988 graphics are still available. The game rules follow u5d, a reverse-engineered version of the DOS source, with bug fixes incorporated from the Apple ][ version of the game. The modern features and packaging follow ChangeNode’s own modernized Ultima III port.
ChangeNode built the port with the help of the Claude AI model. You can see a video detailing how he went about it on his YouTube channel.











































