Jump to content

[0.20] RemoteTech: Relay Network – V 0.5.0.1


JDP

Recommended Posts

[PLUGIN, PARTS, 0.20] RemoteTech: Relay Network – V 0.5.0.1

RemoteTech is no longer in active development. For the latest version of RemoteTech, go to the RemoteTech 2 forum.

Based on The_Duck's Satellite Relay Network and developed with his permission, this plugin implements different types and ranges of antennae and self-built command stations.

main7.png

Download:

Get the core 0.5.0.1 plugin here. (source here.)

Get the probe compatability pack here. (a pack of modified config files to add RemoteTech functionality to the stock probe cores and antennae, using ialdabaoths ModuleManager)

(This plugin is free to use and modify as long as the original authors are credited.

This plugin, and derivatives thereof, may only be hosted on kerbalspaceprogram.com.)

Description

This plugin allows you to construct vast relay networks of communication satellites and remotely control unmanned vessels.

Your remote controlled vessels need a command station to control them, Mission Control at Kerbal Space Center (KSC) is your first command station, with a omnidirectional antenna with a signal range of 5.000 km. But your remote controlled vessels might not always be in the sky above KSC or might be more than 5.000 km away. For your first missions it might be a good idea to have them be manned, that way, your crew has control and you can switch it over to remote control at will.

Which parts are needed for what

Always add a signal processor:

The first thing your vessel will need is a signal processor to process the incoming control signal from a command station. It will also allow other vessels to use yours as a relay satellite.

Signal processors are divided into two types:

RemoteControl: Adds remote control to an unmanned vessel or Debris and makes it part of the relay network.

RemoteControl modules process the incoming signal from a command station and controls the vessel accordingly.

If a RemoteControl module is put on a manned vessel, the crew automatically have direct control of the vessel, though controls can be switched over to let a command station take over.

RemoteCommand: Adds remote control to vessel or Debris, makes it part of the relay network and can give it command over other vessels if it has enough crew.

RemoteCommand modules do all the same things as RemoteControl modules, but in addition they can send out a signal of their own, making the RemoteCommand vessel another command station. RemoteCommand will only be able to send a control signal if it's placed on a vessel with at least 3 crewmembers to actually man the controls (can be changed in the config file).

Always add an antenna:

Once your vessel has a signal processor it will need an antenna to actually receive/send a signal.

There are two types of antennae:

Omnidirectional antennae: for short range communication.

These have a shorter signal range but can send and receive in all directions. The standard antenna has a range of 5.000 km and will do nicely if you're staying close to kerbin. If you are planning to leave Kerbin orbit, you will need to use a satellite dish.

Be sure: that you have a line of sight to a command station (For example Mission Control at KSC), or a satellite relay network in place to route the signal to you.

Satellite dishes: for long range communication.

These have a longer range (their signal reaches from Kerbin to at least well beyond the orbit of Minmus) but need to be pointed at another satellite dish in order to have signal connection (this can be done through the settings menu). Ideally, you should have a relay network in orbit of vessels with a RemoteControl module, an omnidirectional antenna and a satellite dish.

If you have two vessels that are far apart (for example one in orbit around Kerbin, and one around the Mun) you don't need to precisely point them at each other, it's enough to point them at each others planets.

Be sure: that your dish is pointed at a vessel that has a dish pointed back at you.

Be aware: that you can point a dish at an omnidirectional antenna. It will boost the range of the antenna by x2 (a standard antenna would have a range of 10.000 km with any vessel that points a dish at it).

Changing RemoteTech settings

The first time RemoteTech runs, it creates a config file (Settings.cfg) in you KSP folder in:

\PluginData\remotetech

You can open this in a text editor such as notepad. The available options should be self-explanatory.

You can also press <modifier key> + f11 to access the settings in-flight.

Adding RemoteTech functionality to parts

Here is a detailed overview of the RemoteTech PartModules, their function and their variables together with default values.

Credits and thanks:

The_Duck: For creating the original plugin upon which this is based.

gresrun: For the pathfinding algorithm.

Tosh: For plenty of inspiration and part creation (rhyme intended).

rkman: For parts and “keepin' it realâ€Â.

NovaSilisko: For the Probodobodyne antennae.

r4m0n: For donating the MechJeb PID controller.

Alchemist: For eureka-inspiring insight.

Kreuzung: For making sense of PartModules.

