Jump to content

DarkMultiPlayer 0.3.8.0 [KSP 1.12.0]


godarklight

Recommended Posts

@Talavar: I'll see if I can poke the docking bug today, Nothing changed in the way of docking as far as I can see, but it may be possible that 2 craft manage to dock at the same time due to the position fix (perhaps). I'll have to pick one as the new pilot and only let one docking happen at a time, instead of both in both update weirdness that can happen now ;)

Aswesome! Honestly, if the docking bug and loss of control is worked out, All else will be fine on our end. :D .. I only wish I could help you in some way. Back, long ago when dinosaurs roamed the Earth, I was a programmer. Unfortunately, my knowledge of rolling around a stone wheel ended up being the end of my learning experience. (stopped keeping up with new languages about 12-15 years ago). I might just have to pick up a few dummy guides and get started with all the new stuff. Been tossing the Idea around since I started playing KSP with mods.

Link to comment
Share on other sites

@Talavar: I could show you around DMP, but it's easier to come visit me on IRC ;).

As for programming itself, I wouldn't dare try to learn C or C++, those languages seem painful to get anything done :).

I'm actually completely self taught (which probably reflects in my code), and actually come from a bash/php background (with a bit of visual basic many years ago). C# is very similar to java (although I have never used java), but C# is syntax isn't too difficult if you've had experience with basically any language. If programming was my job, I probably wouldn't like it as much as I do :P

The biggest way anyone can help though is bug reports with reproduction steps, "I tried docking to a player that was in the future and my vessel disappeared when I synced" (Yes, this does happen, and I'll get there, time paradoxes can be fun).

As far as 0.1.5 is concerned, my biggest targets are "players explode while they are near each other", and "docking to another player causes an explosion", which is something that I don't believe happened in 0.23.5 (at least not as badly).

Link to comment
Share on other sites

@godarklight - Thanks for clearing that up, makes perfect sense and it appeared I was over simplifying it!

Also while I have you here - should it be possible with DMP for myself and a friend to EVA around the same station (on the MUN) at the same time? I only ask as we are seeing heavy glitching with each player seeing the other as being half stuck in the earth and twitching a alot?

We are using TAC and the Kolonization mods if that helps.

Cheers!

Link to comment
Share on other sites

I spoke too soon. I must to start the server via SSH but if I close Putty, the DMP stops. I have to keep my pc turned on 24hours/7days?

I run this on a virtual machine at home. You can keep it running by using the "screen" program.

just search google for "linux screen", you should be able to install it using your package manager.

Best regards,

Wouter

Link to comment
Share on other sites

I spoke too soon. I must to start the server via SSH but if I close Putty, the DMP stops. I have to keep my pc turned on 24hours/7days?

You can use screen or tmux to keep dmp running after disconnect from ssh. I prefer tmux if you ask me :)

Salud.

Link to comment
Share on other sites

@Lamper: It *should* be possible, if it's not then I have positioning bugs to work out :wink:. The twitching is caused by the position updates coming in, but it looks like DMP (most likely) or KSP (not as likely, but possible) is having trouble placing things accurately enough.

The mods shouldn't affect positioning. DMP generally tries to act how you would expect for a multiplayer mod, and anything you can't do in multiplayer that you can do in stock singleplayer is a bug. The one exception is the handling of subspaces/updates, where things from the past affect the future instantly, but things from the future are held until your time passes the update.

@Preliator/agises: +1 for screen:


#Start
screen -dmS DMPServerDevelopment mono DMPServer.exe

#Attach to the screen
screen -rS DMPServerDevelopment

#Detach from inside screen
(ctrl+a, d)

#Stop from inside screen
/quit reason
-or-
ctrl+c

#Stop from outside screen
screen -S DMPServerDevelopment -p 0 -X stuff "/quit Stopping server\n"

Link to comment
Share on other sites

Thank you both :) Thanks to a friend we resolved in another easier way with the command

nohup /opt/mono/bin/mono /root/DMPServer/DMPServer.exe &

Ps: how can I see all detail from the SSH? (the same that I saw before without nohup command) for example: I want so see how many people are connected without open KSP and connect to the server.

