Jump to content

KMP v0.1.5.1 [0.23] [alpha] [inactive]


TehGimp666

Recommended Posts

@Rob2222: https://github.com/TehGimp/KerbalMultiPlayer/issues/563. It's been around for a while, we believe it's a KSP bug, but I'm unsure how to avoid it. Once you hit the bug the ships are locked together forever.

I've run into this several times recently. Symptoms are very similar to the reported KSP bug, but it's impossible for me to tell for sure as I would need to edit the save game files. KMP stores them in the DB, which is abit out of my understanding to look at.

I'd never run into this before in over 200hrs of playing solo KSP, but after just a few hours of KMP I hit it several times. I can only assume that something in KMP is aggravating the underlying issue in KSP.

As far as fixing the problem, I've not found a solution. But, I have figured out a few things:

1) I've never had it happen to ships that were docked in the VAB (built docked)

2) It seems more likely to happen after a time warp or a disconnect (I believe when you disconnect, your subspace is "time warped" to server latest?)

3) After docking, undock and redock a few times seems to prevent it.

4) Having some sort of command module on items docked helps prevent it (I was trying to dock a fuel tank, then decouple the command module/rcs/batteries/motor to leave only the tank. It failed every time until I left one of the small probe modules on the fuel tank.)

5) Attach every docking port with a decoupler. At least if it bugs, you can separate it the ships still.

Link to comment
Share on other sites

2) Close, When you time warp, you stop sending vessel updates and the server ignores you completely. When you come out of warp the server allocates you a new subspace. When you reconnect, the client asks for the latest subspace.

The local save can still be found in saves/KMP/persistent.sfs, but KMP loads from start.sfs and pulls all the ships in. I'm wondering if it's possible to check for bad dockings (like how they are different from ok docked vessels), and see if it's possible to detect and fix.

3) Docking in KMP actually destroys the other vessel and reupdates one of the old ones, so I can see that helping, but it's probably a random chance thing

4) I put probes on everything and I still hit this, so it doesn't fix it.

5) That's clever. I tried to make a blowtorch to explode the docking port off, the first one ended up basically a mass driver, but it doesn't stay still for long enough, then I tried to invent one with a hook to wrap around a 2.5m part. I failed with that one too :P

Link to comment
Share on other sites

@Hayden06: At the moment it's not currently possible to disable time warping, Keep in mind it takes half an hour to orbit kerbin and (I think) 18 hours to get to the mun. Space is big...

Subspaces are a really nice way to solve the multiplayer warping problem - I'm not sure how gimp come up with the idea, but it does make things easier. I initially thought the first multiplayer mod would have been master controlled warp (everyone warps at once), but here we are :)

Link to comment
Share on other sites

Sorry if this has been answered already, but I'm just wondering:

If I run my own server for me and my friends, can I disable time warping?

I'm assuming you don't mean simply 'remove time warp' since that would mean flying to Eve would require you to wait over a year for your ship to arrive (and anyways to do that all you need to do is just agree with your friends to never to use the warp button, by for example just unbinding the keys), and I'm assuming instead you mean remove the need I to sync when someone warps. As in, if they warp on their trajectory to the moon, then you would just see them on the moon in your time.

The problem is that in KSP, planets and moons are not stationary. Even if the mod made the player appear to be in their relative place around a celestial body, it still would have the potential to cause massive issues.

Let's say you are orbiting Kermin and on their screen they just landed on minmus. And let's assume on your map you would see the moon and minus on opposite sides of kerbin, and on their screen, since they warped time, the moon and minmus are close together. If the mod was designed to just always show them where they are in their universe but 'projected' onto your universe, what would happen if they suddenly launch from minmus and do a quick transfer to the moon. Since on your screen the moon is on the opposite side of kerbin, would you see their ship suddenly fly through kerbin to reach the moon on the other side? It would just cause a huge amount of confusion and issues. For example what if you now wanted to rendezvous with them as they (on your screen) pass thorough kerbin. They wouldn't actually be there.