The community: For being all round awesome, and notably for doing a lot of work making RT 0.17 compatible. To mention just some of the awesome people:

  • SpaceghÈ«st.
  • Tomato.
  • BoJaN.
  • Mortaq.

Cheers

-JDP

Edited by JDP
Link to RemoteTech 2 thread
Link to comment
Share on other sites

Yeah, I just saw it. I was already thinking about implementing something like it: RemotePower.

It wouldn't primarily be about transfering fuel, but electrical energy. That way functional base construction is finally feasable. Dedicated power generators could send power to fuel refineries, life support, very long-range satellite dishes and so on. I think these things would be good to have by 0.17 when the Kerbol system gets a whole lot larger.

Link to comment
Share on other sites

So, this is essentially The_Duck's Relay Mod, Version 2.0, no? All the old features and a bunch of spiffy new ones?

Yep, that's pretty much it. Though i had to rewrite a lot of The_Duck's code to make all the extra features work. So i chose not to call it the same just so people wouldn't mix the two together. The_Duck's code is much more elegant than mine and mine still has some kinks to be ironed out. In short, I didn't really wan't to usurp The_Duck's project by setting mine up as a sequel to it.

I still don't understand wath the plugin does.

It let's you make a satellite relay network through which to control unmanned vessels. It also let's you launch multiple unmanned vessels as one and decouple them later in the flight. You could for example launch a big mun lander with 4 small rovers attached to it. On landing you could decouple the rovers and still be able to control each of them, provided they are in signal range.

In the satellite relay network department, my version differs from The_Duck's in that i take the individual range of each antenna in consideration and has a new type of antenna (the satellite dish) that only works if you have two satellite dishes pointed towards eachother or eachothers planets. Given that the signal range of the normal antennas don't even reach the Mun, you will have a little bit of an extra challenge in setting up your relay network.

In my version you could also, for example, launch a manned vessel with a RemoteControl part on it in orbit around the Mun and then it would be the missin control for your Mun rovers (if it's in signal range).

I hope i explained it more clearly this time :)

Link to comment
Share on other sites

Another note. And an important one this time:

Be careful with having the settings menu open when you decouple. It can crash your game, and has just crashed the game of my devoted alphatester (yours truly). Aparrently i overlooked something that throws a NullReferenceException under certain circumstances when you decouple and have your settings menu open. I'm working on fixing it right now and think I have a full understanding of what generates the problem. I'll post a v0.31 as soon as I'm done testing it.

(edit)

Aaand its done. Went all the way to the Mun, tried my worst to recreate the problem but the fix caught it.

I made another small little addition to the settings menu while i was at it; now you have the ability to cancel your changed settings.

I've changed the download link to point to the newest version of the plugin.

Edited by JDP
Link to comment
Share on other sites

Fantastic! Awesome work! Thanks duck and jp. I'll now ask that pesky question some is bound to ask sooner or later ... Can it be changed to require power from batteries. ;)

You're welcome :). Yeah I was thinking about something like that. There are however some challenges. I would like to not only calculate the energy consumption and generation of my controlled vessel, i want to calculate it for all vessels in the relay network. That seems very hard to do to me right now. Basically, as far as the game is conserned, vessels that are too far away don't really exist. I certainly don't know of any way in which they can run any code. I do kind of have an idea for a workaround based on the way i currently communicate with vessels who don't really exist, but would be very complicated to implement. Smarter men and/or women than me need to do the fieldwork in the electrical API field. I hear that it's coming. When it does, i think i will add power consumption to this plugin.

would like to do more with power, not only with the ever requested power consumption. But also power transfer. As i wrote earlier today i see wireless power transfer as a vital part in making functional and modular bases possible.

Another key feature would be fuel generation out of something like Munar soil, much like the current Munar zoxygene generator.

I envision vast Munbases complete with powerplants, fuel refineries, huge interplanetary command centrers, life-support modules and crew quarters.

Link to comment
Share on other sites

I think you're being ambitious, which is great, but start simple.

Forget what is on the other satellites and just focus on the craft that has focus. If the current craft has no 'fuel' in the batteries, then disable the buttons on the interface to simulate a loss of control. :) This will make us take batteries and panels so we can do things when switching to different satellites. :)

Link to comment
Share on other sites

Well i like being ambitious :D. If i wasn't, i would never have started this project.

