Daily Kerbal Bonus Article: Development Relay

Up until now, and including 1.0, KSP development was for the most part horizontal, predominantly adding in features for sandbox and then post-0.18 adding in Career mode features. While there was vertical development in a number of major areas: the VAB/SPH editor, parts, contracts, etcetera, we are now at a point where that becomes the sole focus of KSP development. In other words, we’re at a point in KSP’s development where we’re building upon already existing features to give them even more depth!



This brings us to update 1.1. While there is still a fair chunk of 1.1 to design and plan, we do have a good idea of what we want it to include. While HarvesteR, Mu and Romfarer continue to work on the Unity 5 upgrade, RoverDude, Arsonide and Porkjet have already started planning, designing and developing a few of KSP 1.1’s new features.



RoverDude, specifically, has been working on two features that we’ve been quite eager to tell you all about. Note that these features are still in development and are pending QA playtesting, balancing and feedback as well as community feedback. Additionally, the more challenging aspects of these features will be off or reduced on the lower difficulties in KSP.



The first feature is probe telemetry. With this, a probe must establish a connection back to Kerbin or another ‘control point’ via an antenna part in order to operate - be controlled by the player, or active in any way. These control points are the planet Kerbin, or a craft with an antenna, a pilot Kerbal, and optionally a large probe core.



An example of using pilots as a control point would be a mission over Duna where a piloted command module serves as the remote control point for a landed, unmanned rover. If the player has a non-pilot Kerbal on board, they can still fly the ship, but they would lose access to the probe’s piloting capabilities (i.e. a ship where a player uses a probe core for control, and crews it with a non-pilot).





However, given the length of time a player would have to spend on simulating a relay network around Kerbin in order to ensure that the KSC is always reachable would be significant, we felt it would be better to have Kerbin simulating a Deep Space Network. It’s a ground-based network of relay stations that attempt for complete coverage of Earth. In KSP this is translated to the Tracking Station. As a player upgrades their tracking station, the range of Kerbin’s Deep Space Network will increase, eventually allowing it to receive signals all the way from Eeloo’s closest approach to Kerbin - similar to New Horizon’s range. In this design, the player then only has to send the signal to Kerbin, saving the triviality of waiting for the KSC to be on the facing side and breaking gameplay flow.



At this point, you may be wondering what the second feature is, you may have forgotten about it or you may have figured it out. If it’s the last one, well done! RoverDude’s second feature for 1.1 is antenna relay networks. It extends to range, network pathfinding and soft occlusion of celestial bodies.



In gameplay terms, this means that if you want to send data back to Kerbin, or control your probe while you’re out of range from your control point, the probe will attempt to use relay satellites you’ve set up to communicate with a control point and the pathfinding model will simulate celestial bodies being in the way. Additionally, there’s no direct pointing of antennas, meaning you won’t need to have it pointing at the control point for a connection. The occlusion is slightly fuzzed or ‘soft’ to make it a bit more forgiving, for example Minmus won’t stop you from being able to control your probe around Duna as it passes between you and Kerbin.



To go along with this we’ve also modeled three new advanced antenna parts to serve as relay dishes. They’re heavier than existing antennas, but offer the feature of automated network relaying.



However, relays are not always required due to the nature of the Kerbin Deep Space Network we mentioned earlier. In the current design, it will be completely possible to shoot a signal directly from, say, Duna to Kerbin - with a sufficiently large antenna on your vessel. Though you will likely want to set up relays to deal with occlusion issues mentioned below. One possible use is that you may want to set up a relay network in a Duna polar orbit to allow continuous control to a landed rover.



The relay/signal occlusion is present only for celestial bodies - not vessels or asteroids - and is implemented via analytic geometry. A probe in a low Munar orbit would be blocked while on the far side of the Mun, but a probe sending a signal from Jool would likely not be blocked by Minmus - the soft occlusion angle is fully configurable on an antenna by antenna basis for modders.





We’ve focused on designing these features to be simple and approachable, using inspiration from some of the plugins that have implemented similar features. For example, we opted to have no flight computer, signal delay or antenna pointing. However, there is a clear distinction between the lightweight antennas used for direct communication, and the heavier, more complex antennas used for building up relay networks - the extra mass comes from the hardware required to store and forward data onto the relay network.Another area we’ve made more approachable is the default implementation of a built-in deep space network, where Kerbin has an ever-increasing inferred relay network, similar to what we have on Earth. The range of this network will be decreased if the player is on ‘Hard’ mode, effectively requiring the player to set up their own deep space network. On ‘Easy’ mode, relay, and antennas operate as they do today, with your only limitation being the power constraints and packet size of the antennas themselves. Furthermore, the settings will be exposed in the difficulty settings so they can be toggled in Custom Difficulty.



Of course, science will also be subject to the antenna transmission and relay rules as well, using the same pathfinding rules and access to Kerbin’s Deep Space Network as probes. With the exception that science must trace a control path all the way back to Kerbin.



And there we have it! That’s two of the principal features for 1.1 that will change the way you play KSP, but how much so is very dependent on how you play, what difficulty you play on and your game mode. We’re pretty excited about these features and looking forward telling you more about 1.1 as development progresses; hopefully you are too!



Please feel free to leave comments on any questions and the like that you may have.