It may be a roundabout way of saying it, but the current syncing/time warp system is absolutely necessary. The only way you could otherwise avoid the problem is by locking the universe, forcing all planets to be stationary. That way regardless of how you warped, your position would still make sense for everyone, but that would take all the fun out of transferring between orbits.

Edited by JohannesMP
Link to comment
Share on other sites

Subspaces are a really nice way to solve the multiplayer warping problem - I'm not sure how gimp come up with the idea, but it does make things easier. I initially thought the first multiplayer mod would have been master controlled warp (everyone warps at once), but here we are :)

I agree, I just thought it would be fun to have a server aimed at a collaborative space station among friends all working in the same subspace. I just got my KMP going so I have yet to play with the warping, I might like it after all, I'll see what happens. I suppose it depends how easy it is to meet up with people in orbit after warps.

Link to comment
Share on other sites

I just wanted to mention that I got KMP Server 0.1.5.1 working on a Raspberry Pi.

Took a little bit of work to get mono and mysql running, but it seems quite stable and takes not too much CPU (not stress tested it yet).

Thanks for the hard work on KMP :-)

Link to comment
Share on other sites

I just wanted to mention that I got KMP Server 0.1.5.1 working on a Raspberry Pi.

Took a little bit of work to get mono and mysql running, but it seems quite stable and takes not too much CPU (not stress tested it yet).

Thanks for the hard work on KMP :-)

Nice, how many players can it handle?

Link to comment
Share on other sites

@Hayden06: After someone warps, everyone from the past can press the sync button next to that player, which basically warps you to their time. So easy :)

@Coda: If you use sqlite, You might get away with 1 or 2 players *maybe*. There's still a few database issues, if you have ever noticed chat lag on public servers, that's due to the server falling behind (usually followed by kicking everyone but the leading player from a subspace).

Link to comment
Share on other sites

Nice, how many players can it handle?

I don't know, I haven't tested it properly yet.

Edit: Initial sync for me takes most of the CPU, after that, usage drops to ~5% (the mono process). Other syncs (like when you come out of warp) raise the cpu usage to ~6-10%. That's just one player, still waiting for a friend to join up and test with me.

Edited by Coda
Link to comment
Share on other sites

@Coda: If you use sqlite, You might get away with 1 or 2 players *maybe*. There's still a few database issues, if you have ever noticed chat lag on public servers, that's due to the server falling behind (usually followed by kicking everyone but the leading player from a subspace).

Prior to the Pi, I was playing with the server on another Mac, using sqlite3 that comes installed in MacOSX. It seemed fine for a while but I had a problem with the server crashing because of sqllite - whenever I came within ~20m of another craft to dock. I could reproduce it every time. I installed mySQL and the problem went away.

Link to comment
Share on other sites

Prior to the Pi, I was playing with the server on another Mac, using sqlite3 that comes installed in MacOSX. It seemed fine for a while but I had a problem with the server crashing because of sqllite - whenever I came within ~20m of another craft to dock. I could reproduce it every time. I installed mySQL and the problem went away.

Yep, as another Mac user I can confirm that this is a know Issue on the bug tracker and unfortunately MySQL is the only currently proposed workaround, which comes with its own set of issues.

Link to comment
Share on other sites

Yep, as another Mac user I can confirm that this is a know Issue on the bug tracker and unfortunately MySQL is the only currently proposed workaround, which comes with its own set of issues.

Right. Although the mySQL process isn't using a huge amount of CPU (3-4% max) I'm wondering if I can get sqlite on the Pi and see if I experience the same issues as on my Mac (my mac is on 10.8.4 btw), and also see if mono reduces its cpu usage too...

Link to comment
Share on other sites


My Previous 0.1.5.1 Tests


After a good bit of work with godarklight we were able to compile a working 32bit sqlite3 mac library, and I wanted to test if it fixed some of the issues that sqlite3 had for mac in the past.

