Questions about mod capabilities

Post here if you need help getting started with Daggerfall Unity or just want to clarify a potential bug. Questions about playing or modding classic Daggerfall should be posted to Community.
Post Reply
User avatar
kingOfWyrms
Posts: 49
Joined: Fri Aug 07, 2015 3:46 am

Questions about mod capabilities

Post by kingOfWyrms »

So when I first discovered DFTFU, I went through the tutorials and made some amateur edits to some files to change the combat controls. I'm looking to update it to the new mod format, but I am not very experienced in coding, and am not sure what the capabilities of the mod loader are. Specifically, I'd like to know if it's possible to add new input controls, change the hit detection and attack properties, and how much these things would have to affect compatibility with other mods. Would I have to swap out DFU's base files for my own modified ones? Is there some way to change these areas without causing incompatibility with other mods that might touch said files? And is such a mod even possible with the system?

Thank you for any help you can give.

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

Re: Questions about mod capabilities

Post by Interkarma »

I would say many core classes will not be exposed to mod system for some time, and not at all in some cases. At present the mod system is best suited for new content and add-on behaviours (see existing mods like far terrain, grass, birds for good examples of what can work well). I'd consider changing something as fundamental as the combat and hit detection to be a code contribution rather than a mod.

I imagine modders are going to hit all sorts of limits this early in development. They will need access to parts of the code that aren't currently open, or will need to hook into events that don't currently exist. But the best way to stretch these limits is to get people creating stuff and grow mod capabilities along with the core. This has been going on at a smaller scale with the current round of mods and should accelerate over time.

It's important to manage expectations at the outset - but this is still very fertile ground with amazing possibilities. It just needs more time and toil to reach fullest potential.

User avatar
kingOfWyrms
Posts: 49
Joined: Fri Aug 07, 2015 3:46 am

Re: Questions about mod capabilities

Post by kingOfWyrms »

Hmm, that's too bad. Okay, I'll take a look at how the current mods work and see if I can come up with something to mod in. From what you've said, it seems changing existing assets is off limits/kinda difficult right now, so I'm assuming changing the crosshair with a mod isn't possible either, which was the other modification I made when I first found DFTFU. Guess I'll have to come up with something new!

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

Re: Questions about mod capabilities

Post by Interkarma »

It's best to take it on a feature-by-feature basis. If we use the crosshair as an example, the core code doesn't currently allow for swapping this image. However it's a fairly minor change to plug in that functionality and expose to the mod system. So here's the process when it comes to changing the core.

1. The modder proposes a change that needs something opened in the core.
2. A developer (or self-same modder if proficient enough) codes enabling change and issues pull request through git.
3. I review and accept pull request.
4. Modder can then complete mod and distribute.

It will largely depend on what the modder wants to achieve. A lot of things won't be possible right away, but will become so after some back and forth development.

This back and forth has already happened in some places, making possible mods like far terrain, grass, and enhanced sky. These are currently included with the code (in Game/Addons), but aren't part of the core and could be split out to a mod package. I'm hoping the creators will eventually make time to do this once the mod system launches.

To repeat: it's important to manage expectations. The mod system is a work in progress on top of a work in progress. Things will be broken and things won't work as expected. But there's already an enormous amount of potential. Things will evolve over time as early adopters get stuck in and push the limits outwards.

Post Reply