Ps2: how to compile the file DMPAdmins.txt, DMPIPBans.txt etc?

Edited by Preliator
Link to comment
Share on other sites

I have a question about a future feature. Since the server is already accessing the persist file, would it be possible to write a server plugin that "transfers" funds from player X to player Y? I imagine it working something along the lines of parsing out the funds amount from player X, deducting an amount then saving the new value, and doing the reverse for player Y.

Link to comment
Share on other sites

I have been trying to get some friends to download this multiplayer mod. Thing is, for some reason, for them it is not letting them play their saved games when the mod is installed. They get an error saying incompatible/invalid data. They remove the mod and everything works again. You can see how this makes my friends not want to have the mod installed and don't want to move it in and out of their KSP directory. This does not happen to me, I do not know why it is happening to them. Is there a way to install it so this does not happen? I would like to play with my fellow Kerbians but it is hard to do when an error like this makes them not want to use it.

Link to comment
Share on other sites

@Talavar: I could show you around DMP, but it's easier to come visit me on IRC ;).

As for programming itself, I wouldn't dare try to learn C or C++, those languages seem painful to get anything done :).

I'm actually completely self taught (which probably reflects in my code), and actually come from a bash/php background (with a bit of visual basic many years ago). C# is very similar to java (although I have never used java), but C# is syntax isn't too difficult if you've had experience with basically any language. If programming was my job, I probably wouldn't like it as much as I do :P).

I actually DID grab a copy of C# for dummies earlier today. I have never witnessed a more long-winded piece of "work" in my life. I got through 4 chapters before I learned anything at all. So I did the next best thing... I'm studying open code. Seems to be the best route. I've discovered that all I need is the correct syntax. nothing has really changed... It's just like basic, only it learned some new moves.. lol

Edited by Talavar
Link to comment
Share on other sites

@PringleMan: I have no idea to be honest - DMP only loads the science once and I've never actually tested another load after the game has started. It could work, or it might not. It definitely should be possible though...

You might also be interested in shared science, I'll integrate that from JoshBlake's custom branch after groups / vessel permissions are in dev - He had it working in 0.23.5 (shared kethane and everything too!).

@KerbinUser: If the server is running in blacklist mode (the default), all mods are allowed. If this is your own server, you can simply hit options -> generate blacklist DMPModControl.txt and copy if from your KSP folder to your server folder.

@Talavar: DMP can get a little confusing in some areas, so I'll gladly point you in the right direction. Also, I do some pretty strange things which might need explaining :P

After typing (although visual basic did have this, I remember dim blah as type was optional) and semicolons become second nature, it shouldn't be too hard to work out most areas do :). The biggest problem is the lack of a debugger, I generally resort to (the equivalent) of sprinkling UnityEngine.Debug.Log absolutely everywhere.

Link to comment
Share on other sites

Here a big post in italian about DMP. Use google translate to translate all the post. Tell me if I wrong something. There is also the section "Know bug".

http://www.kerbalspaceprogram.it/32-multiplayer

Hope this can help you :)

Ps:

Thank you both k_smiley.gif Thanks to a friend we resolved in another easier way with the command
nohup /opt/mono/bin/mono /root/DMPServer/DMPServer.exe  &

Ps: how can I see all detail from the SSH? (the same that I saw before without nohup command) for example: I want so see how many people are connected without open KSP and connect to the server.

Ps2: how to compile the file DMPAdmins.txt, DMPIPBans.txt etc?

Edi: why I can not see my server in server list?

Edited by Preliator
Link to comment
Share on other sites

@UAL002: I guess it's a common affliction with us multiplayer devs :P

