Daggerfall Unity March Builds

Welcome Back

Welcome to the first post of 2020! Over the last few months, our focus in Daggerfall Unity has been on bug fixes and refinement. This isn’t the most exciting time in a game’s life, but it is key to long-term success. Daggerfall Unity is now starting to feel more like a game well into a long beta rather than one freshly in public alpha. I’m in fact very confident we’ll be calling beta sometime this year, and it’s likely to be a short beta thanks to the time we’re spending now.

It’s incredible to think the main quest has been fully playable since 2017 and all classic gameplay features since July 2019. If this was any other game, we’d be beyond 1.0 and well into post-release support by this stage. But Daggerfall Unity isn’t just a game, it’s also a platform. This title is a superset of classic Daggerfall plus many more features not present in classic. I’m talking of course about quality of life refinements and mod support. This requires an extended development process well in excess of classic, because Daggerfall Unity is today a larger and more ambitious game than even classic Daggerfall was. That might not sound like much in 2020 compared to the wildly ambitious original way back in 1996, but it still represents a real accomplishment that everyone involved has brought this game so far and delivered on so much. For something that began with a single developer, this game has grown into a monster that only the combined efforts of dozens of people could have achieved. The fact we’re all doing this as unpaid volunteers in our own free time out of love for this game speaks volumes about how passionate this community is.

Before I get into the new features in current release, I wanted to recap some news from the last few months.

 

Daggerfall Unity Is On Nexus

In case you missed this one, we now have our own Daggerfall Unity page on Nexus. The number and quality of mods has been growing steadily and there are some real surprises in there. You should explore this page yourself to see the amazing work done by our community, but here are just a few highlights.

  • Quest Pack 1 – Hundreds of new quests offering stories and experiences not found in classic Daggerfall.
  • D.R.E.A.M. – New textures and materials to uplift the visual experience.
  • Handpainted Model Replacements – Replace many low-poly models and sprites with beautiful hand-painted 3D models.
  • Decorator – Place furniture, containers, lights, and even crafting stations into your home.
  • Archaeologists – A whole new guild of explorers with custom guild halls, quests, and items.
  • Roleplay & Realism – Advanced encumbrance, horseriding, usable bandages, and more will make your journey more challenging and fun.
  • Climates & Cloaks – Seasons and climates now matter to the player. Plan your journey and dress appropriately for the world around you.
  • Airships – Purchase your own airship to fly around the Illiac Bay, or just charter one for a journey.
  • Harvestable Crops – Gather plant ingredients for potion making from farms and other locations around the world.

It’s also worth mentioning the Nexus Vortex application supports Daggerfall Unity to help making downloading and installing mods as easy as possible.

 

Past Release Recap

Most of the updates since the last article in November 2019 have been bug fixes, but some new features have made it into the game as well. I can’t cover everything, but here’s a quick recap of some key new features:

  • World data replacement and variant system allowing for mods to change the world based on a quest or some other logic.
  • Many new quest actions for use by quest packs and mods.
  • Enable mods to add new merchant services.
  • Fire Daedra and Atronachs now emit light.
  • Improved support for formulae override in mods.
  • Magic item degradation now working for items when an “on held” enchantment.
  • Enemies now take fall damage.
  • Cemeteries now play creepy ambient sounds like classic.
  • Mods can override starting equipment and spells.
  • Better footstep detection to play more appropriate sounds based on surface player is walking on.

If you’d like more detail on recent patch notes, click through to the forum News area and read the summary posts from November 2019 (0.10.13) to February 2020 (0.10.20).

 

New Features

So what’s new in the March 2020 Live Builds?

Screenshots –¬†Thanks to new contributor jefetienne, you can now take screenshots anywhere inside the game using the F8 key. They will be saved to your persistent data path (same area as Saves, settings.ini, etc.) into a new folder called “Screenshots”.

If you want to disable the HUD for your screenshots, use Shift+F10 to toggle HUD visibility.

The screenshot keybind can only be changed manually at this time, but jefetienne is also working on the new keybinds UI that will allow some of these bindings not present in classic (so not on the classic keybind UI) to be changed inside the game.

 

Equip a bow in left hand only – Enabled from an option at startup, Hazelnut’s new feature tweaks equipment handling so you can equip a bow and a one-handed weapon at the same time. This makes switching between bow and melee much faster to give archer/melee hybrids that extra “edge” in combat when their enemies get too close.

