Jump to content

KSP 2 Multiplayer Discussion Thread


Recommended Posts

18 hours ago, SciMan said:

This might not be a bad thing on a game where you have something like 100k simultaneous users (like a big MMO or something like Destiny 2). I would bet a large sum of money that KSP 2 will not have that kind of popularity.

In 'Dont starve together' , the way of multiplayer is ALSO focus on samll groups. And it just has about 50K simultaneous players. I just mean that multiplayer is the reason for more users, rather than the result of more users.

Something more important is the holiday even is compatible with small group multiplayer. The holiday event is just a temporary task  in multiplayer.

Link to comment
Share on other sites

After thinking for a long time how this could work the only idea that came to my mind where it could function is if all vessels were docked into one or that all players are inside one ship while time warping, but that wouldn't be very fun right? I really can't see how they will implement multiplayer and make it be fun at the same time.

Link to comment
Share on other sites

19 hours ago, gussi111 said:

After thinking for a long time how this could work the only idea that came to my mind where it could function is if all vessels were docked into one or that all players are inside one ship while time warping, but that wouldn't be very fun right? I really can't see how they will implement multiplayer and make it be fun at the same time.

Their are ways, however, I completely understand what you are saying. Honestly, I enjoy KSP as a single player experience. I won't even use multiplayer if it is not fun.

Link to comment
Share on other sites

I am insanely excited about KSP 2 multiplayer, to the point where it might be the feature I am most looking forward to. I want to build an "international space station" with my friends, with each of us contributing a module and docking them together. I want to have a space race, and see who can land on the Mun first. I want us to send missions to rescue each other's inevitably stranded Kerbals. I want to run a little orbital refuelling outpost, and see other players dock with it, knowing that I'm helping them complete their missions. If that "players-hiring-each-other-with-contracts" mechanic mentioned way back in this thread gets implemented, I very much look forward to playing around with that.

I also have a friend who really likes multiplayer games. They are nerdy as heck, and I think they'd love KSP, but they've explicitly told me that it being single player only (setting aside the fairly limited and sadly buggy multiplayer mods) is a big turn-off for them. I've already got them to promise that when KSP 2 comes out, they'll give it a try — if I'll play with them. :P

There's just been some negativity about the idea of multiplayer KSP in this thread, and I want to reiterate that absolutely not everyone here feels that way. I really, really want KSP 2 multiplayer to be a thing, and I am super excited for it. There's tons of ways I can imagine having fun with it.

Edited by Multivac
Link to comment
Share on other sites

On 1/28/2022 at 1:30 AM, gussi111 said:

After thinking for a long time how this could work the only idea that came to my mind where it could function is if all vessels were docked into one or that all players are inside one ship while time warping, but that wouldn't be very fun right? I really can't see how they will implement multiplayer and make it be fun at the same time.

A station acts as a single craft, every craft has a unique owner, only the owner of the craft can timewarp with it. 

In most situation the station is considered to be the stationary bigger one of the two crafts, for comparable crafts (Apollo-Soyouz anyone?) the "owner" of the docked crafts is chosen following some random parameter (mass, volume, crew numbers, anything would do).

For docking to occur both players have to be synchronized at the same time and give explicit permission.

The owner of a craft can undock his vessel for the station, and control his crew, everything else is controlled by the station owner.

A craft without owner will have to be reached for someone to take ownership.

Given that armed conflict is not a concern in KSP that's all you need to manage multiple people docking and using a common station, with a bit more refinement and a basic permission system you can do a lot more.

It doesn't take much to make up systems like this on the spot, and I'm definitely not a game designer, give the same problem to an experienced team and they'll come up with 10 solution in a couple of hours and maybe submit 5 of them for playtesting.

 

Link to comment
Share on other sites

1 hour ago, Master39 said:

A station acts as a single craft, every craft has a unique owner, only the owner of the craft can timewarp with it. 

In most situation the station is considered to be the stationary bigger one of the two crafts, for comparable crafts (Apollo-Soyouz anyone?) the "owner" of the docked crafts is chosen following some random parameter (mass, volume, crew numbers, anything would do).

For docking to occur both players have to be synchronized at the same time and give explicit permission.

The owner of a craft can undock his vessel for the station, and control his crew, everything else is controlled by the station owner.

A craft without owner will have to be reached for someone to take ownership.

Given that armed conflict is not a concern in KSP that's all you need to manage multiple people docking and using a common station, with a bit more refinement and a basic permission system you can do a lot more.

It doesn't take much to make up systems like this on the spot, and I'm definitely not a game designer, give the same problem to an experienced team and they'll come up with 10 solution in a couple of hours and maybe submit 5 of them for playtesting.

 

