I have made some modifications to the next release as well as a bunch of new information about what’s going to be happening in the near term.
The release has not actually been made yet but it’ll happen tonight before I go to sleep. I’ll make another short announcement here and on the forums when the release is actually uploaded and available. I’m putting out this blog post now to save me time later.
The First XL Engine Release
Obviously this is not the first release for DarkXL or DaggerXL, but it is the first release since the process of merging the projects has begun. The following will be packaged in this release: XL Engine Launcher, version 0.199 of DaggerXL and build 9.50 of DarkXL. Currently DaggerXL and DarkXL are still separate executables, however they are packaged together and should be launched using the new Launcher. As you’ll read later in this post, they will no longer be separate executables in the next (post-merger) release. Now I’ll talk about each item, but before then I’ll talk a little bit about a change in philosphy and why these are “interim” builds rather then the promised version 10.0 (beta) and 0.20 (alpha).
To put it simply the amount of time spent on these projects is variable. Sometimes I get busy and sometimes a lot gets done quickly. When combined with big releases this can result in progress “lulls” where nothing appears to be getting done. It’s not true, of course, I work on things as I get time – but the perception of progress is lost. So I’ve talked about moving to smaller builds that would work toward the big milestones (such as 0.20, 0.30, etc.) but said that this would wait until after the merger. However as little issues come up, the large builds get delayed and so does the merging process. So I’ve decided to take action now instead of later and release interim builds – not everything is complete that I talked about and some stuff is disabled. But this will allow me to get the merger out of the way before working on more stuff (thus complicating the merger even more) and will a start to the post-merger way of doing builds.
The builds will no longer be hosted using the old “DivShare” method or using the old blogs. The Downloads page will be updated on this site, which will be the go-to place for new information and builds.
The goal is to move to a weekly build system, even if it’s just small features or bug fixes some weeks. I want to have a continual sense of progress rather then the “bursts of activity” that we have now. That is the only way to grow the project and I think will be a big improvement for everyone – including me. For DaggerXL, builds like 0.20, 0.30, etc. will be more polished milestones while builds like 0.199 will be interim builds that may contain incomplete features. But this is a work in progress, there’s no reason you guys can’t see these things in progress more.
The XL Engine Launcher
The old DXL_Settings.txt files are gone now. You will use the XL Engine Launcher to setup anything that currently cannot be set in-game, including things like game path and mod settings. The files it writes out are different, so if you try to run DarkXL or DaggerXL directly without using the launcher, you’ll get a message telling you to run it at least once. In addition, the launcher will verify that certain files exist in the paths that you specified and tell you if things are not setup correctly when you hit the “Play” button. It will also verify that OpenAL can be setup correctly and tells you if you need to update your OpenAL drivers.
Below you can see the launcher, click on the game picture to setup that game and alter it’s settings. Note this is a slightly outdated screenshot – I added support for enabling and setting up texture replacer mods as well.
Below you can see the various video and graphics settings for DaggerXL:
DarkXL Build 9.50
DarkXL will also be updated from version 9.08 to version 9.50. While the “bleeding edge” code still isn’t stable enough for release, this is an older – stable – version of the code. It isn’t as close to the Beta but does feature several features over the current 9.08 build, including:
- All the weapons implemented.
- Secondary fire implemented.
- Weapon Scripts implemented, with all weapons re-implemented using said scripts.
- Night Vision fixed.
- Fist impact sound on walls.
- Improvements to midi playback.
- Bug Fixes.
and more. ![]()
This build has also been modified to work with the launcher as discussed above. Note that secondary fire is hard-coded to ‘R’ temporarily until I add it the config dialog.
Note that if you want to play around with voxel models, this build supports the kvx format (the same as used in Blood). Not that useful for playing Dark Forces, but it’s there for testing. Here are the steps to place voxel models in the game (though they are not currently saved):
1) Create a Model directory in the same directory as the release is installed.
2) Place your kvx files into the model directory.
3) In-game, bring up the console using the ~ key.
4) type t_add_obj_3D modelName.kvx [yaw] where yaw is optional (defaults to 0). This places the model at the player’s position.
Some random screenshots of me using this:
DaggerXL version 0.199
So I’m still having some issues with version 0.20, so this interim build disables things that aren’t working if they are problematic. So not all the promised 0.20 features are there but they will come online after the merger, giving me more time to make a nice, polished Alpha release later.
Features that are there and enabled:
- All armor pieces supported with the exception of helmets. You can collect and equip them but they do not show up on the player “doll.”
- All weapon types supported except projectile weapons (bows).
- Weapon and armor materials are supported.
- The dungeon automap.
- Dungeon water – but currently only in a few dungeons, which I’ll list once the release actually goes out.
- Swimming skill, swimming controls, breath meter, drowning, etc.
- Leveling – though loot scaling and monster scaling are not yet properly handled (coming in version 0.20 still).
- Improved loot, though the full loot table implementation is still incomplete.
- Bug fixes.
Improved enemy support, random encounters, fixed dungeon textures, helmet rendering and full proper loot tables are still incomplete. Those will show up in the 0.20 alpha build.
Engine Merger
Starting tomorrow I will start working on the engine merger. I’ll present a list of things to know and what is going on:
Switch from DirectX to OpenGL
The engine will be cross platform so I’m switching to OpenGL in order to make things easier for myself. I already have a modern working OpenGL engine, so this should be fairly painless. This also means that all reliance on D3DX will be removed.
Support for advanced sector rendering, DaggerXL style polygon/terrain rendering and voxel rendering
Basically the engine will have support for multiple ways of storing and rendering scenes.
Single executable, multiple game support using scripting and dynamic libraries
The engine will support an arbitrary number of games, though obviously only the games already talked about right now. Many things, such as weapons, enemies and UI will be supported using the scripting system as “pioneered” by DarkXL.
Multi-platform support
The engine will initially support Windows, Linux and OS X.
In addition I will be implementing the missing rendering features needed to faithfully render BloodXL and OutlawsXL. When the merger release is made, it will include the first release for BloodXL and OutlawsXL support. It will obviously be pre-alpha material, but you should be able to run around all the levels and look around. Enemies and weapons will follow shortly afterwards. The DarkXL Beta and DaggerXL Alpha will follow the initial release. However I will be making incremental weekly builds at this point (when possible), so there may be more interim versions depending on how it goes.








