DarkMultiPlayer Client

DarkMultiPlayer Client

38.8k Downloads

Sending vessel infos might might cause short freezes

Kakyokuu opened this issue ยท 5 comments

commented

I am not sure at all about that issue because I am trying to investigate on freezes my users encounter while they are on the server and not in solo.
For information, the server is modded.

We tested some flights with my users and we noticed that when the game got frozen the debug console log displayed that sort of message :
[Log]: [5748.527] DarkMultiPlayer: Sending vessel 6598b00c-6768-4836-83d3-aed6363e621d, name Redshift v1, type: Ship, size: 145615

The creation of a lot of debris (crash) seems to create the same issue (can't get you the log for the moment)

commented

How big is the ship? What modded parts are on the ship? Can you confirm that the vessel is 145 KB?

commented

The vessel file is 145KB yup. Here's a pastebin of the vessel's file : http://pastebin.com/9cSMCTEJ
The vessel itself is not that big : http://puu.sh/bR895/ed9128f96d.jpg and as far as I know, this issue occurs with either large or small vessels.
As modded parts, there are :
1 PX-STAT 1x2 Photovoltaic Truss from Near Future
1 Z-400 Rechargeable Battery from Near Future
The Mobile Processing Lab MPL-LG-2 has been rescaled to match SC-9001 Science Jr. size.

You can find the total mods list here : http://forum.languagecraft.tv/viewtopic.php?f=84&t=5184 (first part in french, second part in english)

commented

Wow, those are a lot of mods. This is definitely going to freeze someone's game. Not only that, but you have things like TweakScale and Infernal Robotics that aren't quite as stable.

I'm guessing this might be because it's flooding the clients with vessel data, or KMP isn't able to keep the "vessel creation" window open for so long.

commented

In DMP, a vessel is sent every 30 seconds, or immediately if there's a part count change.

This calls Vessel.Save(), Which might be a little expensive. I'll have to profile this on the way to 0.1.6.

In either case, the current Kill/Replace trick DMP uses to update the parts is far too laggy for the game, which will defintiely cause pauses.

commented

Fixed via ba0b0ff