But maybe you're right. I'll do some research into how exactly to interface with another plugin, and which plugin i want to use. Then i need a way to make it an optional feature. I would find it awesomely challenging to have to supply electricity to my unmanned vessels, but some might not.

If the current craft has no 'fuel' in the batteries, then disable the buttons on the interface to simulate a loss of control.

Thankfully that bit is very easy. I already simulate a loss of control every time a vessel is out of range. But for this, i might want to up the ante a bit graphically. It would be very easy to both disable the vessel controls and simply make the entire GUI go blank, save one blinking red message: "Out of power!". You should really feel that you're in trouble when you loose all power in the middle of empty space.

I'll look into it, but first i need to be done with the main task. I still need to keep a check on any more bugs in the plugin and i need to find out how to implement a config file for the entire mod. I'd like to make it possible again to set your own custom coordinates and world of the main mission control, plus the speed of light.

Link to comment
Share on other sites

Whoa, I've been working on something quite like this, only without the awesome relay network stuff... good thing I noticed this before I spent a whole lot of time on it! :D

This looks very cool, I'll be trying it in a moment! ;)

Link to comment
Share on other sites

Coming out of energy is very hard in my opinion with solar panels bringing half the energy the engine consumes... Maybe we just need more energy-consuming stuff. BTW, does it still recognize the PowerSat and DynaSat?

Link to comment
Share on other sites

In the satellite relay network department, my version differs from The_Duck's in that i take the individual range of each antenna in consideration and has a new type of antenna (the satellite dish) that only works if you have two satellite dishes pointed towards eachother or eachothers planets. Given that the signal range of the normal antennas don't even reach the Mun, you will have a little bit of an extra challenge in setting up your relay network.

Wait, so do the dishes just have to face each other no matter what the distance (ISS to a Mun Rover, for example) for them to work?

Link to comment
Share on other sites

Could you perhaps work on a version that removes the signal delay, so maybe have a settings file that'll enable/disable it? From a simulation perspective it's an engaging feature but from a game play perspective kerbals and rockets are infinitely cheap so the delay punishes the player while providing comparatively minimal benefit.

Link to comment
Share on other sites

Coming out of energy is very hard in my opinion with solar panels bringing half the energy the engine consumes... Maybe we just need more energy-consuming stuff. BTW, does it still recognize the PowerSat and DynaSat?

It does recognize both Powersat and Dynasat. But since neither of them save any information of antennatypes available to them, it doesn't recognize any antennae on them and hence they are not useble as relay nodes. for now, You could fix this by strapping an antenna or two on them. If that's possible that is.

To be honest i was kinda setting my hopes on you when it came to energy. My preliminary idea is for RemoteTech equipment to have a very low use of energy. Probably a bit more if its a very long-range class of antenna. The plan was to make sure players could use it alongside zoxygene, which would have to have a much higher energy drain. Then we would have created two different types of missions: low-energy unmanned missions and high-energy manned ones.

Link to comment
Share on other sites

Wait, so do the dishes just have to face each other no matter what the distance (ISS to a Mun Rover, for example) for them to work?

in calculating if two satellites are in signal range i do one of three things:

1: if they both have normal antannea i check if the distance between the two is less than the antenna range of both of them

1: if they don't both have antennae or are out of range, i check if they are orbiting two different bodies and have dishes pointed towards eachothers bodies. And then the obligatory range check.

2: if that doesn't give me a result i finally check if they are pointed at eachothers vessels, here it should not matter whether they are orbiting different bodies or not.

Link to comment
Share on other sites

I haven't done a lot of testing but I put one 'antenna' in orbit then put a crewless craft on the launch pad. The crewless pod had no signal. I was expecting the KSC to provide a signal. I haven't done much testing but is KSC still a ground control? It's entirely possible I've used the wrong parts.

Link to comment
Share on other sites

I seem to be having a problem.

Basically, I'm entirely new to the whole comsat idea, so just to test it out I built a little design with an omnidirectional antenna and put it in orbit. To see if it worked, I added a controllable module to the stage before it, which ends up orbiting pretty much right next to the comsat. I assumed that the newly-made debris would pick up the signal from the comsat it detached and I'd be able to control and deorbit it, but that doesn't seem to be the case. The remote-controlled part says something like 'No RC signal' and the actual satellite says the same thing, and neither are controllable.

Here's a pic:

9aA1m.png
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...