It should be noted that while I am using devbuild 7d95942, in addition to the extra libsqlite3.0.dylib file I was also using Mono.Data.Sqlite.dll and a modified KMPServer.exe and KerbalMultiPlayer.dll (as modified by godarklight on his test server).

As such some of the issues below may not be directly reproducible with the immediate dev build, but probably will be in future builds, once these changes are merged.

Setup

  • Server was configured Similar to previous attempts (default except 1750m bubble) although this time we're using sqlite3 and so useMySQL is set to False.
  • Everything is running on the same machine, two clients, the top-left is called 'client_1', bottom-right 'client_2'.

Video (please watch in full 1080p)

Note: Unfortunately I did not have time to edit this video, but a detailed analysis with timestamps can be found below

Key Issue Summary

  1. [New] When launching at the same time, both clients will suddenly not be able to see the other one on their respective user lists while inside the bubble. Despite this however the users can still receive chat messages from each other. When either of the clients exits the bubble they will immediately appear on the other client's user list. It seems the change of state causes the update to sync, while the client did not receive the original 'change in user's state' message while they were in the process of loading the world/vehicle before launch. Similarly at other times a client will not see a connected user, but then changing their state, such as switching from the space center to the tracking station, will fix it.
  2. [Known] As in my previous tests, two clients leaving the bubble in atmosphere next to each other will not be able to see each other's vessels until they completely disconnect and reconnect.
  3. [Known] When another user is connected, one user will repeatedly fail to connect, instantly being listed as "Player #<num> <name> has disconnected: Connection lost". This seems random and randomly fixes itself, but as you can see in the video below, sometimes it takes over a minute of consecutive tries for it to work.
  4. [New] When disconnecting and reconnecting soon after the initial sync out of the bubble (to fix issue 2 above), weird stuff happens with the vehicles:

    I
    . The original movement that the vehicle made seems to not have saved and the vehicle is reset to the edge of the bubble where it was first synced to the server - in the example below both rovers drove 200-300 meters away from the bubble and locked their breaks. upon logging in again both vehicles were on the edge of the bubble with their breaks unlocked

    II
    . One vehicle is changed to the other vehicle's model and name, but retains its original position (so it's not a case of ship duplication where you just have two copies of the same vessel in one spot).

    -
    I've been able to reliably reproduce both
    I
    and
    II
    , following the same order of operations as described by the video.


  5. [Known] 45 second vehicle updates still do not happen, for several minutes after opening the parachutes on both vehicles, the other client would still see the parachutes as closed
  6. [New] Although early in my test the movement seemed much smoother than in my previous tests, at a very slow speeds movement is not correctly synced and the other client, instead of seeing a slow steady movement, will see the vehicle jumping forward in little hops every few seconds. It seems as if either movement data is capped to only be sent if the velocity exceeds a certain speed, or if a vehicle has moved more than a predetermined distance. While this might save bandwidth, it looks really bad.
  7. [New] After running for a few minutes the server begins to struggle and messages are delayed, only a few seconds at first, but ultimately one vessel's movement can take up to 80 seconds to even begin to appear on the other client. This also affects chat messages, which don't even show up in the server's own log until much later after they are sent, which seems to indicate an underlying congestion issue in the server itself.

Video Analysis (bold timestamps indicate a possible issue)

0:06 - As a baseline, showing that both clients can send and receive chat messages from one another

0:40 -
Note
: client_1 has loaded Rover1, client_2 has loaded Rover 2. Rover1 has orange parachutes, Rover2 has blue. This is important later on.

1:05 - Both client_1 and client_2 launch as close together as possible. This might be relevant for the issue that follows at 1:18 below.

1:12 - For the first ~5 seconds both clients can see the other in the user list

1:18
- Suddenly both clients disappear from the other's user list. However neither have been disconnected, and indeed both can still receive chat messages from the other one (1:25).

1:45
- The moment client_1 leaves the bubble client_2 suddenly sees them again, listed as 'Prelaunch at Kerbin'. However client_1 still cannot see client_2 on their user list. When client_2 then leaves the bubble (2:08) they also appear on client_1's userlist.

