https://github.com/lunamultiplayer/lunamultiplayer
Multiplayer mod for Kerbal Space Program (KSP)
https://github.com/lunamultiplayer/lunamultiplayer
dmp kerbal kerbal-space kerbal-space-program kerbalspaceprogram kmp ksp lidgren lmp luna lunamultiplayer mod multiplayer udp
Last synced: about 2 months ago
JSON representation
Multiplayer mod for Kerbal Space Program (KSP)
- Host: GitHub
- URL: https://github.com/lunamultiplayer/lunamultiplayer
- Owner: LunaMultiplayer
- License: mit
- Created: 2016-10-07T13:10:54.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-09-08T23:40:36.000Z (9 months ago)
- Last Synced: 2025-03-29T14:04:39.400Z (about 2 months ago)
- Topics: dmp, kerbal, kerbal-space, kerbal-space-program, kerbalspaceprogram, kmp, ksp, lidgren, lmp, luna, lunamultiplayer, mod, multiplayer, udp
- Language: C#
- Homepage: http://www.lunamultiplayer.com
- Size: 286 MB
- Stars: 464
- Watchers: 33
- Forks: 155
- Open Issues: 67
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
---
---
# Luna Multiplayer Mod (LMP)
*Multiplayer mod for [Kerbal Space Program (KSP)](https://kerbalspaceprogram.com)*
### Main features:
- [x] Clean and optimized code, based on systems and windows which makes it easier to read and modify.
- [x] Multi threaded.
- [x] [NTP](https://en.wikipedia.org/wiki/Network_Time_Protocol) protocol to sync the time between clients and the server.
- [x] [UDP](https://en.wikipedia.org/wiki/User_Datagram_Protocol) based using the [Lidgren](https://github.com/lidgren/lidgren-network-gen3) library for reliable UDP message handling.
- [x] [Interpolation](http://www.gabrielgambetta.com/entity-interpolation.html) so the vessels won't jump when there are bad network conditions.
- [x] Multilanguage.
- [x] [Nat-punchtrough](../../wiki/Master-server) feature so a server doesn't need to open ports on it's router.
- [x] [IPv6](https://en.wikipedia.org/wiki/IPv6) support for client<->server connections, allowing connection setup even behind symmetric IPv4 NAT
- [x] Servers displayed within the mod.
- [x] Settings saved as XML.
- [x] [UPnP](https://en.wikipedia.org/wiki/Universal_Plug_and_Play) support for servers and [master servers](../../wiki/Master-server)
- [x] Better creation of network messages so they are easier to modify and serialize.
- [x] Every network message is cached in order to reduce the garbage collector spikes.
- [x] Based on tasks instead of threads.
- [x] Supports career and science modes (funds, science, strategies, etc are shared between all players).
- [x] Cached [QuickLZ](http://www.quicklz.com) for fast compression without generating garbage.
- [ ] Support for groups/companies inside career and science modes.Please check the [wiki](../../wiki) to see how to [install](../../wiki/How-to-install-LMP), [run](../../wiki/How-to-play-with-LMP), [build](../../wiki/How-to-compile-LMP) or [debug](../../wiki/Debugging-in-Visual-studio) LMP among other things
---
### Troubleshooting:Please visit [this page](../../wiki/Troubleshooting) in the wiki to solve the most common issues with LMP
[](https://github.com/igrigorik/ga-beacon)---
### Contributing:Consider [donating trough paypal](https://paypal.me/gavazquez) if you like this project.
It will encourage us to do future releases, fix bugs and add new features :star:Please write the code as you were going to leave it, return after 1 year and you'd have to understand what you wrote.
It's **very** important that the code is clean and documented so in case someone leaves, another programmer could take and maintain it. Bear in mind that **nobody** likes to take a project where it's code looks like a dumpster.There's also a test project in case you want to add tests to your code.
---
### Servers:You can check [how many servers are up](../../wiki/Master-server-status) and running either in [Release](../../wiki/How-to-get-the-latest-version-of-LMP) or in [Nightly](../../wiki/How-to-get-nightly-builds) versions through our [master servers](../../wiki/Master-server)
| Master server | Release | Nightly |
| ------------ | ------- |-------- |
[Dagger](https://github.com/gavazquez) | [](http://servers.lunamultiplayer.com:8701) | [](http://servers.lunamultiplayer.com:8751) |
Tekbot | [](http://168.119.90.137:8701) | [](http://168.119.90.137:8751) |
[Angryjoshi](https://github.com/Angryjoshi) | [](http://lmp.anschuetznet.de:8701) | [](http://lmp.anschuetznet.de:8751) |
[Bloodfallen](https://github.com/Bloodfallen) | [](http://direct.imexile.moe:8701) | [](http://direct.imexile.moe:8703)|---
### Status:| Branch | Build | Tests | Last commit | Activity | Commits |
| ---------- | -------- | -------- | ------------- | ------------- | ------------- |
| **master** |[](https://ci.appveyor.com/project/gavazquez/lunamultiplayer/branch/master) | [](https://ci.appveyor.com/project/gavazquez/lunamultiplayer/branch/master/tests) | [](../../commits/master) | [](../../commits/master) | [](../../commits/master)---