Jump to content

DarkMultiPlayer 0.3.8.0 [KSP 1.12.0]


godarklight

Recommended Posts

Download Links

Release & Development client, server, updater, modpackupdater from the build server.

Client and server from d-mp.org.

Client and Server download from SpaceDock

Client download from Curse (New releases make take a while to show up)

It's also available on the CKAN, which is an amazing community project mod manager. Go check it out :)

CurseForge does not allow me to host exe files, so DMPServer will NEVER be available on curse.

Remember to back up your GameData/DarkMultiplayer/Plugins/Data/[private|public]key.txt files if you move to a new install or you won't be able to use your old username.

Highly recommended updater (source code is below if you're interested):

DMPUpdater download (build server)

DMPModpackUpdater (for use with modded servers that have enabled modpack syncing)

DMPModpackUpdater download (build server)

Public Server List:

D-MP.org link

godarklight.info.tm link

Installation tutorial: (There used to be a horrible video here, ignore it, either use CKAN, DMPUpdater, or extract DMPClient/GameData/DarkMultiPlayer to KSP_Folder/GameData/DarkMultiPlayer)

Licence: MIT.

v0.3.8.0 Changelog:

godarklight:

- Update to 1.12

Pre-emptively answered questions:

What is DarkMultiPlayer?

DarkMultiPlayer is a multiplayer mod for KSP. It supports subspace-style (and master controlled warp) warping & career mode, with an easy-to-edit server database.

Can you show me the code?

DarkMultiPlayer: https://github.com/godarklight/DarkMultiPlayer

MessageStream: https://github.com/godarklight/BinarySerialiser (Used for building the network messages)

DMPUpdater: https://github.com/godarklight/DMPUpdater

How do I install it?

Client: Simply extract the zip into GameData. Although I do highly recommend just chucking DMPUpdater in your KSP directory and running it, It will also install DMP.

Server: Extract the zip to a folder (not KSP or GameData). You can then put DMPUpdater next to it and it will happily update the server as well.

Mods?

Read DMPModControl.txt on the server, the file is heavily commented/documented. You can generate a DMPModControl specific for your gamedata setup by starting the DarkMultiPlayer client, hitting options, and then pressing "Generate DMPModControl.txt"

Alternatively, switch Config/settings.txt to modpackMode=GAMEDATA, add yourself as an admin with /admin add playername, and type /upload when connected to the server.

Why did you create this mod?

For one reason only, I want to play multiplayer too!.

What do I do if I find a bug?

* Report it on the github issue tracker

* Get it contact with me directly on discord

Are there any server lists?

Yes. https://d-mp.org/serverlist and the ugly backup list at http://godarklight.info.tm/dmp-serverlist/.

How can I contact you?

Easiest way is discord

Credits:

* TheGimp666 - If it wasn't for KMP, we'd most likely still have insta-locked threads for talking about multiplayer, Squad may-or-may-not be talking about it, and DMP definitely would not exist :).

* RockyTV / JoshBlake / dsonbill - Contributed rather large parts to DMP :)

* Dazoe - I borrowed his chat-doesn't-stage-or-control-the-vessel fix from KMP. It's a nice way of getting around a unity/KSP bug.

* Ryannathans/ChronicSilence - The mod system is implemented nearly the exact same way as KMP. It made sense to remain compatible with the file format.

* Hyperedit / persistent trails - I've referenced off these mods quite a bit during my KMP orbital branch, DMP uses that same orbital mode positioning.

* Wisper - For motivating me to get around to shared science

* The #DMP channel for helping me find any bugs / test new features, especially MrFreake for running a career mode server on the other side of the planet to test networking (And it made me actually play career mode too!).

* Squad: For Kerbal Space Program, and their top-notch API documentation.

Edited by godarklight
Link to comment
Share on other sites

How is this different?

Or is it simply lets try another approach for problems that are with KMP not possible at current state? AKA rewrite it is easier than fix it?

Not that i am complaining, but i would hate it to have two mods with two nice (or hopefully more) things and have to decide which one is worth my time and never get the whole package in one... (if you know what i mean)

Link to comment
Share on other sites

@Nightmare: It still roughly works in the same way as KMP, but KMPServer currently has a few design problems that makes it quite laggy (In terms of CPU/disk usage).

When I started DMP I decided to keep everything I could out of the server and keep everything in flat files so you can actually edit the server database.

I'll still be contributing to KMP ;).

Link to comment
Share on other sites

I'll jump on my server now - It's probably worth at least trying to play with others :)

My server is only 25/5mbit though, on a home connection. So this will be interesting...