@Preliator: Google translator isn't the best, but I get the gist of what google is trying to tell me. It does provide instructions, and warping whenever is fine due to subspace. DMP *isn't* very stable for 0.24 yet however :(

To get the server to appear online in the list, you'll need to open up your HTTP port and port forward that / enter that in the database. Also, I've just realised my new scraper has one hell of a bug, so I'm restoring my serverlist backup...

Link to comment
Share on other sites

@godarklight I believe you misunderstood what I said. No one even wants to try to connect to a sever. Once they put the client in their KSP directory it corrupts all their saved games. That's the issue. Your telling me generating a blacklist file will fix their corrupted saves when they never even joined a server?

Link to comment
Share on other sites

@Preliator: To appear on the server list, the HTTP status port must be enabled and reachable (if you're behind a router, you need to port forward).

By default it is off, you can enable it by opening DMPServerSettings.txt and changing: "httpport,0" to "httpport,8081"

@KerbinUser: That's the first time I've heard of this (apart from an earlier version that clobbered the last save on a failed connection), and that's an insanely serious bug if DMP really does cause this. If possible, can you upload an KSP_folder/KSP_Data/output_log.txt of this happening to a site like pastebin, along with any other information like reproduction steps? - I'll also recommend trying to catch me on IRC for something this serious.

Link to comment
Share on other sites

I would be happy to work with you on this issue. I will need some time to get the output log files from my friends to upload for you. I am unsure of what IRC is. If you could give me a link or a description of what it is or how to use it I would appreciate that.

Link to comment
Share on other sites

Hello,

Port 8081 is already in use on my public ip, I have set the http port in DMP to 6701, is it possible to get it into the server list this way?

On the console i see this messages appearing:

[17:13:15][iNFO] : New client connection from 202.173.175.123:40196

[17:13:15][DEBUG] : Online players is now: 0, connected: 1

[17:13:15][iNFO] : Disconnecting client Unknown, sent CONNECTION_END (Invalid DMP message. Disconnected.) to endpoint 202.173.175.123:40196

[17:13:15][iNFO] : Invalid DMP message from 202.173.175.123:40196

[17:13:15][DEBUG] : Online players is now: 0, connected: 0

Thanks!

Wouter

Link to comment
Share on other sites

Im trying to get a server going but my friend is having trouble connecting, we are using hamachi (I was unable to open ports on my router) and it is successfully tunneling, the problem is every time my friend tries to connect to my server; the server gives me :

Error handling HANDSHAKE_REQUEST from Unknown, exception: System.ArgumentException: Illegal characters in path.

at System.IO.Path.Combine(String path1, String path2, String path3)

at DarkMultiPlayerServer.ClientHandler.HandleHandshakeRequest(ClientObject client, Byte[] messageData)

at DarkMultiPlayerServer.ClientHandler.HandleMessage(ClientObject client, ClientMessage message)

[15:12:44][iNFO] : Disconnecting client Unknown, sent CONNECTION_END (Server failed to process HANDSHAKE_REQUEST message) to endpoint

Can anyone translate that into something i can understand/fix?

Link to comment
Share on other sites

@Vanguard-01

I had all these error messages, and this is how I fixed them. *Note* I do not know if these are the only issues that cause these error messages.

Handshake Error = not using same versions

Your server, and your friends client, are two different versions. The versions must match for them to "Handshake". In your server folder you will find a file called git-version.txt. In your friends KSP directory, in the GameData folder, he will also find a get-version.txt. Both your git-version.txt and his get-version.txt files must match. You both must have the most recent development build to play on the most recent KSP update.

Unhandled Exception = firewall/antivirus not allowing the server (this also applies to the client if KSP.exe is not allowed through the firewall)

Programs sometimes need exceptions to do what you want them to do when dealing with the internet. In the case of the server, DMPserver.exe needs an exception. In the case of the client, KSP.exe needs an exception.

Failed To Connect = Port is not open

To open ports you must forward them. On the bottom or the side of your router you will find the make and model. Then google "Router Make and Model Port Forwarding" for a guide.

*Note* Again I say I do not know if these are the only issues that cause these errors. This is just how I solved them.

Edited by KerbinUser
Link to comment
Share on other sites

@Kerbin User

Thanks for the tips, but alas no avail. My friend and i have the same version (1.5.0); I've yet to have an unhanded exception error, and i tried opening the ports previously, but my old linksys router does not seem to open ports (even though it says it has) no matter what I try, hence the reason I'm using hamachi to connect to him.

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