So we havr an option for real time ingame right now where turns happen regardless of your interaction. Can’t we use the to play multiplayer?
Like i love the community and i cant think of a better way for us to build it higher than a an official ‘server’ we cpild all link into and show off doommobiles, loadouts and war between factions or do coordinated lab runs, it woild be a good excuse to greatly increase the difficulty of labs and such
The problem is that real time turns are a crucial part of multiplayer, but not the only thing necessary for it.
As far as I can see how the game is coded, it is basically suited for singleplayer only.
For example, I don’t see any networking code for it in place.
Also, the real time turn progression isn’t actually real time per se, as it still pauses the game and lets you interact with your inventory, even if you should be actually dead (for example, if you stand in midst of a zombie horde, you can rummage around your inventory forever, until you close it or use up an action and the game “catches up”).
If you want multiplayer, you’d have to rewrite large parts of the game and how it handles game elements, which at best takes months and at worst will take years.
I’m sure one day this will be tackled in one way or another, but not by one person over night.
To draw a picture: Imagine you have a text file on your computer. The changes you do to it are in real time (almost real time, but let’s not get lost in details) of course.
But how do you show it your friend over the internet? You can send it to him, sure, but if you change anything, he will not see that happen, as he just has a momentary copy. Despite cataclysm not even have a “send” function, it also needs an “load changes immediatly” function.
Even then, if your friend makes any change, you will not see that. So he has to send his changes as well. But what happens if you both edit the same part of the text file at the same time? There has to be a main decision maker (server) who processes everything and sends any changes made to you and your friend (clients).
However, at the moment, all instances of the game always think, they are the only decision makers. Or, in my little example, both text files on your and your friends computer think they are the original and will fight to death about which change now actually has value.
We first need to explain to the game (as in: programm it) that there are multiple of it, and all have to read from and send to only one single instance.
And that’s the hard part.
Sure as doomsday sounds hard. I feel as if multiplayer is a moot point beyond that group that was able to ‘kinda’ make a multiplayer server and how they did it still confudels me now.
Still can’t help but to romanticize the possibilty. I’ve already received things from the community I lusted over voraciously before like helicopters, and this me nested inventory system, which once it’s properly unfucked lol, will be extremely pleasant for me and my idiosyncrasies. Both of which I considered impossible so only time and the hard work of people that love this game will tell if we ever get a multiplayer system or game version. Currently my main desire is multi-z-level vehicles and more vehicle parts(which blaze industry is beginning to bring in.
Had a thought about this.
We have time and speed and everything in game, so we could use that system to prompt players to queue up actions that will happen after everyone has queued up and once one queued up action has been completed the game will pause and prompt the player with an empty queue to queue up another action for example.
I’m really fast so I ‘queue’ my character to take a step to the right. But my friend has a slow character so he prompts his character to step right as well. My character completes the action first and takes the step while my friend’s is still stepping and the game prompts me to make another move even though his has completed yet. And once I prompt it to take another step his step completes during my step since he was in the middle of his last step and it prompts him to make another action… I understand that this is a laborious way to play but we already have ways to automove, autocraft, and autofight.
There could possibly be an air follow option that you could queue up during travel or crafting so you don’t have to make any queues
There is no and probably won’t be ant network code in CDDA.
You can use http://watchcdda.net/ for “multiplayer”.
I’d just like to say, this project is still around:
One HUGE issue right there tho would be all it would take to completely stall the game for everyone is for one player to go afk or something and not queue his turn. It wouldnt matter anyways. There would need to be major wholesale re-writes of the codebase to allow multiplayer, nevermind a re-balance of mobs. It would be almost a totally different game really. Its usuallt not something you just tack on as an after-thought. Generally games are designed with multiplayer in mind from the start. Its fun to think about though I highly doubt it will ever happen.