Reverse-engineering the 1998 Ultima Online demo server
5 hours ago
- #retro-computing
- #MMORPG
- #reverse-engineering
- A full reverse-engineering of the 1998 Ultima Online demo server has been released after 10 years of intermittent work.
- The project involved disassembling about 5,000 functions from the MSVC x86 binary and translating them into portable C99 code.
- The demo server code originates from the production server of mid-1998, with some features stubbed and the playable map limited to the island of Ocllo.
- Methodology included manual translation of functions to C99, verification by re-disassembly and comparison, and early focus on correct class hierarchy.
- Findings include fixes for bugs, reactivation of broken systems like spawn and ecology, and addition of new features with configurable options.
- Support has been extended to multiple client versions and encryption mechanisms, and the default build now targets 64-bit while maintaining compatibility.
- The author seeks original server files like dynamic0.mul to further enhance the accuracy of the world content reproduction.