I can't wait until the game finishes and this gets to a decent place. Any ideas about the player animations? It's pretty obvious players weren't meant to see the model, but that's a bit glaring.
Like scope said let the devs do what the wanna do for multiplayer let them decide because I want the to fix the bugs first then they can release the update for Xbox one thanks developers for putting the game on the Xbox one
@sunrunner Could I help with this? I know the code is on GitHub, but I don't really have much coding experience, though I could probably do some odd polishing. Where would you want me in helping? Sorry for asking like this, but I never think I am doing the right thing.
I can't wait until the game finishes and this gets to a decent place. Any ideas about the player animations? It's pretty obvious players weren't meant to see the model, but that's a bit glaring.
How does the mod handle the player models? I'm always slightly disturbed when I use FREECAM and I leave my headless body behind. Is it really that troublesome to animate the head? I know it's there, when I see his bouffant hairdo casting a shadow normally. Or is there an alternative explanation... when you FREECAM, the head is really the camera itself, so there's this emotionless disembodied head spying on everyone in the ocean...
I can't wait until the game finishes and this gets to a decent place. Any ideas about the player animations? It's pretty obvious players weren't meant to see the model, but that's a bit glaring.
How does the mod handle the player models? I'm always slightly disturbed when I use FREECAM and I leave my headless body behind. Is it really that troublesome to animate the head? I know it's there, when I see his bouffant hairdo casting a shadow normally. Or is there an alternative explanation... when you FREECAM, the head is really the camera itself, so there's this emotionless disembodied head spying on everyone in the ocean...
It's always hidden except for camera drones.
Adding the head back for freecam would be simple but they never really needed it since it's a debug command.
The devs said very clearly in the Multiplayer thread that doing something like this (adding multiplayer) was so much work that it would be basically like rebuilding the game from scratch. How is it that you're able to achieve all this then? ...... correct me if im wrong but you're alone, right? You dont even have a dev group working on this yet you're doing amazingly well. Huge kudos to you sir
The devs said very clearly in the Multiplayer thread that doing something like this (adding multiplayer) was so much work that it would be basically like rebuilding the game from scratch. How is it that you're able to achieve all this then? ...... correct me if im wrong but you're alone, right? You dont even have a dev group working on this yet you're doing amazingly well. Huge kudos to you sir
Getting basic 'multiplayer' working is pretty easy. It's when it comes down to checking on each machine where a fish is, how fast it's going. Which player's machine is in charge. Base bits, contents, serialization. Animation states & syncing across multiple machines or players, fish, enemies, projectiles, objects. Quite a big list.
In other words, the basics of moving something around is easy. The last hard parts are very hard. And it's that which will take a long time (but also make the game worthwhile). If all you want is a seamoth racing mod, that should be do-able. If you actually want the full Subnautica experience in co-op, that's going to be very hard.
The devs said very clearly in the Multiplayer thread that doing something like this (adding multiplayer) was so much work that it would be basically like rebuilding the game from scratch. How is it that you're able to achieve all this then? ...... correct me if im wrong but you're alone, right? You dont even have a dev group working on this yet you're doing amazingly well. Huge kudos to you sir
I know very little about programming and coding, so maybe @0x6A7232 or @nesrak1 can explain it better. By my understanding having UWE code the game to properly handle multiple players in a persistent world (others' actions affecting each other, resources and inventories being updated properly, etc.) would require a new game engine designed for it, as our game we play now was conceived and designed for single-player only. Some games, such as the N64 GoldenEye 007 has two different game engines; one for single-player and a different one for multiplayer. This isn't always the case, but a lot of PC and console games operate in a very similar manner.
What @nesrak1 and @Sunrunner have achieved in doing - and again I apologize if I don't have the details right - is basically they're using a 3rd party platform that essentially links up multiple players' Subnautica data files and exchanges the proper data on the fly. This is an amazing technical feat on its own, as the game wasn't really designed to be played that way at all. If Player A picks up a Metal Salvage in their host game, it's removed from the world in Players' B C and D game world as well. If Player C builds a MP Room, it shows up in the other 3 players' world also. They're able to make this happen due to how the necessary data files are changed across everyone's games.
The reason the devs stated before that it would require a new engine is because just that - you can't make drastic changes to the game's existing code without causing serious issues. As impressive as the multiplayer mod is, it's still tying multiple single-player game systems together. It's not officially supported, as a host of issues could happen: desynchronization across the network/internet, corruption of data tables that can compound problems as time goes on, even causing lag/memory latency/game crashes due to trying to maintain this data as players progress the game. I'm sure the story mode could cause issues at least, since one player unlocking event flags will save for other players as well, without them even having triggered the unlocks in the first place and then rendering their storyline unplayable.
Now I'm not saying all this to insult the work the modders have been doing, or make complaints - I'm really happy they have been able to make the progress as much as they have! You guys rock! I'm just trying to point out why they've been able to do what the devs haven't "been able" to. I know the devs would love to give us multiplayer, but there's just too many technical hurdles to overcome before it becomes a practical reality.
The devs said very clearly in the Multiplayer thread that doing something like this (adding multiplayer) was so much work that it would be basically like rebuilding the game from scratch. How is it that you're able to achieve all this then? ...... correct me if im wrong but you're alone, right? You dont even have a dev group working on this yet you're doing amazingly well. Huge kudos to you sir
Getting basic 'multiplayer' working is pretty easy. It's when it comes down to checking on each machine where a fish is, how fast it's going. Which player's machine is in charge. Base bits, contents, serialization. Animation states & syncing across multiple machines or players, fish, enemies, projectiles, objects. Quite a big list.
In other words, the basics of moving something around is easy. The last hard parts are very hard. And it's that which will take a long time (but also make the game worthwhile). If all you want is a seamoth racing mod, that should be do-able. If you actually want the full Subnautica experience in co-op, that's going to be very hard.
The devs said very clearly in the Multiplayer thread that doing something like this (adding multiplayer) was so much work that it would be basically like rebuilding the game from scratch. How is it that you're able to achieve all this then? ...... correct me if im wrong but you're alone, right? You dont even have a dev group working on this yet you're doing amazingly well. Huge kudos to you sir
Getting basic 'multiplayer' working is pretty easy. It's when it comes down to checking on each machine where a fish is, how fast it's going. Which player's machine is in charge. Base bits, contents, serialization. Animation states & syncing across multiple machines or players, fish, enemies, projectiles, objects. Quite a big list.
In other words, the basics of moving something around is easy. The last hard parts are very hard. And it's that which will take a long time (but also make the game worthwhile). If all you want is a seamoth racing mod, that should be do-able. If you actually want the full Subnautica experience in co-op, that's going to be very hard.
I understand this @Obraxis . doing the game as you envision it but most importantly to a degree you'd consider equal in all shape and form to your game as it is in single player would surely be a very long process am i sure of this. But really, just take a look at what this guy as achieved all by himself in such a small amount of time (granted its probably a few months but thats rather small in terms of game-making schedule) and ya gotta admit the dude is very talented.
From what i read of the official words of the Devs in the Multiplayer thread i was under the impression that doing any kind of Multiplayer for Subnautica, wether it be built inside the game or added as a mod, would be so hard now that the game is almost done in a Single Player way that it was unthinkable to see it in any near future. What blows me away is the fact he's achieved all of this progress alone, too. Trying to imagine what kind of progress he could do with 1-2 person as talented as him working with him ..... the mod could be close to done or even completed before/around official release date (wishful thinking? maybe lol)
The devs said very clearly in the Multiplayer thread that doing something like this (adding multiplayer) was so much work that it would be basically like rebuilding the game from scratch. How is it that you're able to achieve all this then? ...... correct me if im wrong but you're alone, right? You dont even have a dev group working on this yet you're doing amazingly well. Huge kudos to you sir
Getting basic 'multiplayer' working is pretty easy. It's when it comes down to checking on each machine where a fish is, how fast it's going. Which player's machine is in charge. Base bits, contents, serialization. Animation states & syncing across multiple machines or players, fish, enemies, projectiles, objects. Quite a big list.
In other words, the basics of moving something around is easy. The last hard parts are very hard. And it's that which will take a long time (but also make the game worthwhile). If all you want is a seamoth racing mod, that should be do-able. If you actually want the full Subnautica experience in co-op, that's going to be very hard.
I understand this @Obraxis . doing the game as you envision it but most importantly to a degree you'd consider equal in all shape and form to your game as it is in single player would surely be a very long process am i sure of this. But really, just take a look at what this guy as achieved all by himself in such a small amount of time (granted its probably a few months but thats rather small in terms of game-making schedule) and ya gotta admit the dude is very talented.
From what i read of the official words of the Devs in the Multiplayer thread i was under the impression that doing any kind of Multiplayer for Subnautica, wether it be built inside the game or added as a mod, would be so hard now that the game is almost done in a Single Player way that it was unthinkable to see it in any near future. What blows me away is the fact he's achieved all of this progress alone, too. Trying to imagine what kind of progress he could do with 1-2 person as talented as him working with him ..... the mod could be close to done or even completed before/around official release date (wishful thinking? maybe lol)
My mind is officially blown.
The complexity arises from having to re-write significant portions of the game code so that it will play nice and do what it's supposed to in a multiplayer scenario.
Getting multiplayer right is hard and does require the game to be built for it from the ground up. Just consider a few of the added questions that the now-distributed game engine has to solve correctly on all machines, both technically and gameplaywise:
What happens when 2 or more players grab for the same fish or other item.
Which player does a beastie goes after.
What happens when multiple parts of the shared map are loaded on different machines when the base game only records leviathans and removed resource nodes beyond a certain radius around the player.
What happens when one player griefs another.
And making 2 or 3 players play together is one thing. It's likely that the load, both on the machines and the network, goes up exponentially with the number of players. Star Citizen made a lot of mistakes in its multiplayer design. As far as I know, they still can't reliably run a shared environment with more than ~8 players and often breaks with less (although this might have changed, even though I bet SC is still full of bugs). Avoiding that requires careful design work from the start.
Can you imagine what would happen if UWE said "Subnautica has multiplayer. For up to 3 players." Consider how much difficulty people still have with lag single player. I can easily see why UWE has decided to stick with single-player for this game release.
UWE doesn't want to be known as the next Hello Games.
The devs said very clearly in the Multiplayer thread that doing something like this (adding multiplayer) was so much work that it would be basically like rebuilding the game from scratch. How is it that you're able to achieve all this then? ...... correct me if im wrong but you're alone, right? You dont even have a dev group working on this yet you're doing amazingly well. Huge kudos to you sir
Getting basic 'multiplayer' working is pretty easy. It's when it comes down to checking on each machine where a fish is, how fast it's going. Which player's machine is in charge. Base bits, contents, serialization. Animation states & syncing across multiple machines or players, fish, enemies, projectiles, objects. Quite a big list.
In other words, the basics of moving something around is easy. The last hard parts are very hard. And it's that which will take a long time (but also make the game worthwhile). If all you want is a seamoth racing mod, that should be do-able. If you actually want the full Subnautica experience in co-op, that's going to be very hard.
Well Ark survival evolved did it, though the dont nearly have so many entities in one server than subnautica
Ark did it at the price of any complex physics or AI behaviors (beyond a certain range they are frozen). It doesn't help the project is built on UNREAL ENGINE 4 which never shined with physics.
Forget the racing sim... I think the next goal for the Multiplayer Mod:
Let me play as.... the Reaper Leviathan!!
i was actually thinking of a racing mod with seamoths but you got stationary targets in the way like a few peepers or a few boomerangs or a stalker and later on a reaper. each thing you crash into is seconds added to your finishing time and everyone has to go through this gauntlet in the racing room.
reminds me a bit of midtown madness when i last played in MP ice ages ago.
Well Ark survival evolved did it, though the dont nearly have so many entities in one server than subnautica
Ark was built from the ground up to be a multiplayer game. Same way our last game, Natural Selection 2, was created to be multiplayer from the start (we are no strangers to making a multiplayer game).
However, with Subnautica's development, we expected it would be a much smaller project, and we weren't able to devote a large amount of resources to it, so we made the hard decision to make it a single player only game, which allowed us to take many shortcuts to speed up development. SN turned into a very successful game for us, and we were able to devote much more time and resources to it then originally planned, to flesh it out with more content, a whole storyline, etc. However, at that point the game was already built so heavily around there only ever being one player in the world, it is a large undertaking to rework many of the core systems to work for multiplayer, and devoting even 1 developer to working on co-op would have meant the core game we were trying to make would have suffered.
The work Sunrunner is doing is great, and they seem to be going about it the right way. First getting all the things in the game which don't currently stream out (the player, bases, vehicles) working with multiplayer. The real challenge is going to be dealing with all the things which do stream out, such as creatures as one example. There's a lot of tricky aspects there, such as the distance at which a creature spawns in and out. If your friend is swimming off in the distance and you can see them, and they spawn a Reaper, but it's beyond the distance where that creature would normally stream in for you, how does the game handle that? And that gets more complicated, with greater performance implications, the more players you add, all swimming around, streaming in their own creatures and world batches.
We fully support the effort Sunrunner is putting into this mod, and are as interested as everyone else to see how it turns out. But we don't have any misconceptions about how much work it is going to be to get a fully working and polished multiplayer version of SN done.
Comments
http://bfy.tw/Cl7F
And the mod being open source is also a great bonus !
Keep the good work
How does the mod handle the player models? I'm always slightly disturbed when I use FREECAM and I leave my headless body behind. Is it really that troublesome to animate the head? I know it's there, when I see his bouffant hairdo casting a shadow normally. Or is there an alternative explanation... when you FREECAM, the head is really the camera itself, so there's this emotionless disembodied head spying on everyone in the ocean...
It's always hidden except for camera drones.
Adding the head back for freecam would be simple but they never really needed it since it's a debug command.
Getting basic 'multiplayer' working is pretty easy. It's when it comes down to checking on each machine where a fish is, how fast it's going. Which player's machine is in charge. Base bits, contents, serialization. Animation states & syncing across multiple machines or players, fish, enemies, projectiles, objects. Quite a big list.
In other words, the basics of moving something around is easy. The last hard parts are very hard. And it's that which will take a long time (but also make the game worthwhile). If all you want is a seamoth racing mod, that should be do-able. If you actually want the full Subnautica experience in co-op, that's going to be very hard.
I know very little about programming and coding, so maybe @0x6A7232 or @nesrak1 can explain it better. By my understanding having UWE code the game to properly handle multiple players in a persistent world (others' actions affecting each other, resources and inventories being updated properly, etc.) would require a new game engine designed for it, as our game we play now was conceived and designed for single-player only. Some games, such as the N64 GoldenEye 007 has two different game engines; one for single-player and a different one for multiplayer. This isn't always the case, but a lot of PC and console games operate in a very similar manner.
What @nesrak1 and @Sunrunner have achieved in doing - and again I apologize if I don't have the details right - is basically they're using a 3rd party platform that essentially links up multiple players' Subnautica data files and exchanges the proper data on the fly. This is an amazing technical feat on its own, as the game wasn't really designed to be played that way at all. If Player A picks up a Metal Salvage in their host game, it's removed from the world in Players' B C and D game world as well. If Player C builds a MP Room, it shows up in the other 3 players' world also. They're able to make this happen due to how the necessary data files are changed across everyone's games.
The reason the devs stated before that it would require a new engine is because just that - you can't make drastic changes to the game's existing code without causing serious issues. As impressive as the multiplayer mod is, it's still tying multiple single-player game systems together. It's not officially supported, as a host of issues could happen: desynchronization across the network/internet, corruption of data tables that can compound problems as time goes on, even causing lag/memory latency/game crashes due to trying to maintain this data as players progress the game. I'm sure the story mode could cause issues at least, since one player unlocking event flags will save for other players as well, without them even having triggered the unlocks in the first place and then rendering their storyline unplayable.
Now I'm not saying all this to insult the work the modders have been doing, or make complaints - I'm really happy they have been able to make the progress as much as they have! You guys rock! I'm just trying to point out why they've been able to do what the devs haven't "been able" to. I know the devs would love to give us multiplayer, but there's just too many technical hurdles to overcome before it becomes a practical reality.
I want a racing mod now.
I understand this @Obraxis . doing the game as you envision it but most importantly to a degree you'd consider equal in all shape and form to your game as it is in single player would surely be a very long process am i sure of this. But really, just take a look at what this guy as achieved all by himself in such a small amount of time (granted its probably a few months but thats rather small in terms of game-making schedule) and ya gotta admit the dude is very talented.
From what i read of the official words of the Devs in the Multiplayer thread i was under the impression that doing any kind of Multiplayer for Subnautica, wether it be built inside the game or added as a mod, would be so hard now that the game is almost done in a Single Player way that it was unthinkable to see it in any near future. What blows me away is the fact he's achieved all of this progress alone, too. Trying to imagine what kind of progress he could do with 1-2 person as talented as him working with him ..... the mod could be close to done or even completed before/around official release date (wishful thinking? maybe lol)
My mind is officially blown.
The complexity arises from having to re-write significant portions of the game code so that it will play nice and do what it's supposed to in a multiplayer scenario.
What happens when 2 or more players grab for the same fish or other item.
Which player does a beastie goes after.
What happens when multiple parts of the shared map are loaded on different machines when the base game only records leviathans and removed resource nodes beyond a certain radius around the player.
What happens when one player griefs another.
And making 2 or 3 players play together is one thing. It's likely that the load, both on the machines and the network, goes up exponentially with the number of players. Star Citizen made a lot of mistakes in its multiplayer design. As far as I know, they still can't reliably run a shared environment with more than ~8 players and often breaks with less (although this might have changed, even though I bet SC is still full of bugs). Avoiding that requires careful design work from the start.
Can you imagine what would happen if UWE said "Subnautica has multiplayer. For up to 3 players." Consider how much difficulty people still have with lag single player. I can easily see why UWE has decided to stick with single-player for this game release.
UWE doesn't want to be known as the next Hello Games.
Let me play as.... the Reaper Leviathan!!
Like this: https://dev.bukkit.org/projects/disguisecraft?
Well Ark survival evolved did it, though the dont nearly have so many entities in one server than subnautica
Progress can be seen here:
https://trello.com/b/ftPCv2DL/subnautica-nitrox
i was actually thinking of a racing mod with seamoths but you got stationary targets in the way like a few peepers or a few boomerangs or a stalker and later on a reaper. each thing you crash into is seconds added to your finishing time and everyone has to go through this gauntlet in the racing room.
reminds me a bit of midtown madness when i last played in MP ice ages ago.
However, with Subnautica's development, we expected it would be a much smaller project, and we weren't able to devote a large amount of resources to it, so we made the hard decision to make it a single player only game, which allowed us to take many shortcuts to speed up development. SN turned into a very successful game for us, and we were able to devote much more time and resources to it then originally planned, to flesh it out with more content, a whole storyline, etc. However, at that point the game was already built so heavily around there only ever being one player in the world, it is a large undertaking to rework many of the core systems to work for multiplayer, and devoting even 1 developer to working on co-op would have meant the core game we were trying to make would have suffered.
The work Sunrunner is doing is great, and they seem to be going about it the right way. First getting all the things in the game which don't currently stream out (the player, bases, vehicles) working with multiplayer. The real challenge is going to be dealing with all the things which do stream out, such as creatures as one example. There's a lot of tricky aspects there, such as the distance at which a creature spawns in and out. If your friend is swimming off in the distance and you can see them, and they spawn a Reaper, but it's beyond the distance where that creature would normally stream in for you, how does the game handle that? And that gets more complicated, with greater performance implications, the more players you add, all swimming around, streaming in their own creatures and world batches.
We fully support the effort Sunrunner is putting into this mod, and are as interested as everyone else to see how it turns out. But we don't have any misconceptions about how much work it is going to be to get a fully working and polished multiplayer version of SN done.