This is what we call a click-saver QoL enhancement. It just saves you all the steps of going into inventory to swap between bow and melee and simply alternate between these weapons with the “swap hand” key (H by default).

 

General Fixes & Improvements

0.10.21 builds bring the usual payload of bug fixes and small refinements.

  • Improve keybind data handling (zaklaus)
  • Add version label to startup UI (jefetienne)
  • Open some UI class field protection to better support UI mods (Numidium)
  • Fixes to player object activation (Pango)
  • Further shader improvements to help fix “water everywhere” tiles for people with lower-end hardware (Pango)
  • Fix mobile orientation “blind spots” (Pango)
  • Prevent collisions between missiles (Pango)
  • Improvements to enemy pathfinding through doors (Pango)
  • Ensure scaling vectors are correctly initialised and improve serialization (Hazelnut)
  • Fix marker assignment availability in Orsinium to prevent quest item landing in void (JorisVanEidjen/Interkarma)
  • Do not allow rearm of EndQuest action to prevent looping performance drop (Hazelnut/Interkarma)
  • Allow replacement potion effects (Hazelnut)
  • Fix building data duplicating building name (Hazelnut)
  • More texture fixes to classic models (Ferital)

 

Coming Up

There’s some cool stuff coming up on the horizon. I’ve dedicated March to start building out the localization features more completely, jefetienne is working on initial gamepad support and new keybinds UI, and there are already more bugfixes waiting to approve.

We’re also getting very close to upgrading project to Unity 2019.4 LTS (once available) and switching over to a linear lighting model. The first change will update Daggerfall Unity’s engine baseline for the next couple of years, locking that version in for mod creators. The linear lighting change will unleash several subtle improvements to the lighting appearance in DFU, while related changes will remove the minor “material shine” users might notice when playing Daggerfall Unity with classic textures.

Once the localization features and new keybinds UI are locked in, I’ll shift focus back to the large HUD and the final few Alpha items remaining on the roadmap. We’ll be hitting Beta releases later this year and finally seeing the light of 1.0 coming up shortly afterwards. After almost 5 years in development, this wonderful journey is entering its final stages. Congratulations to everyone that has helped this game come so far. I’m looking forward to discovering what the future will bring.

November Builds 0.10.12

Live Builds have been updated to 0.10.12. This is another primarily bug-fix release, with one major new feature.

Class Questions (Numidium)

This is a feature from The Elder Scrolls 1: Arena that has carried over to other Bethesda games, including Daggerfall. Even the infamous G.O.A.T. in Fallout 3 is a variant of this system. During the class questions process, the player is presented with several ethical problems and a few alternate ways to resolve each situation. Each answer will weight player towards the Thief, Mage, and Warrior archetypes. Once the questions are completed, a class hopefully fitting your play style will be offered.

This UI is more than just an elaborate class selector. It provides hooks for the imagination to think about how you might roleplay your character once generated and plunked into the world. Thanks to Numidium, this feature is now fully implemented in Daggerfall Unity.

 

 

If you find it hard to see the darker portion of above animation on your device, Numidium created the following screenshot with false colours that make the archetypes easier to see. If you’ve played Skyrim, you might recognise these designs from the Thief, Mage, and Warrior Guardian Stones. It’s wonderful how the later versions of TES make little nods like this towards the earlier games.

 

New Release Schedule

I have a backlog of pull requests (pending changes) open on GitHub for review. Every change can take a lot of time to work through and test before merging into the monthly builds. This can mean simple fixes might take a few weeks to come out, or be held up while a larger change is still under review. Sometimes a change might get bumped to the following month just because there isn’t enough time to review it properly before end of current month.

Now so much of the game has been built out, I can’t see any reason to stick with a strictly monthly schedule. Rather than dropping a big release with many combined changes each month, I will start releasing new builds approximately weekly. If something minor is fixed, I’ll try to release a new build just for that change. This also has the benefit of making it easier to pin down new problems when the number of changes is fewer in each release.

On the Live Builds page, I will start retaining longer history of available builds rather than cycling out old builds once per month. If you encounter problems with a new build, you can roll back to the previous build until it’s fixed. I’m looking at retaining approximately 4-6 weeks of build history.

This also means a scaling back of the monthly blog updates. Unless something big is available to feature, I’ll use the forums to post incremental changes and save the blog for more interesting content. I will link future releases to change log as they’re posted to Live Builds page.

 

General Fixes & Improvements