Yeah It does work when all players are together, but looking at what other people think, many of them want to independently explore different planets, and so far I can't see how that is going to work mainly because of time warp.

Link to comment
Share on other sites

2 hours ago, gussi111 said:

I can't see how that is going to work mainly because of time warp.

Asynchronous gameplay with catching up, tons of edge cases and potential for bugs but nothing that can't be solved with some clever designing and lots of playtesting. 

If they nail it you can manage to have people playing in a shared save just like they do in single player each player with their own space program, goals and objectives.

Link to comment
Share on other sites

5 hours ago, gussi111 said:

Yeah It does work when all players are together, but looking at what other people think, many of them want to independently explore different planets, and so far I can't see how that is going to work mainly because of time warp.

It really should be noted that this problem has already been faced, addressed, and solved — at least in one way — by mods like Luna Multiplayer and Dark Multiplayer. Players can time warp independently, but if a player is in your "future," you need to "catch up" with them — accomplished by clicking a single button in the Luna interface — before you can interact with their ships, say by docking one of your ships with theirs. "Catching up" simply puts you into time warp until your current date is the same as theirs. It's not always an ideal solution, no, but it worked — or, to be more honest, it worked except when bugs crept in, which was often. :P But, bugs are bugs; Luna is a mod that kludges its way towards making a single-player-by-design game multi-player instead; of course it will be buggy. If this same approach were implemented in KSP2 from the ground up, and worked smoothly, it'd be a perfectly valid solution to the problem.

Now, I'm not saying this "independent time warp + catch up" idea is the only, or even necessarily the best, way to solve the time warping multiplayer issue. I'm just pointing out that this isn't a new problem. It's one that has already been thought about, and at least one solution has already been not only dreamt up, but actually implemented and extensively played with by a team of KSP modders. It's not a brand-new thought, or a mind-blowing unsolvable challenge.

Link to comment
Share on other sites

1 hour ago, Multivac said:

It really should be noted that this problem has already been faced, addressed, and solved — at least in one way — by mods like Luna Multiplayer and Dark Multiplayer. Players can time warp independently, but if a player is in your "future," you need to "catch up" with them — accomplished by clicking a single button in the Luna interface — before you can interact with their ships, say by docking one of your ships with theirs. "Catching up" simply puts you into time warp until your current date is the same as theirs.

Wow that is actually very smart! I never thought about that.

Link to comment
Share on other sites

  • 4 weeks later...

Expanding on Luna's DMP and ideas read here and there, there could be 2 kinds of multiplayer modes.

The first one assume players collaborate with each other, and that space is big so that 2 craft never cross path at random, and it takes both craft to agree to meet for a meeting to take place.

There is a minimum time and a maximum time.

Each craft has a time attached to it, in addition to its position and velocity. This time corresponds to the last time this vessel was interacted with. It can only go up.

When launching a new craft, a player also chooses when it is launched (no sooner than minimum time). It can be done through timewarp from the KSC, including negative timewarps.

When flying a craft, its time advances so as to reflect the time you are flying it in.

When leaving a craft, its time freezes.

When taking control of an existing craft, you can choose when you take control of it (but no sooner than the time of the craft).

You are seeing other on-rail* crafts where they are supposed to be at the time of flight : a craft with a time inferior to your flight time is in your past, its future position can be predicted and plotted as a predicted ghost*; a craft with a time superior to your time-flight has its trajectory already determined, and can be shown as history ghost (ghost that can no longer be interacted with) l as long as the trajectory has been saved, which can be done by saving only change of SOI, and state at the end of each flight*. Future crafts that were on-flight during your flight are not shown, or in a special way, which does not need to save the actual flight portion (eg an interpolation between start of flight and end of flight). Such craft are shown on the map, but can also be shown in real, optional (in any case, they are on rail and physically transparent).

You can coordinate 2 or more crafts to be in your flight time. Necessary for rendez-vous and docking. It also loads them and starts calculating physics on them regardless of distance. Once you uncoordinate them or end the flight session, their time freeze much like with one craft.

Funds expense and revenue, Science recovery, reputation, building upgrade, kerbonauts recruitment, ... are all discrete events which are easy to store with the time they occurred at. Some care has to be given to ensure a present expense does not lead to a future deficit due to a future expense, but there is nothing algorithmically expensive or difficult in that.

Optionally, minimum time advances slowly, or faster according to a master warp. The advance of minimum times allows to forget past events and lighten the memory.

 

Then there is ownership and right management to know who is able to do what, but it is the lesser issue. This system might also be used in single player to play through missions sequentially but have them happen in parallel.

 

