[Dev Question]Is it ok for me to make a MP mod?
ElementalVenom
Lacrosse Wisconsin Join Date: 2016-04-14 Member: 215743Members
I'd like to practice my skills and create a multiplayer mod to share with the community, but I wanted to make sure it was okay first. There isn't an available Subnautica workshop yet, so I'd have to share the files through other means. I'd like to be able to allow the community to use this until your team has the time to create multiplayer themselves. I just wanted to check with you guys first so I don't cause any legal headaches for the team. Thanks!
Comments
Modding Subnautica would be great, we'd love to see mods (even though right now we don't support them). But Multiplayer would take our whole team around 6 months to a year of work, just for some perspective.
+1 for modding Subnautica I hope some day you well support modding, it has a way of extending the life span of a game, Skyrim and Arma 2 comes to mind.
Maybe creative mode could be used as mod editing mode. Creating a base for example and storing the base as part of the mod. Or using the Terraformer in this mode only and the changed terrain will get stored as part of the mod. Or this mode allowing to place plants on terrain.
If the builder menu could get access to more parts in this editing mode, more abondoned bases and wrecks could be placed with the builder.
I'm not really sure how I feel about Subnautica MP. It would be absolutely lovely to have the ability to survive co-op, or even to see and explore other players' creations. However, the map simply is not large enough to really support a true multiplayer experience in addition to the map being static. I see it being a viable possibility much further down the line, with more areas to explore and things to create.
I even see Subnautica joining a much larger universe of games involving being stranded on primitive planets. I would lose my head if Unknown Worlds created a progression system spanning planets while PC is trying to make their way back to civilization. So many rich possibilities.
It would be hard, but doable.
That said, you'd want to start off with lan two person co-op, and the grow that to lan mp, then grow that to server-client mp, rather than start with full client-server co-op.
I don't know what Subnautica's written in though, so I don't know if it's possible to recompile it in a predictable way, or even decompile it to something usable.
I'd also be concerned about legal problems with decompiling the program.
If I get some free time, and the devs don't mind, I might make this my first mod attempt. Should be fun.
(This is all theoretical for the moment - I'd have to do some looking to find out the possibility of this. Also the legality.)
Edit: I realise that this is not the best way to mod a game, our even a good one, but it's tyre only way I can think of at the moment. It would make mod's automatically incompatible, probably, but probably the best that could be done, without even more extensive and silly workarounds.
Modding support would be great, even if it's simple tweaking of values or changing where/how things spawn and whether they can RE-spawn. I feel predators should be able to get in on that as well, even if their 'timer' is much longer than prey fauna.
They know lots of people want mp and that they'd likely sell more copies with it. So if it was even remotely easy we'd have it.
Games developed for single-player tend to have a lot of very inefficient (from a networking perspective) processes in the background. PCs can handle that but it would be a monstrous bandwidth hog communicating it all over the net. And difficult to minimise lag.
You might be a tech savant and see some way to do it they hadn't considered. But more likely you'll see it's nowhere near as easy as you think.
Unity.
I can think of a few ways to do it that would work passably, but would only work for low count servers (2-4, with 4 being on the extreme end). Most likely the first iteration would be a boot-strapped MP, ala KSP mp mods: send all player inputs to the other clients, and let them figure the rest, and have re-sync pings every few minutes. It wouldn't be the easiest to run, and it's not the best performance, but it's (relatively) easy to tack on, and not horrific on bandwidth usage. They (probably) wouldn't do it this way because it has noticeable drawbacks if your ping is not great, and it doesn't look super polished. Overall, it's the difference between a hacked-in system and a built-in one. So it's not that they didn't consider it, it's that they considered it, and didn't want to give players a half-assed-looking mp that would still take months to make.
That's good to know, it gives me a starting point, though Unity accepts like 15 different programming languages. My guess is some variant on C, like C++ or C#.
Might be better than nothing, but wouldn't it mean that fauna would be in different places in everyone's games? So a reaper could be eating my face and I could be all panicking and screaming and my friends would think I've gone mad?
I'd not thought about that, yeah, the original client would have to send those events as well. Though the image is funny.
Sounds like space engineers multiplayer.
"Oh god, WTF" "what?" "the whole base just blew up!" "No it didn't" "were under attack!"