Skip to content
This repository has been archived by the owner. It is now read-only.
Go to file

Depracation & Replacement

I am sure the few people who have looked at this repository have noticed that I have not made any commits in quite some time. The XL Engine, as it was previously known, has been retired. Development of the XL Engine had dropped off due to other "real life" commitments and a lack of time (and sometimes ability) to continue. Fortunately Daggerfall and Blood have high quality ports/projects that have carried on and given people a much improved experience, similar to what the XL Engine was trying to achieve.

To be clear, this project has not been updated in years and will not be updated in the future - though some of the code will find its way elsewhere.

Since those days (years ago now), things have changed drastically. The original idea behind DarkXL, which eventually led to the XL Engine, was never completely abandoned and a new project has been in development for a while that is more focused and better designed to achieve my original goals. I'm being intentionally vague because I want to deliver rather than promise and the project is likely still a few months out from a formal unveiling (and yes it will be open source from day 1).

I notice that some people still star this repository and fork it from time to time, even now. That is what prompted me to post this update so people don't waste their time. I will leave the original text in place for 'historical' value.


The XL Engine provides support for first person DOS-era games running on modern operating systems such as Windows 10. The first Beta release will support the following games:

Dark Forces

Source ports are a great way of keeping games such as Doom and Duke Nukem 3D working and even being enhanced on modern systems. While the XL Engine may support games with source available in the future, its primary goal is to support games with no source released with "source port accuracy." Many great older games may never see a source release but they still deserve to be preserved and enhanced.

The XL Engine is designed to be easy to use, easy to play the supported games on modern systems. It handles modern GPUs, varying refresh rates, high resolutions with high performance. In the future, the engine will add support for easy modding and easy multiplayer support for those games that support it (such as Blood). In the future this will include built-in tools, including scripting and reviving the DarkXL sector editor so that games such as Dark Forces and Blood can be modded with modern tools.

However this is only an engine, no games are bundled with the application. Games need to be legally acquired before they can be played using the XL Engine. The good news is that Daggerfall is now free and can be downloaded from Bethesda or using Daggerfall Setup. Blood and Dark Forces are available for purchase from and Steam.


This project has been depracated. Beta 1 is still in progress and is not yet available for download. Older builds are avaiable on the XL Engine website, however they are incomplete and buggy. I would suggest waiting for the Beta 1 release before downloading.

Short Term Roadmap

Milestone Content
Beta 1 the initial release, all the games previously stated should be working at 100% with the exception of multi-player. As stated before only software rendering will be available but higher resolutions will be supported.
Beta 2 the OpenGL 3.2 device should be implemented and true 3D hardware rendering support added – basically Daggerfall will surpass previous builds visually in addition to being gameplay complete.
Beta 3 the “Unified Sector Theory” release – perspective correct hardware rendering for 2.5D games. At this point Dark Forces should surpass the current build visually in addition to being gameplay complete.
Beta 4 will add support for additional platforms – Linux and OS X.
Beta 5 the "Multiplayer" release - add multiplayer framework and support for certain games (such as Blood).


XL Engine



No releases published


No packages published
You can’t perform that action at this time.