DaggerXL is a Modern Daggerfall Engine Recreation for current Operating Systems and hardware – essentially it is a remake in the spirit of a port. It will ultimately fully emulate the game of Daggerfall and then optionally enhance it by refining existing features and adding new gameplay elements that were originally intended.

DaggerXL makes use of hardware acceleration providing higher resolutions, color depth, greatly improved visibility, better texture filtering, enhanced performance and more. In addition DaggerXL will support full modability, similar to more modern Elder Scrolls games, using custom tools.

The original Daggerfall data is used, so the full game is required. Custom mods can then be applied to optionally enhance the graphics, sound or music.

Visit the DaggerXL Blog for more information, screenshots, movies and more.
Join the DaggerXL Forums to discuss the project, make feature suggestions or just talk about DaggerXL or Daggerfall.
Visit the Downloads page to get information on the current build, including instructions for installation and use.

XL Engine Source Code released. I have not upload a license yet, there are still some details to work out. More info on its nature here.

Here is the GitHub link: github.com/luciusDXL/XL-Engine

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

Progress Updates

It has been about 2 weeks since my last update but I have not been idle during this time. I decided to scale back on the rate of updates for a variety of reasons but work is ongoing and I check the blog/forums regularly so feel free to comment or ask questions. In the future I plan on posting updates about once a week or so, though the time between updates may occasionally be longer or shorter.

Also remember that you can see the full sized images by clicking on the pictures, they are scaled down to fit the blog format.

edit- See also work on the scripting system and the follow up.

Decompiling

I have made good strides in the decompilation process, due to a variety of enhancements and fixes to my tools. Previously functions with multiple return statements or complicated flow control with dead code were problematic, resulting in sometimes non-nonsensical code, missing code or incomplete functions. The tool now properly follows the flow control and prunes unused code. Of course this results in functions were code is ordered based on when a branch was hit, so the resulting code must be reodered at the end of the process. Jumps with dynamic offsets are still problematic though, there is still more work to be done.

Next I fixed the “root function” determination code so it can successfully find “main” automatically. Previously I had to do it by hand which can result in errors. The unused function removal is now more robust.

Initialized static memory is now automatically mapped to the memory addresses used by the disassembled code, meaning that pre-initialized static data is now directly available. This is great for many reasons, including using the text referenced by the code to help identify the names and functions in many cases. This allows me to move a lot of the code to the correct files, so the structure of the source tree – in some cases anyway – can mimic what the original source might have looked like.

Unified Software Renderer

Recently I resurrected the software renderer I was writing for DaggerXL and start re-integrating it into the XL Engine. For the Beta 2 release, it will serve as a basis for the “unified 3D renderer” that can be used not just for Daggerfall but potentially other XnEngine games and for model-based elements of 2.5D games (such as Dark Forces). The “unified 3D renderer” will support both hardware and software rendering and – with the original code available – be able to functionally match the original visuals but with better performance for high resolutions and the ability to more easily add new features and fix bugs. Of course the original Daggerfall rendering will be available, at least until the new renderer can match it exactly (minus obvious bugs). Beta 1 probably won’t ship with this renderer but it will be available for Beta 2.

Below you can see some screenshots of Daggerfall using the cylindrically mapped sky and tweaked settings. Note that all of the 2D rendering has been disabled (weapons, UI, etc. – obviously not counting sprites in the 3D world). Also note that the rendering is not 100% correct but that will be fixed – including the wrong ground tiles being used, not a problem for the original renderer of course.

Build, Blood and the Newcomer

When working with the Blood code, one of the things I wanted to do was match up the decompiled source with the Build source in order to reduce the amount of work I had to do. I realized, however, that for best results I should test the Build source integration with something working and complete. So to that end, I added the first – and currently only – game that uses the original source code: Shadow Warrior. The purpose of this integration was as follows:
* Get something working with Build in the XL Engine.

* Start refactoring the code and getting it ready for Blood.

* Test the XL Engine functionality, including game life cycle, XL Engine services, sound, input and other systems.

* Have a complete experience to test with the engine and UI.

* Test the performance and memory usage with a complete game running.

When, in previous updates, I mentioned matching up Blood code with the Build code – I already had this working in the engine. In fact Shadow Warrior is 100% playable, including sound, music, controls, memory management and so on in the engine and has been for a month or two.

So why play Shadow Warrior using the XL Engine instead of an existing port? Honestly there aren’t really any compelling reasons, the existing ports do a great job. Of course I plan on changing this with future releases and in the future there will be more reasons to play Shadow Warrior on the XL Engine. Regardless it has helped me tremendously with the engine and Blood – so its a worthwhile addition even if no one actually plays it. :D That said, when it comes time to build the unified sector engine it will be very useful – like Blood it pushes the Build and adds Room over Room, drive able vehicles and other features.

This is a surprise I’m sure but, if things go well anyway, Shadow Warrior will not be the biggest surprise in store for the release.

