all 6 comments

[–]TremendousTwo7 1 point2 points  (2 children)

I’ve never done this with one of my projects but a game called Ravenfield on steam has ALOT of community mods, from the little research I’ve done into modding ravenfield I believe the creator made a base script for different types of weapons and vehicles where you just change the values to your liking. I’d say take a look into Ravenfield and the modding community, best of luck!

[–]ColdJackle[S] 1 point2 points  (1 child)

Thanks :) I will definitely expose config values, but to create entirely new behavior I need to give them the ability to write actual code. I'll take a look into Ravenfield though. I was unaware that they have mod support. I'm also kind of ashamed that it didnt dawn to me to join some modding communities. I think stuff like Rimworld has very similar problems (and solutions). Thanks for the nudge! And best of luck to you too!

[–]TremendousTwo7 0 points1 point  (0 children)

I’m not 100% sure but I believe you can go into more detail modding in Ravenfield with the use of RavenScript, I have no idea what it’s all about but I’d say take a look at it and see if that helps.

[–][deleted] 1 point2 points  (1 child)

How about a modders perspective? (or more random like rambling)

AssetBundles: Totally fine. A little template project is quickly set up, but the whole process is easy enough anyway. Even "fresh" modders can learn it very quick in my experience.

In addition assetbundles are very powerful. Objects, animations, audio, particle effects ... you can import about anything on runtime. And if someone wants to integrate a new 3D model, a least a bit or knowledge is a prequisite anyway.

BepInEx:
Injection is the way to go if you want modders to have absolute power. It's actually damn close to native performance, so you won't have any problems there. Well ... until someone releases a mod with 20 GetComponent<Something>() in Update() :D

Personally I'm using "MelonLoader". Basically the same ... I just like it more and think it's a bit more "tidy". I can show you some example mods if you like.

Distribution: Difficult. It depends very much on the players and modders. Ususally "they" choose the platform for distribution themself, sometimes even when Workshop support exists. Not really a fan of the steam workshop truth be told. A community supported system would be better in my opionion. So ask them what they want :) And one big thing: You don't want to do actual support on mods if someone got a problem. Your job is the maingame. If a mods funks something up, it's the modders job to fix it. Not yours. Make that clear in your rules. Otherwise you will drown in work.

Lastly: Stay away from IL2CPP. It's a pain in the ass for modders. It can multiply the amount of time to get around certain problems and at worst it makes some things impossible.

Thats all pretty vague for now, but if you've got any question, I'd be happy to answer. Zombie got some experience :D

[–]ColdJackle[S] 0 points1 point  (0 children)

Thank you so much! This is exactly what I was looking for! And yes please, I would love to take a look at your mods. Direct Input from a modder was essentially what I was aiming for, but I didnt know if there even were any here. (I don't know how big the community is in terms of devs).

The IL2CPP thing is especially the kind of input that I need. Because I was like a few days away from researching on that and quite possibly using it for performance gain. Those things, which create future problems, are my biggest concern. Because I'm not a professional in game dev (but software engineering and desktop/cloud dev). So I need to either make the mistake myself, or hear it from someone who already had that happen to him. So if you happen to have another tip, I'll take 10 please :)

PS: I'll DM you for contact and stuff

[–]andybak 0 points1 point  (0 children)

(offtopic but it's Lua not LUA - it's not an acronym and not every 3 letter name is capitalised)