How do you read the base Daggerfall game?

Discuss modding questions and implementation details.
Post Reply
LongRoadAhead
Posts: 4
Joined: Sun Apr 08, 2018 5:21 am

How do you read the base Daggerfall game?

Post by LongRoadAhead »

I've been playing around with Daggerfall Unity and the tools to mod it therein (absolutely nothing substantial however, just occasionally dunking a bit of the landscape below sea level). It's been fun to learn, but now I've found myself with another pretty big question related to something I've probably got no idea about, but will state first that I'm cool with a very technical explanation:

How is the original base Daggerfall game (the one running in the XnGine) interact with Unity? Some stuff is directly read from it, but would it be possible to change the paths to what is read entirely, so all that is left is a neat engine that works as a modern XnGine?

I'm probably asking something stupidly ambitious and makes little sense. I apologize if everyone reading is confused. If the above makes no sense, I'll ask this: would it be possible to throw out the basic Daggerfall framework, and replace it completely with something else?

User avatar
Interkarma
Posts: 7236
Joined: Sun Mar 22, 2015 1:51 am

Re: How do you read the base Daggerfall game?

Post by Interkarma »

There are two main parts to the project:

Daggerfall Tools for Unity (a.k.a DFTFU) is the bridge between classic Daggerfall's game files and the Unity engine. It reads Daggerfall's binary files directly and converts data into new formats in memory at runtime. Sometimes this is really easy and other times involves a lot of transformation to get data into a format Unity can use.

Daggerfall Unity is the game itself built on top of DFTFU. This is where all the gameplay logic, user input, etc. takes place.

All of the XnGine games have different binary formats for textures, 3D models, and map layouts. The later-gen XnGine games like Battlespire and Redguard are substantially different from Daggerfall. There are some similarities, but they're variable enough that it wouldn't be possible to just drop DFTFU on top of any of the other XnGine games without a lot of additional work and reverse engineering. This is a very Daggerfall-specific project.

But if someone was able to reverse engineer the file formats of the other games fully, it would definitely be possible to use the same general concept to rebuild those games in Unity (or any other engine). And some of the work might also be directly transferable to save time in places.

Post Reply