EDIT: Scratch that - I need sleep :(

Edited by godarklight
Link to comment
Share on other sites

Had the privilege to test this for the past days, very very cool and for me the most amazing feature is how simple the server is structured, allows for GREAT editing of players, science points if something goes wrong. Rock on man!

We replaced KMP with this and never looked back. (sorry kmp)

Source: Roughly 3 days of Servertime, 4-5 regular players. ARound 150 different vessels, interplanetary.

Link to comment
Share on other sites

My server is only 25/5mbit though, on a home connection. So this will be interesting...

How much upstream do you reckon will you need per user, roughly? I've hosted modded Minecraft servers on a 1 Mbit upstream before, with 3-4 players. Loading times on spawn were a bit long, but there was little to no network lag during general gameplay.

Also, side question: the time progressing while the server is switched off, can you rethink that feature? Regardless of whether your server is meant to run constantly or not, I just cannot think of a scenario where this will not cause problems for people when they are unable to log on because the server is down and they need to keep their painstaking 3-year mission from lithobraking at the destination... as an admin, it sounds like this is more trouble than it's worth.

Link to comment
Share on other sites

@Streetwind, If they aren't in flight, it's about 20-100bytes per second per user.

If they are in flight, it's around 100bytes * 5 updates per second * number of ships around, plus a full update (number of ships around * 30-200kb) per ship every 30 seconds.

A ballpark figure is 10-30kb/s per active user, but if you are sitting in a debris field full of space stations it will be much worse.

EDIT: The time constantly ticking forward is a result of how I've implemented subspaces and client clock-synchronization. DMP uses an NTP-style clock sync to the server, and the universe time is locked to a server clock time. In order to turn this off, I'll need to relock the subspace during the server start.

Edited by godarklight
Link to comment
Share on other sites

DMP Dedicated Servers:

DMPServers.chickenkiller.com:6702 (Stock Sandbox)

DMPServers.chickenkiller.com:6704 (Development Server)

DMPServers.chickenkiller.com:6707 (Combat Server)

Mods Download Link: dropbox.com/s/0x19s700z2oj7u0/GameData.zip

Edited by MrFreake
Link to comment
Share on other sites

I have been playing for some time, i really like it! Though there are some bugs, as recovered vessels don't get deleted, they just stay there! In your sandbox server there's alot of debris and broken craft lol.

I was trying to dock with another guy, it was mostly impossible because of the 2 vessels randomly dissapearing, we never got to dock, but it was a fun experience :)

Link to comment
Share on other sites

I'm testing it out right now on godarklight's sandbox server. So far, so good. How do you spectate?

edit: Got disconnected while trying to meet people at the island runway, couldn't reconnect because "Server closed connection: Client already connected".

Edited by BahamutoD
Link to comment
Share on other sites

@SlimeCrusher: I either have problems with KillVessel or LoadVessel, the bread and butter of a multiplayer mod :-/

@BahamutoD: Try to fly another players active craft. Also, If you get disconnected, the timeout should happen within 5 seconds.

@MoohDragon: It should, but I haven't had anyone test it on mac yet. It definitely works on linux (I'm a linux user), and everyone else from DMP who runs windows reports it works :)

@The Destroyer: The general aim is to be simple, so hopefully those types of bugs don't crop up.

Link to comment
Share on other sites

Works on Mac; works great to connect to your server godarklight! (From NY, USA).

I'm really pleased with how well this works. Now to get my friends to set themselves up, and then host my own server...

Link to comment
Share on other sites

Can't wait to get home and play with bros :)

Tx

With Mods, and the allowed/not allowed addons section in the DMPModControl.txt , is there functionality to include a folder and its sub files? With the excluding of SHA.

eg: MechJeb2/*

Link to comment
Share on other sites

@titanecd: I'll probably might need to write a slightly more clear readme for the mod control.

--resource-blacklist mode (The default)--

Every mod is allowed

Adding the parts to the partlist is enough for private servers - Just make sure you have the same part adding mods installed ;).

For public servers, you would add any part adding mods into the required section (for example, mechjeb adds a part, so that's why it is mentioned).

Optional section for blacklist mode is just about useless, unless you want to enforce a specific version of an optional mod.

You can ban specific mods in resource-blacklist.

--resource-whitelist mode--

Every dll is banned apart from those mentioned in the required, optional or resource-whitelist section (required / optional implies that it's allowed).

You will add part adding mods to required (MJ/Kethane etc).

You would add non-part adding mods to optional (for example, kerbal alarm clock).

There's no wildcard matching though...

Link to comment
Share on other sites

Seems there are more benefits using this one then the other "multi"player plugin, great to see some allternatives! Kudos

"Kerbals are actually synced. Enjoy sending [insert your username here] Kerman to the moooooooon."

So we can eva coopstyle?

Link to comment
Share on other sites

By synced I mean the names are not randomly generated on each server connection. You can name the kerbals in the database (crew manifest should also work).

You should be able to EVA in both KMP and DMP - Although some players (and me) are getting hit with the kerbal-on-a-cross bug. I'll look into this after I implement player-player docking, and a better chat UI.

Flags are also something I neglected to test - I'll fix them shortly too.

Expect 0.1.0.1 in 2-3 days :)

EDIT: Scratch that.

0.1.0.1 is available right now

* Fix a very simple bug that was preventing vessels from being recovered/terminated.

* Add a server option to turn off modcontrol (mainly for private servers).

Edited by godarklight
Link to comment
Share on other sites

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...