Skip to content

Repository files navigation

Deus Ex Extension.dll — Reconstructed Source

This repository contains an independently reconstructed source implementation of the original Deus Ex Extension.dll, produced through AI-assisted reverse engineering.

The project is intended for preservation, research, modding, compatibility work, debugging, and general study of the Deus Ex / Unreal Engine 1 native UI layer.

This is not an official Ion Storm, Eidos Interactive, Epic Games, or Square Enix source release, and this project is not affiliated with or endorsed by any of those companies.

Reconstruction

The source code was reconstructed from analysis of the original retail binaries and related technical information.

The reconstruction process used, among other things:

  • decompiler output;
  • disassembly / assembly code;
  • original and publicly available SDK headers;
  • exported Unreal class headers;
  • UnrealScript classes;
  • native function declarations;
  • runtime behavior observed in the original game;
  • comparison against the original retail Extension.dll.

A substantial part of the reconstruction was performed with AI assistance and then manually compiled, tested, compared against the original game behavior, and corrected through multiple iterations.

No leaked or proprietary original Extension.dll source code was used in this reconstruction.

The reconstructed code should therefore not be considered the original Ion Storm source code. It is an independently produced source reconstruction intended to reproduce the behavior of the original binary as accurately as practical.

Status

The reconstructed DLL builds successfully using the original Microsoft Visual C++ 6.0 / VC98 toolchain.

It has been tested in-game through at least the Hong Kong portion of Deus Ex without any currently known critical issues.

Several reconstruction errors affecting behavior and visual fidelity were discovered during testing and subsequently corrected.

Further differences from the original implementation may still exist.

Bug reports, testing, comparison against the original DLL, and improvements to reconstruction fidelity are welcome.

Build requirements

You will need:

  • Microsoft Visual C++ 6.0 / VC98;
  • Windows XP or Windows 2000, preferably inside a virtual machine;
  • a legally obtained installation of the original Deus Ex;
  • the required Deus Ex native SDK headers and import libraries;
  • access to the repository files from inside the build environment.

Native SDK files

Some files from the Deus Ex native SDK are required to build this source.

Take the Engine and Core directories from DxHeaders.zip and copy them to:

Extension\SDK\

Then take:

engine.lib
Core.lib

from DxLibs.zip and place them in:

Extension\SDK\Core\lib\
Extension\SDK\Engine\lib\

These files are not part of the reconstructed Extension.dll source itself.

My build setup

My Deus Ex development directory on the host machine was:

C:\Games\DeusEx_RTX\
C:\Games\DeusEx_RTX\Extension\Inc\
C:\Games\DeusEx_RTX\Extension\Src\
C:\Games\DeusEx_RTX\Extension\Classes\
C:\Games\DeusEx_RTX\Extension\Textures\

I shared this directory with a Windows XP virtual machine.

Inside the VM it appeared as:

Z:\DeusEx_RTX\

Then I opened:

Extension.dsw

from inside the virtual machine and built the project with Microsoft Visual C++ 6.0.

Batch files

Check the following files for build preparation and installation details:

_PrepareBuildDir_Extension.bat
_PostBuildInstall_Extension.bat

_PrepareBuildDir_Extension.bat prepares the build directory.

_PostBuildInstall_Extension.bat copies the resulting Extension.dll back into the Deus Ex installation.

You may need to edit the paths inside these batch files to match your local setup.

Virtual machine

My build environment uses VMware Workstation with a Windows XP virtual machine.

Other virtualization software should also work as long as it can run Windows XP or Windows 2000 and provides access to the Deus Ex development directory.

Original game requirement

This repository does not provide the original Deus Ex game.

A legally obtained copy of Deus Ex is required for normal use, testing, and comparison with the original implementation.

Original game assets are not intended to be redistributed as part of this reconstruction project.

Preservation

One of the goals of this project is to preserve technical knowledge about the native components of Deus Ex and make that knowledge publicly accessible.

The reconstructed source is intentionally published so that it can be studied, verified, corrected, modified, and improved by others rather than remaining dependent on a single private implementation.

The long-term goal is to make continued maintenance, compatibility work, bug fixing, engine research, and possible future ports of Deus Ex easier.

Disclaimer

This source is provided as-is, without warranty of any kind.

The reconstruction may contain inaccuracies or behavioral differences from the original binary.

Use it at your own risk.

Again, this repository contains an independently reconstructed implementation, not the original proprietary Ion Storm source code.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages