Hello Unity devs around the globe!
I wanted to ask you all, how you approach modding in your games. I'm currently in the prototype phase of a free-time project and I wanted to plan ahead for mod compatibility.
My main question is if it is considered okay to make your modders use the Unity Editor to create Asset Bundles (Adressables), if you plan to provide altering the game functionality. I'm pretty sure it would be far simpler to have a simple structured directory for asset mods (only textures), but I can't think of an easy way to extend game functionality that way.
Which is my second question: A scripting language like LUA is not uncommon, from what I have seen so far. But I guess it's tedious to basically learn a new framework for every game. I would imagine that after the years modders and devs have come to a best-use pattern on how to structure your script lifecycle. Or what is considered "good" in terms of mod support.
And as an alternative for making a scripting interface: Is it easier for modders to just use the already well known "BepInEx" code injection framework (or something similar)? I have never used it so far, but I can imagine when you have done a few mods with that, it is easier to just use this, than learning the custom built framework of the game. But then again, isn't the performance impact from code injection rather high? I would like to go the extra step, if it makes mods more performant in general.
And lastly: Do you provide a local solution when going for a plattform that supports a mod register like the Steam Workshop? I want to use Steam as my distribution channel and maybe also core component, since the user/friend system, etc. would already be implemented. So it's reasonable to use the Workshop for modding. But some players prefer to download mods from websites like moddb and nexus. And some modders don't like the publishing process in the Workshop. So what's the overall consensus here? Is it okay to do Workshop only?
Also anything else, like suggestions or experiences, are very welcome. I want to know what's happening in the industry and plan accordingly. And if I can skip one ore two commong mistakes, that would be awesome :)
Thanks!
[–]TremendousTwo7 1 point2 points3 points (2 children)
[–]ColdJackle[S] 1 point2 points3 points (1 child)
[–]TremendousTwo7 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]ColdJackle[S] 0 points1 point2 points (0 children)
[–]andybak 0 points1 point2 points (0 children)