Yes!
Wonderful to see some news again, Lucius. It all sounds great. Just be careful not to over exert yourself to get stuff out more periodically.
Ya ya, very nice, very nice.
This sure is exciting!
Thank you.
I’ve been following this project (well, DaggerXL) almost since its beginning, and I love the progress that it’s made. Great work, and keep it up! The legacy gaming community needs more people like you
Fantastic stuff. It’s great you’re moving to OpenGL so I’ll be able to play it in Arch!
Thanks for the all the hard work.
Long time follower of the proyect here. Keep up the good work Lucius
So Dark Forces has effectively complete gameplay now? Yeah! Although I can’t wait until I can use right-click for secondary, I have no idea how I found R natural on my old Mac.
I’m sure you’ve mentioned this before, but were you planning to do a source release at 0.20? I’m interested to see how you did the scripting system.
I was going to release the source when the Beta comes out but I really want things to settle down first so everything is good enough quality. So it’ll happen but I’m not sure when yet.
thank you Much for all the hard work!
Hey i am keeping track of this project since quite a long time. Mainly DaggerXL because in my opinion Daggerfall was last good game from Bethesda (yes Morrowind was hollow, Oblivion much worse than that…).
anyways amazing work, ive got nerdchills watching early builds of DaggerXL(oh the music, atmosphere) aand Dark Forces, Outlaws? jeez, cant wait to replay them on the new engine.
Im wondering though, how is it possible for one single man to take up with such a huge project? :>
It reminds me when Phillip K Dick acused Stanislaw Lem that he is probably a composite committee of communist writers rather than an individual, since he writes in several styles.
So confess “LuciusDXL”, i need names, contacts!!! ;>
aah j/k, great work, let the force (and determination) be with you
Nice…congrats. Can’t wait to introduce my son to Dark Forces …he loves Star Wars.
So I was wondering, with this “shared” executable, will that make functions from one game theoretically available in another? Could we some kind a frankenstonian Dagger Forces? Just curious.
Theoretically that would be possible, assuming you have assets for both games of course. I thought some sort of cross-game multiplayer could be interesting… but obviously anything that wacky is low priority compared to the serious support.
I’d love to see the features offered across all games. DaggerfallXL’s terrain and landscape abilities in DarkXL would be very entertaining. Endor anyone? =D
Outlaws would be pretty interesting to add some serious “desert” around the towns, just some thoughts.
Keep up the awesome (and inspiring) work Lucius! Exciting times ahead for sure.
Will the old-school view (deformations when looking up and down) be an option in the futur realeases? It feels strange when using the mouse.
Yes, you’ll be able to use the proper perspective view for looking up and down in the future as well.
Thank you!
I’m keeping a close eye on your efforts. Keep up the good work!
My friend told me that there is a version of daggerfall that can now be played on modern windows systems without DOSBOX or daggerl xl. Is this true?
Running the native Daggerfall exe on Windows without DosBox is a very “glitchy” experience, so if you don’t want to use DaggerXL I would highly recommend using DosBox. If you have trouble setting up DosBox, there is a handy installer that will setup DosBox for you and create an easy to use shortcut instead. But it’s still using DosBox under the hood. You can find the installer – DaggerfallSetup here: http://uesp.net/wiki/Daggerfall:Files
Ah, You are correct Lucious because my friend sent me the link and when i executed the executable file i could see Dosbox pop up briefly. While I am very excited for the new bethesda game Skyrim to arrive Im equally excited for the finished version of daggerxl. Thanks again for making this dream a near reality!
Awesome! Keep up the great work!
Love it!
I’m curious, is development still ongoing on these projects, or have they been abandoned?
If you want to see the latest updates, please visit the blog (this is an individual post):
http://xlengine.com/blog/