2:12
- As has been the case in all my previous tests, once both clients have left the bubble and synced their vehicles to the server, neither can see the other.

2:20 -
Note
: Rover1 and Rover2 are both about 200-300 meters away from the edge of the runway, and both have their breaks on, so cannot move anywhere. Keep this in mind for later.

2:28 - Both clients disconnect, as is necessary for them to be able to see the other vessel.

2:43
- I first click connect on client-1, then a splitsecond later click connect on client_2. While client_2 reconnects instantly, client_1 is stuck on the map screen. Almost instantly after attempting to connect the server log states: "Player #1 client_1 has disconnected: Connection lost". This continues to happen several times:

2:58
- client_1 Connection attempt 2 - failed

3:14
- client_1 Connection attempt 3 - failed

3:24
- client_1 Connection attempt 4 - failed

3:37
- client_1 Connection attempt 5 - failed

3:44
- client_1 Connection attempt 6 - failed

3:53
- client_1 Connection attempt 7 - success! notice how you can immediately tell from the atmospheric reentry sound effect that plays during the loading screen.

4:05
- Despite having now connected, client_2 still is not seeing client_1 on their player list. Only once both players switch locations, to the tracking station, does client_2 see client_1 again.

4:15 - Remember how I made absolutely sure that the two rovers had different names, Rover1 and Rover2? Well the tracking station now only shows two 'Rover2' entries

4:32 - client_1 resumes the flight of the top rover and client 2 resumes the bottom one.

4:37
- Now, if Rover2 was just duplicated you would expect the two duplicates to be in the same spot, but they're not. In fact they're both on the same path that the previous two rovers took when they left the bubble, not on the same path as you would expect if it was somehow a duplicate of Rover2. What seems to have happened here is that, somehow, Rover1 was simply replaced by Rover2. What the heck?

4:42
- Remember where the rovers stopped at 2:20, each rover was 200-300 meters away from the runway with their breaks on. However when client_1 and client_2 logged on just now, the rovers were just barely on the edge of the runway, basically exactly where the edge of the bubble is. It's almost as if their position was not saved on the server after the clients disconnected, and reverted back to the place where Rover1 and Rover2 first spawned into the server when leaving the bubble.

4:53 - Time to test how good the syncing is now. If you'll recall in my previous tests, this was always really jittery, with a strange 1-2, 1-2, 1-2 kind of movement.

5:12
- Just to verify that they are indeed the same vehicle, both have the blue parachutes that Rover2 used, not the orange ones that Rover1 had attached.

5:37 - At this point, comparing the movement on client_1 and client_2 it actually looks -really- good. The movement is smooth and almost 1-1. Much better than in previous tests!

7:14
- To test if periodic updates work now, I deployed the two parachutes on client_1. The ship should re-sync completely every 45 seconds, so at the very least in 45 seconds client_2 should see the open parachutes.

7:37
- Switching to client_2, I decide to also deploy its parachutes. However when I do so notice that the parachute model does not open up and change to show the 'parachute deployed' model. when I did so with the two client_1 parachutes this happened instantly.

8:00
- On client_1's rover is rolling at a constant, very slow speed. It seems that unlike the previous smooth movement, client_2 is not interpolating the movement correctly and so is seeing client_1's rover do little 'hops' every few seconds. It's almost as if movement is not synced unless the position changes more than a given value, at which point the position is synced again.

8:16
- On client_2's chat, I enter a chat message "bounce, bounce, bounce". However this chat message does not appear instantly on client_2's screen, nor does it appear on the server's log. In fact there seems to currently be a MASSIVE delay in server packets, and the initial 'bounce, bounce, bounce' does not appear until 8:37, so 11 seconds later. subsequent chat messages sent by either client seem to take longer and longer each time.

8:51
- Thinking back to 7:37 when I opened client_2's parachutes and the model did not update. Right at this moment the model suddenly updates, a whopping 74 seconds after the initial command. This further confirms that something is -really- clogging up the server right now.

9:00 - I begin to drive around on client_2's screen to see how long it would take for client_1 to see the movement.