As far as I know, there are no edge cases. The difficulties come from UI (asking time every time a player wants to switch craft and more), determinism and memory. Determinism issue are denoted with a star :

*in order to have an accurate prediction, all the mechanics involved have to be deterministic. Gravity under Newtonian mechanics is very much deterministic, and even time reversible, which should greatly help, but it is not necessarily easy to make practical implementations of it which keep these nice properties. At worse, you could save the whole trajectory of a craft from minimum time to maximum time so as to only ever compute it once, and be able to remain consistent, deterministic.

Storing trajectories over year might also create memory issues. Under patched conics, you mostly only need to know the position upon changing SOIs, which should be manageable (mostly because you still need to be careful about precision and determinism in the way you reconstruct the trajectory from a single point). But if you want anything more than patched conics, problems start arising... And KSP2 has already promised binary stars and planets, so they might do away with patched conics.

 

To explain with an example, let's look at 2 potential paradoxes that can arise with asynchronous multiplayer.

First example, two players, A and B, want to grab the same asteroid. A makes a quick and dirty maneuver, time warp and grab the asteroid. B plan an interception which should occur sooner than A's. What happen?

Answer : A "wins", B cannot interact with the asteroid. As soon as A coordinates the meteorites time with his own, B sees it as a history ghost. If he was already targeting it, he gets a message.

Workaround? This is not really an issue with the system itself, as players are supposed to be cooperating, but limitations on who is able to change the time of neutral object can help.

 

Second example : two players, A and B, doing unrelated missions. 10 years in the future, A grabs fuel at a station depot to go to Eve. 1 year in the future, B tries to get fuel from the same station depot. What happens?

Answer, B cannot access the station 1 year in the future as the station's time is 10 years after A interacts with it.

Workaround? This example shows the limit of this model : commonplaces (stations and colonies) cannot easily be shared, and the order in which players interact with them heavily influences what is possible to do. B is rightfully frustrated because he could have taken the fuel from the station and refuel it before A even needs it. As it happens, there is a workaround for this particular example, but it requires not only cooperation, but also that the players know what they are doing (and even then, they are limited):

Instead of docking directly to the station, A can detach a tanker from the station in the present, and dock with it 10 years in the future. In turn, B can send a new tanker to the station in the present (right after A interacted with it) and use it 1 year later. It is not entirely perfect as B might have wanted to first take fuel then send a tanker, but at this point, it is a matter of cooperation : A should have refueled the station.

Link to comment
Share on other sites

For sure, I think single player should be a valid option, and the implementation or removal of multiplayer features should not affect single player as well. As for time warp, maybe everyone has to agree? or go with how Luna does it. Reverts and quickloads could be popping the vessel into existence at the new time but old position and velocity. As for griefing / trolling, other multiplayer systems have to deal with that already... Just let in the people you trust, or start building defenses.

Edited by SkyFall2489
Link to comment
Share on other sites

For everyone who does not take ship interactions and collisions into account in multiplayer, all I can say is that someone is  100% going to crash a rocket in your meticulously built space station, for the lulz. Actually, they will pulse nuke your colony too. Deal with it, what are you going to do about it?

Edited by Vl3d
typo
Link to comment
Share on other sites

6 minutes ago, Vl3d said:

For everyone who does not take ship interactions and collisions into account in multiplayer, all I can say is that someone is  100% going to crash a rocket in your meticulously built space station, for the lulz. Actually, they will pulse nuke your colony too. Deal with it, what are you going to do about it?

Minecraft has been around for 12 years now, how people deal with griefing on that game? And in that game all you need to ruin someone building is a bucket of water and one of lava, not literal rocket science.

I know for a fact that I won't have that problem, and anyone who has played any multiplayer game in the last decade knows too.

Link to comment
Share on other sites

1 hour ago, Vl3d said:

Literally the first thing that came up on Google searching "Minecraft war".

Screenshot-2022-03-01-11-33-43-42-3aea4a

And?  If that is how they play good for them, if they don't want that kind of play the "problem" is solved in 5 minutes, ban the idiot and load a backup or revert the afflicted area with a grief prevention plugin (a thing that any decent public server should have).

Again, not a problem for more than a decade, not in games with public servers and especially not on a small coop server with friends, which is probably what KSP2 multi will be like.

Also the average "for the lulz" griefer is too dumb for KSP.

Link to comment
Share on other sites

1. What if I don't want to play just small co-op, but in a MMO style? What if I want a busy world with other players, many ships, where everyone has their own colony on all planets?