As you can see, the UI itself has gone through some iterations since I last showed it. Of course any effects are optional and only work if you have a GPU capable of OpenGL 2.0 or newer (see the fullscreen view to get a better idea of what I mean). In addition sound effects have been added to the UI to improve the experience.

And some screenshots of Shadow Warrior in the XL Engine. As said above the port is complete and playable now. But I’m still going to hold off on releasing anything until the other games are ready.

Final Words

The XL Engine is progressing nicely and all of the features needed by the games are already implemented (as shown with Shadow Warrior). In the next update I hope to show screenshots of some of the other games in action. Finally here is the XL Engine Readme file that will packaged with the release (XLEngine.txt). In it is the copyright notice, description and credits. Take a look and let me know if I am forgetting anything, I want the release to go smoothly when it finally gets here. :)


Roadmap, Source Code and Progress

Roadmap, Source Code and Progress

News 5 comments

I have been asked for a time frame for the Beta 1 release and to gauge how far along the build is, as a percentage. I have decided to answer the questions...

XL Engine – State of the Project

XL Engine – State of the Project

News 6 comments

Interkarma has made large strides in his own Daggerfall work Daggerfall Unity. There are many reasons to continue DaggerXL and I have been building tools...

December 30, 2013 - The Story Continues

December 30, 2013 - The Story Continues

News 4 comments

I have resumed work on the DaggerXL Beta after taking a break for Christmas. I don’t have much new to show yet but I will talk about a few topics.

November 10, 2013 - Dungeon Blocks

November 10, 2013 - Dungeon Blocks

News

First, you’ll recall the texture assignment code I showed before for dungeons when explaining how random numbers were involved. In that function there...

Add file RSS Files
Daggerfall Soundtrack RemasterV1.1.1

Daggerfall Soundtrack RemasterV1.1.1

Music

A minor fix, i forgot an underscore in the track "song_gmage_3"

DaggerXL Version 0.199

DaggerXL Version 0.199

Demo 17 comments

Contains XL Engine Launcher, version 0.199 of DaggerXL and build 9.50 of DarkXL.

Version 0.198 Released - Bug Fix Build

Version 0.198 Released - Bug Fix Build

Demo 10 comments

Version 0.198 is mainly a bug fix build. One fun feature,though, is that random monsters are no longer just bears - though they still aren't correct.

DaggerXL Version 0.197

DaggerXL Version 0.197

Demo

The current pre-alpha version of DaggerXL - version 0.197. Please note that this is still a work in progress and that many features need to be implemented...

DaggerXL Version 0.195

DaggerXL Version 0.195

Demo 1 comment

luciusDXL made this, obviously. I'm just re-uploading it here because the other file server was going down a lot.

DaggerXL Version 0.181

DaggerXL Version 0.181

Demo

The current pre-alpha version of DaggerXL - version 0.181. Please note that this is still a work in progress and that many features need to be implemented...

Post comment Comments  (0 - 10 of 102)
ThE_Onee_WhOBrOKeAll
ThE_Onee_WhOBrOKeAll - - 56 comments

um mind if i ask that will the game have the same controls just like skyrim etc. since the daggerfall controls are weird and messy to me atleast.

Reply Good karma Bad karma+1 vote
redfain
redfain - - 151 comments

DaggerXL is dead in the water at this point. Check out Daggerfall Unity at dfworkshop.net. It's actively being worked on and has mod support. A lot of features are already fully implemented. At the current rate, it'll be done in no time.

Reply Good karma Bad karma+8 votes
A1rh3ad
A1rh3ad - - 30 comments

Im pretty sure this project is dead if not on its way out. Tbh it was dead before it ever really started. I was wishing it was going to be finished but I really didn't get my hopes up. Daggerfall is a huge game to tackle so I cant blame the people who worked on the project. The shame in it is getting peoples hopes up only to disappoint.

Reply Good karma Bad karma+2 votes
gofishc
gofishc - - 2 comments

DF Unity Exists

Reply Good karma Bad karma+2 votes
Andreson
Andreson - - 106 comments

xlengine.com Disappeared! Don't vanish. You're the last hope of a more playable Daggerfall.

Reply Good karma Bad karma+3 votes
gofishc
gofishc - - 2 comments

Daggerfall Unity

Reply Good karma Bad karma+1 vote
Guest
Guest - - 689,722 comments

This comment is currently awaiting admin approval, join now to view.

Guest
Guest - - 689,722 comments

i hope that this will be functional soon after hearing about openmw hearing that this is active again makes me happy i would love to playthrough daggerfall again but without the stupid midi music is there any way to allow this for the cd version of the game?

Reply Good karma Bad karma+1 vote
ivo0126
ivo0126 - - 5 comments

Guys, do i need the original daggerfall installed in order to play it in xl engine?

Reply Good karma Bad karma+1 vote
TheBlackshot
TheBlackshot - - 16 comments

Sure you do. Check the wiki page for the latest and best version.

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X