9:28
It takes about 30 seconds for the movement from client_2 to be visible to client_1. And the resulting movement is not very pretty anymore. It's very jittery, as if the client keeps receiving old data that resets the rover back and trying to re-interpret the path according to that. Something is clearly very wrong with the data being sent from the server to the client. It seems almost like the server is insisting on sending all the built up data that it has instead of just sending the client the most recent data, and as a result there's a huge amount of congestion.

- Remember this is all running on the same machine, latency or packet bandwidth should not be an issue whatsoever.

10:00
Now client_1 drives around a bit and then waits until client_2 receives this data. It ends up taking until 11:23, or over 80 seconds for client_2 to see client_1's rover even begin to move.

Downloads

  • Rover Craft Files: link
  • Log Files: link (I'm unsure which order I launched the clients in, so don't know which client Player.log corresponds to. I also forgot to run KSP with the KMPdebug flag)

Edited by JohannesMP
Link to comment
Share on other sites

Sorry if this has been answered before, couldn't find the question. I installed KMP and made my server but now I get an error stating Start Save Missing. Very client installation. How do I fix this? The KMPsave is in the saves folder.

Edited by CaptainAviation
Link to comment
Share on other sites

@JohannesMP: It might be worth checking the normal dev build with your build of sqlite in the server folder. I think the port to mono is unlikely to be merged, because I've made everything use the disk database and not the memory database.

The server lag is another problem I'd like to tackle one day, #555, and the devils bug #666. The server is building up messages in its queue and it can't process them fast enough (or doesn't want to - I've noticed that CPU usage can be low but the server can still lag). It is worse in MySQL, but you may be experiencing similar results because it's using the disk database.

@CaptainAviation: It means that KSP_folder/saves/KMP/start.sfs is missing, which means it wasn't installed properly.

@bcspazer: Kerbal the mass drivers!

Link to comment
Share on other sites

Right. Although the mySQL process isn't using a huge amount of CPU (3-4% max) I'm wondering if I can get sqlite on the Pi and see if I experience the same issues as on my Mac (my mac is on 10.8.4 btw), and also see if mono reduces its cpu usage too...

I've tested further using sqlite on the Pi, and have no crashing issues so far. I've copied the db from the mac which was crashing when trying to dock in LKO, and on the Pi it doesn't crash at all, I can dock successfully.

On the mac, I've also tried linking to the native sqllib (/usr/lib/libsqlite3.dylib) but the crash still happens when I get close (~20m) to the other craft.

Here's a stacktrace if anyone is interested:

  at <unknown> <0xffffffff>
at (wrapper managed-to-native) System.Data.SQLite.UnsafeNativeMethods.sqlite3_prepare_v2 (intptr,intptr,int,intptr&,intptr&) <0xffffffff>
at System.Data.SQLite.SQLite3.Prepare (System.Data.SQLite.SQLiteConnection,string,System.Data.SQLite.SQLiteStatement,uint,string&) <0x003f3>
at System.Data.SQLite.SQLiteCommand.BuildNextCommand () <0x001eb>
at System.Data.SQLite.SQLiteCommand.GetStatement (int) <0x0006b>
at (wrapper remoting-invoke-with-check) System.Data.SQLite.SQLiteCommand.GetStatement (int) <0xffffffff>
at System.Data.SQLite.SQLiteDataReader.NextResult () <0x0031f>
at System.Data.SQLite.SQLiteDataReader..ctor (System.Data.SQLite.SQLiteCommand,System.Data.CommandBehavior) <0x00177>
at (wrapper remoting-invoke-with-check) System.Data.SQLite.SQLiteDataReader..ctor (System.Data.SQLite.SQLiteCommand,System.Data.CommandBehavior) <0xffffffff>
at System.Data.SQLite.SQLiteCommand.ExecuteReader (System.Data.CommandBehavior) <0x00047>
at System.Data.SQLite.SQLiteCommand.ExecuteNonQuery () <0x00027>
at KMPServer.Server.storeVesselUpdate (byte[],KMPServer.Client,System.Guid,double,bool) <0x001da>
at KMPServer.Server.sendPluginUpdateToAll (byte[],bool,KMPServer.Client) <0x027a3>
at KMPServer.Server.HandlePluginUpdate (KMPServer.Client,KMPCommon/ClientMessageID,byte[]) <0x0003b>
at KMPServer.Server.handleMessage (KMPServer.Client,KMPCommon/ClientMessageID,byte[]) <0x00147>
at KMPServer.Server.handleConnections () <0x0015b>
at System.Threading.Thread.StartInternal () <0x00057>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) <0xffffffff>