The November builds have several other small fixes included.

  • Allow mods to change wagon weight limit (AsesinoBlade)
  • Fix opening quest log clearing residences from map (Nystul)
  • Use classic formula for Masque of Clavicus (Numidium)
  • Support for custom books is now stable (TheLacus)
  • Fix player falling through floor when entering certain buildings while mounted (Hazelnut)
  • Add console command “add_all_equip magicWeapons” to spawn all magic items for testing (Hazelnut)
  • Make spawned weapons identified (Hazelnut)
  • Fix issues wth replacement buildings (Hazelnut)
  • Fix 1gp quest reward (Hazelnut)
  • Fix rented rooms duration underflow (Pango)
  • Use webm videos on Linux (Pango)
  • Fix NullReferenceException in DaggerfallVidPlayerWindow.IsPlaying for loading screen (Pango)
  • Fix comment displayed in text block for quest C0C00Y10 (Jay_H)
  • Do not resist “caster only” self-cast spells, e.g. heals (Interkarma)
  • Do not reflect spells from caster onto self (Interkarma)
  • Fix Thieves Guild O0A0AL00 using local NPC for contact, causing a crash in some cases (Interkarma)

October Builds 0.10.9

Live Builds have been updated to version 0.10.9. This is primarily a bug-fix build, but a few new features have been added to the mix.

Edit: Builds have been updated to 0.10.10 to fix an intermittent issue with combat targeting.

World Data Overrides (Hazelnut)

This is a longer-term initiative empowering modders to edit and change the world itself by providing substitute game data on the fly. While this is still under development, substantial progress has been made and is available in Daggerfall Unity now. For an early example, the below crypt has a few customisations. I have copy-pasted Hazelnut’s words in the list below.

  • A third coffin – the centre one.
  • A fiery birdbath (or whatever you would call it) in the corridor outside the door.
  • A floating green pot which you can just see behind, a bit further down the corridor.
  • An Archaeologists sign! I needed to test new models would work, so just used the one provided by my guild mod.

Continue reading

September Builds 0.10.6

Live Builds have been updated with version 0.10.6. This release patches a massive number of bugs, and we still made time for some new features. I’ll provide a quick summary of the major stuff first.

Quest Lists (Hazelnut)

If you enable setting Advanced > Enhancements > Guild quest player selection, then guild quest-givers will offer multiple quests at a time, rather than needing to keep clicking “no” until you see a quest you like.

 

Quests will rotate every so often to give you a fresh selection to choose from. This feature also has thanks to Firebrand who entered all the quest display names.

Continue reading

Daggerfall Unity Alpha Release

The first Daggerfall Unity alpha release is now available on Live Builds. Since announcing this a few days ago, I’ve been honestly overwhelmed by the well-wishes and positive feedback from you all. Thank you everyone for your support, it means so much for a project like this. Your kind words help me to come back each day with a fresh heart.

So what does the alpha milestone mean? For Daggerfall Unity, this means we are now at broad feature parity with classic Daggerfall. Not only is the game playable from start to end, but all the core gameplay systems from classic are implemented and available. Hitting alpha means that development will shift from adding new gameplay features to refinement and fixing bugs. There are also a few features unique to Daggerfall Unity that I’ve been saving for the alpha cycle. Check out the roadmap to see what’s coming up next.

In some ways alpha doesn’t feel like a big deal. We were almost there in June with only a single enchantment effect and a couple of artifact effects remaining. But emotionally I feel that reaching this point really is a huge milestone. It represents the final stages of development are here at long last.

Continue reading

June Builds – Map Upgrades, Retro Rendering, Crime Features, and More!

New Live Builds are now available, combining all our work for month of June. We managed to get a lot done this month, even making a break into 0.8 with new crime features. Let’s start breaking it all down.

Improved Travel Map Search (Pango)

Some of the randomly named locations across the Illiac Bay can be challenging to search for. Either the name is very long like “Bleeding Redeemer of Kynareth” or just plain weird like “Old Barbyvyra’s Farm”, and players would sometimes need to switch back and forth between quest log and map screens before they could perfectly enter enough of the location name for search to work.

Those days are over with Pango’s most welcome upgrade to search in the travel map. Now you can just enter any part of the name, you don’t even need to spell it quite right, and the search will find all the closest matching locations. Look what happens when I mangle “Old Barbyvyra’s Farm” to just “barbv”.

 

First hit is exactly what I’m searching for, along with a reasonable number of other matches. If you enter enough of the name perfectly like before, the location will be selected immediately without showing the above UI.

Continue reading