2. What if there is just a "docking accident" that causes a crash? How does the server differentiate this from intentional action?

3. Don't you know that "all user input should be handled as radioactive material"? Being "too dumb for KSC" is just your opinion. Good multiplayer game design sets limits for what is possible, and having fun means finding the ballance of freedom and constraints, of incentives and sanctions.

And please stop repeating that it's "not a problem, not an issue for years" like you are the only one with experience in multiplayer. I don't want to beg for server reverts, I want defence systems, approach, entry and docking permissions, collision avoidance systems etc.

Link to comment
Share on other sites

1. KSP 2 is not going to be an MMO. That's an entirely different kind of game. 

2. I'm talking about manual enforcing and prevention systems, nothing automated.

2 hours ago, Vl3d said:

And please stop repeating that it's "not a problem, not an issue for years" like you are the only one with experience in multiplayer. I don't want to beg for server reverts, I want defence systems, approach, entry and docking permissions, collision avoidance systems etc.

You just described how is not a problem, now, "defence systems" are quite of place in KSP since the "no weapons in this peaceful game" stance, but I expect all the appropriate measures to prevent it to be a problem since we're in 2022 and not in 2009, multiplayer griefing is a solved problem.

 

Playing with random people instead of friends is going to require selection, moderation, and a sharpened ban hammer but that's the deal with any public server for every game.

Link to comment
Share on other sites

So why exactly is everyone stressing about time warp? Just give up on having time in the game in multiplayer mode - this way journeys would be "as if" during time warp. Just imagine - you launch your rocket, get to orbit, open map mode and you see everyone just making journeys around the solar system at high speed. No literal "time warp" needed, and you can interact with vessels only if they have comparable speed to your own.

Link to comment
Share on other sites

23 minutes ago, Vl3d said:

So why exactly is everyone stressing about time warp? Just give up on having time in the game in multiplayer mode - this way journeys would be "as if" during time warp. Just imagine - you launch your rocket, get to orbit, open map mode and you see everyone just making journeys around the solar system at high speed. No literal "time warp" needed, and you can interact with vessels only if they have comparable speed to your own.

Transfer windows. If you saw Duna to be in a different position than your friends, things would get confusing. How would an other player's vessel, traveling from Duna to Jool, look compared to someone who saw duna and jool at the wrong angle? Where would they be displayed?  Rendezvous would be a nightmare, because time-warp would literally change relative speeds from no vessel input.

Link to comment
Share on other sites

I will admit, that style of time management is the most “fun” because you never have to wait or be locked off from things due to breaking causality, and the only thing that breaks it for me is the lack of rendezvous mechanics (you can just warp up to your friend’s craft) and the difficulty in coordinating trips (if you wanted to resupply a ship during a transfer, matching your orbit with the ship’s orbit would be literally impossible due to the different positions of planets). Both of these could be solved though (add a special case for rendezvous and for transfers, the warped trajectory will un-warp itself as you approach the transfer window, or just don’t show the trajectory until you are at the transfer window) and the game would be a lot more fun, seeing all player actions in real time. 

Link to comment
Share on other sites

Okay, I'll start by saying that if I can find a mediocre solution in a short time, the devs can find a good solution over the development process. 

The main problems with rendezvousing under the current system are
1) rendezvousing is reduced to matching orbits with the other craft and then time warping until you reach it. 

2) rendezvousing in the normal way (when the other craft is not yours, I think time warping should warp all of your craft forwards, not just the one you are controlling) is impossible because the other craft will not warp to the rendezvous point when you warp there. 

My really bad solution is to have a ghost version of the other craft warp (you would have to set it as a target to get it to warp maybe? Or not, because then there are loopholes) and you would plan and execute the rendezvous normally, but when you got within range of the other craft, your craft will pop into the place where the other craft is. This only applies for rendezvousing when you are in the same SOI and both orbiting. If you both launch a Mun mission and warp to the Mun, the rendezvous rules only apply when both players have a stable orbit around the Mun. The experience would be like regular rendezvousing and the only unfortunate difference would be that visually, your craft jumps from one point in its orbit to another, so if you are rendezvousing on the night side and the craft is on the day side it would look bad. But there are definitely solutions to this. 

Link to comment
Share on other sites

This idea does look promising. A "ghost ship" that time warps when you do might work, but to avoid the jump, how about there is a way to coordinate time warp between the active vessel and the target?

 

This still doesn't deal with positions of celestial bodies too well, though. And what about contracts and their expiration dates?

 

After thinking about it for a while, it seems that LMP's subspace system is the best option.

Edited by SkyFall2489
Link to comment
Share on other sites

×
×
  • Create New...