I'm still experimenting with the Pi: a friend tried to join last night (Pi was using mySQL) and he had several connection fails before I decided to change the port forward to the mac server instead (we just wanted to play! :)). However I'm going to try sqlite on the Pi when he has time to see if it reduces the CPU usage enough for a Raspberry Pi to be useful in this application. At the moment, with mySQL I don't think so but I'm not 100% certain.

Link to comment
Share on other sites

I've tested further using sqlite on the Pi, and have no crashing issues so far. I've copied the db from the mac which was crashing when trying to dock in LKO, and on the Pi it doesn't crash at all, I can dock successfully.

On the mac, I've also tried linking to the native sqllib (/usr/lib/libsqlite3.dylib) but the crash still happens when I get close (~20m) to the other craft.

Here's a stacktrace if anyone is interested:

  at <unknown> <0xffffffff>
at (wrapper managed-to-native) System.Data.SQLite.UnsafeNativeMethods.sqlite3_prepare_v2 (intptr,intptr,int,intptr&,intptr&) <0xffffffff>
at System.Data.SQLite.SQLite3.Prepare (System.Data.SQLite.SQLiteConnection,string,System.Data.SQLite.SQLiteStatement,uint,string&) <0x003f3>
at System.Data.SQLite.SQLiteCommand.BuildNextCommand () <0x001eb>
at System.Data.SQLite.SQLiteCommand.GetStatement (int) <0x0006b>
at (wrapper remoting-invoke-with-check) System.Data.SQLite.SQLiteCommand.GetStatement (int) <0xffffffff>
at System.Data.SQLite.SQLiteDataReader.NextResult () <0x0031f>
at System.Data.SQLite.SQLiteDataReader..ctor (System.Data.SQLite.SQLiteCommand,System.Data.CommandBehavior) <0x00177>
at (wrapper remoting-invoke-with-check) System.Data.SQLite.SQLiteDataReader..ctor (System.Data.SQLite.SQLiteCommand,System.Data.CommandBehavior) <0xffffffff>
at System.Data.SQLite.SQLiteCommand.ExecuteReader (System.Data.CommandBehavior) <0x00047>
at System.Data.SQLite.SQLiteCommand.ExecuteNonQuery () <0x00027>
at KMPServer.Server.storeVesselUpdate (byte[],KMPServer.Client,System.Guid,double,bool) <0x001da>
at KMPServer.Server.sendPluginUpdateToAll (byte[],bool,KMPServer.Client) <0x027a3>
at KMPServer.Server.HandlePluginUpdate (KMPServer.Client,KMPCommon/ClientMessageID,byte[]) <0x0003b>
at KMPServer.Server.handleMessage (KMPServer.Client,KMPCommon/ClientMessageID,byte[]) <0x00147>
at KMPServer.Server.handleConnections () <0x0015b>
at System.Threading.Thread.StartInternal () <0x00057>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) <0xffffffff>

I'm still experimenting with the Pi: a friend tried to join last night (Pi was using mySQL) and he had several connection fails before I decided to change the port forward to the mac server instead (we just wanted to play! :)). However I'm going to try sqlite on the Pi when he has time to see if it reduces the CPU usage enough for a Raspberry Pi to be useful in this application. At the moment, with mySQL I don't think so but I'm not 100% certain.

