Luna Multiplayer Mod (LMP)
Multiplayer mod for Kerbal Space Program (KSP)
- Clean and optimized code, based on systems and windows which makes it easier to read and modify.
- Multi threaded.
- NTP protocol to sync the time between clients and the server.
- UDP based using the Lidgren library for reliable UDP message handling.
- Interpolation so the vessels won't jump when there are bad network conditions.
- Nat-punchtrough feature so a server doesn't need to open ports on it's router.
- IPv6 support for client<->server connections, allowing connection setup even behind symmetric IPv4 NAT
- Servers displayed within the mod.
- Settings saved as XML.
- UPnP support for servers and master servers
- Better creation of network messages so they are easier to modify and serialize.
- Every network message is cached in order to reduce the garbage collector spikes.
- Based on tasks instead of threads.
- Supports career and science modes (funds, science, strategies, etc are shared between all players).
- Cached QuickLZ for fast compression without generating garbage.
- Support for groups/companies inside career and science modes.
Please visit this page in the wiki to solve the most common issues with LMP
Consider donating trough paypal if you like this project.
It will encourage us to do future releases, fix bugs and add new features
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.