While this was a known "won't fix" issue for the past few months just yesterday godarklight and I managed to compile a proper 32bit mac dylib. The one comes included in /usr/lib is the one causing the issues. Once #679 is merged this should work. From my tests so far it does not crash anymore (as you can see in the rover test I posted above)

If you want you can already manually download the dylib here, then unzip and drop it in a clean instal of the current server devbuild.

Edited by JohannesMP
Link to comment
Share on other sites

While this was a known "won't fix" issue for the past few months just yesterday godarklight and I managed to compile a proper 32bit mac dylib. The one comes included in /usr/lib is the one causing the issues. Once #679 is merged this should work. From my tests so far it does not crash anymore (as you can see in the rover test I posted above)

If you want you can already manually download the dylib here, then unzip and drop it in a clean instal of the current server devbuild.

Thanks, that explains the identical crashes after symlinking the lib. For now, I won't bother pursuing sqlite on the mac, I'll wait until the next server release. Until then, I'll continue to test KMP/sqlite/mysql on the Pi, to see if it can be stable, and how many clients it will handle.

Link to comment
Share on other sites

Hi, I started a new server: kerbalspace.eu[:2076], can I ask some features? :D

- Teams (Companies, where can we choose a logo, maybe private chatroom)

- Shared Science points (with everybody, with company members)

- Maybe Science "tax" if the shared science points work, server can take x% science to everybody and maybe the teamleader can take tax from members.

- Science stole: If one company have a station and other team member go there and go EVE they can stole the science trught the devices, maybe with com devices can crack into the other company system and stole datas. :)

- HTTP Server status information in JSON format and maybe get the server settings too in JSON.

- In HTTP server status show the connected player names and status.

- FallbackURL if server is down (stored in client side this url after once connected)

- FallbackURL if client need mods (stored in client side this url after once connected)

- RemoteTech Statelit share settings (companyes and player can privatize their satelites or share with the others, but only 1 comlink per antenna)

- Mapsat and GPS satelit share settings (Spy satelit)

- Players, satelites, bases etc hide if it is not share everybody, the hidden things only shows when visible (for mapsat satelite too)

Link to comment
Share on other sites

Hi, I started a new server: kerbalspace.eu[:2076], can I ask some features? :D

...

You're welcome to add these as individual suggestions in the bug tracker: https://github.com/TehGimp/KerbalMultiPlayer/issues. Try seperating them as multiple issue posts, to make tracking them easier in the future, although you can probably group the features pertaining to teams as one issue for the time being.

However most of these are probably still multiple versions away, simply because the core fundamentals are still not done yet. There's still plenty of desyncing and simple issues that need to be addressed and ironed out before most of the features you suggested are even ready to be considered. You've got some good ideas, but I'd be surprised if any of them will make it in before 0.1.8

Edited by JohannesMP
Link to comment
Share on other sites

@Coda: The good news is we didn't have to change anything, putting the library in the current KMPServer folder for mac is all that's required. You can actually download it straight from my branch, but it's the same one Jo linked: https://github.com/godarklight/KerbalMultiPlayer/raw/native-sqlite-library/KMPServer/libsqlite3.0.dylib

@adamos42:

Teams) I'd speculate that this would only be good on war servers, the last thing you want to do in a multiplayer game of (by default 8) people is split people apart again :-/. However, I do see it being handy one day.

Shared Science points) Related to 548, 556 and 667

Science stealing) You can kinda already do that, not by stealing the science, but by recovering landed probes and things.

HTTP Json) Something we should probably look into, My server list grabs things using regular expressions which look kind of weird.

HTTP Players) Already exists, they show up with (for example) sed -n 's/^Players: (\.*\)$/\1/p'

FallbackURL) You might want to explain that one a bit more, but my KMPModClient program (which admittedly needs love for the next version of KMPModControl) might handle the mod issue.

RemoteTech, mapsat, GPS) Same as above with the kethane report.

Vessel hiding) Sounds one step further then making it private. That's something to think about. One the other hand we should probably fix this first, as it looks like it's already happening ;.;

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...