Jump to content

[0.20] RemoteTech: Relay Network – V 0.5.0.1


JDP

Recommended Posts

So I know RemoteTech 2 is just around the corner, but I just can't bear playing KSP without a (mostly) stable RemoteTech version. To solve my issue, I decided to make a couple quick fixes for version 0.5.0.1 that address the most annoying compatibility problems with 0.21.1:

- Flight computer now recognizes all new reaction wheel modules when calculating available torque. This will allow the flight controller to properly control your rockets without burning away all your RCS. Note that the flight computer does not actually calculate the available torque in the direction it plans to rotate, but rather it averages the pitch, yaw, and roll power of the reaction wheel module.

- KSP default SAS and Flight Computer KillRot can now be toggled independently. Flight Computer KillRot is now only enabled by pressing the GUI button (SAS shortcut key will only toggle default KSP SAS).

The code is hosted on GitHub. I've sent a pull request to the main repository, but I understand if you don't want to take on the responsibility of maintaining 0.21.1 compatibility with RemoteTech 2 so close and much work to be done. For people who'd like to try out my fixes without compiling themselves, I've hosted the modified RemoteTech.dll file here. To install, just drop that file under "GameData/RemoteTech/Plugins" (it should replace the existing one).

These are really just my own band-aid fixes and I haven't tested them too extensively, so use these at your own risk. If you're concerned about downloading a DLL from an untrusted site (as I probably would be), I encourage you to build the fixes from source.

Link to comment
Share on other sites

ok so I have a SAT in orbit and its right above command with Dish pointed right at it and no signal. Flight computer had a command off in queue and when I cancel, I get a cancelling command but nothing happens even when the is a manned ship docked with it. There was also a command that said delay was "infinatlys" - yes that's how it was spelt. so can some one tell what I'm doing wrong or perhaps point me to some remote tech 2 documentation, because it is a lot different then the first one. many thanks.

Edit: seems to have fixed its self and is making a connection now..

Edited by Thydread
Link to comment
Share on other sites

i test this mod yesterday with version .21 and i like it. but it's verry bugy.

would be cool the issues will be fixed soon, so atm the mod is not realy playable.

want to use them as one of my default mods.

at least: thanks for your mod :)

Link to comment
Share on other sites

which version did you test? the new test-version (2.0) or the original/stable version, that isn't working correctly with .21 (unless you used what I presume is a community fix from the last page)?

The test-version is meant for testing (obviously) and known to be buggy, the old (stable) version doesn't support .21, and since it's being reworked entirely at the moment, the time required to fix up the old version as a temporary measure is probably better spent finishing the new version...

Link to comment
Share on other sites

There need to be three types:

1) unmanned ops (no relay, just delay. minimal mass and no electric requirement since this is included in the resources for stock command module unmanned operations) Your module only needs to add the delay and disconnect operations if out of contact. Add module to stock probes with modulemanager.dll (no part needed)

2) unmanned capable with relay (relay requires a powered transmission which means power supplies and mass - significant mass and electric requirement when adding part)

3) command transmitter (relay-capable if less than 3 crew, command capable if 3 or more, significant mass and electric requirement when adding part

Make relay and command transmission toggle-able to reduce electric requirement to unmanned requirement if desired.

How about a 4th type? A short-range command unit for rover control only (not relay capable, minimal mass and electric requirement) to attach to the top of landers.

Link to comment
Share on other sites

So I know RemoteTech 2 is just around the corner, [it's too long to wait so the old one needs to be updated to .21]

- Flight computer now recognizes all new reaction wheel modules when calculating available torque. ...

- KSP default SAS and Flight Computer KillRot can now be toggled independently. Flight Computer KillRot is now only enabled by pressing the GUI button (SAS shortcut key will only toggle default KSP SAS).

These are really just my own band-aid fixes and I haven't tested them too extensively, so use these at your own risk.

Agreed that RT2 is way too buggy to be playable and is a long, long, long, way from being a release candidate. The old one must be brought to .21 compatible. Thank you for your effort so far. I was re-working the RT configs to be .21 compatible and in-line with stock part values and noticed that I couldn't enable SAS on a ship with the RT module (running under your modified dll). The most basic switch to a .21 config is to change part type from CommandModule to Part, remove old SAS values, and ensure SAS module and Reaction Wheel modules are defined. Under the old RemoteTech.dll, I could toggle SAS but couldn't get the flight computer to rotate the craft. I never noticed that didn't work with .21 because I use MechJeb to steer instead of the delayed flight computer. Could you get your modded dll to work with the modified configs?

Modified RemoteTech .21 configs available here: http://ronwelch.net/images/RT%20.21%20configs.rar

They will be included in the upcoming update to "RemoteTech and MechJeb for All". I'm working on .21 configs for all the other mods it supports. Most say they are .21 compliant but have .20 leftovers or horrible resource balance.

Link to comment
Share on other sites

Is there any news for the RT2 development? There hasn't been a commit in 3 weeks and pull requests seem to be not welcome at the moment. Kinda sad to be stuck to between not having RT1 for .21.1 and RT2 being in it's unfinished state. This mod is amazing and it really feels lacking to use KSP with out it.

Edit: Guess my post is redundant, didn't see the above post.

Edited by PatriotBob
Link to comment
Share on other sites

Agreed that RT2 is way too buggy to be playable and is a long, long, long, way from being a release candidate. The old one must be brought to .21 compatible. Thank you for your effort so far. I was re-working the RT configs to be .21 compatible and in-line with stock part values and noticed that I couldn't enable SAS on a ship with the RT module (running under your modified dll). The most basic switch to a .21 config is to change part type from CommandModule to Part, remove old SAS values, and ensure SAS module and Reaction Wheel modules are defined. Under the old RemoteTech.dll, I could toggle SAS but couldn't get the flight computer to rotate the craft. I never noticed that didn't work with .21 because I use MechJeb to steer instead of the delayed flight computer. Could you get your modded dll to work with the modified configs?

Modified RemoteTech .21 configs available here: http://ronwelch.net/images/RT%20.21%20configs.rar

They will be included in the upcoming update to "RemoteTech and MechJeb for All". I'm working on .21 configs for all the other mods it supports. Most say they are .21 compliant but have .20 leftovers or horrible resource balance.

I'll certainly give it a shot, but I'm actually not at all sure why my current changes aren't already working with the new config file format. It's possible you might have hit an unrelated bug in the existing RemoteTech code. A little more information would really help me debug this. When you say you couldn't toggle SAS, you mean the KSP stock SAS and not the Flight Computer KillRot function, right? Can you still toggle the KillRot using the button in the Flight Computer GUI? What RemoteTech enabled parts did you have on your craft? I've only tested my changes on stock KSP parts with the RemoteTech stock part compatibility patch, so I might be missing issues with the new RemoteTech parts. If you could post a .craft file or some save files that I can use to quickly reproduce the issue it would go a long way toward fixing it. In any case, thanks for testing out my changes, it's always great to have another set of eyes looking for problems :)

Edited by DBrickShaw
Link to comment
Share on other sites

I was wondering as well if he had stopped for a bit since been awhile. Not sure if the fact in .22 they are adding some sort of comm is related? (I doubt it's too the same depth that RT2 is though.) When I noticed dev had stopped for a few weeks and when the .22 video mentioned functioning antennas, I was 1/2 hoping they hired them to integrate RT2 into KSP :)

Link to comment
Share on other sites

I was wondering as well if he had stopped for a bit since been awhile. Not sure if the fact in .22 they are adding some sort of comm is related? (I doubt it's too the same depth that RT2 is though.) When I noticed dev had stopped for a few weeks and when the .22 video mentioned functioning antennas, I was 1/2 hoping they hired them to integrate RT2 into KSP :)

Exactly, that's what I thought, too.

Link to comment
Share on other sites

I'll certainly give it a shot, but I'm actually not at all sure why my current changes aren't already working with the new config file format. It's possible you might have hit an unrelated bug in the existing RemoteTech code. A little more information would really help me debug this. When you say you couldn't toggle SAS, you mean the KSP stock SAS and not the Flight Computer KillRot function, right? Can you still toggle the KillRot using the button in the Flight Computer GUI? What RemoteTech enabled parts did you have on your craft? I've only tested my changes on stock KSP parts with the RemoteTech stock part compatibility patch, so I might be missing issues with the new RemoteTech parts. If you could post a .craft file or some save files that I can use to quickly reproduce the issue it would go a long way toward fixing it. In any case, thanks for testing out my changes, it's always great to have another set of eyes looking for problems :)

I posted a copy of the modified RT parts for you to see for yourself what problems are arising. It happens with all the modified (to .21 compat) command modules and probes, including the stock probes with the ModuleManager.dll probe compatibilty patch. The most basic change from .20 to .21 is that part type changed from "CommandModule" to "Part" and the old-school SAS feedback info (Ki Kp) was removed. With your dll, I can't toggle the stock SAS but the flight computer does work and overrides manual input. The FC should be made to work with the RCS if enabled as well as the ReactionWheels like MechJeb 2.09 does (take a look at the MechJeb 2 code). Many modules/ships don't have enough (or any) ReactionWheel torque to push them around. They, instead, use RCS. I included a test rocket for you. It's the one I use to establish my COMNET around Kerbin. I park three at 74km and send them in elliptical orbits out to 4,200,000m. After they're up, you can get your unmanned COMSATs up without losing contact with KSC. Also test using this rocket but change the torque values for the capsule and blue&white RT module to .01 and slap some RCS on the capsule and the base of the final stage tank to see if the FC can push it around with RCS instead of ReactionWheel torque.

Between my part files and your dll, the old RemoteTech should be .21 compatible.

Modified RemoteTech .21 configs available here: http://ronwelch.net/images/RT%20.21%20configs.rar

Link to comment
Share on other sites

... Between my part files and your dll, the old RemoteTech should be .21 compatible.

Modified RemoteTech .21 configs available here: http://ronwelch.net/images/RT%20.21%20configs.rar

Oinker, DBrickShaw, thank you both. I have used both the .dll and the configuration changes and have the old version of RemoteTech working reasonably well. I have not tested it thoroughly, but the key functionality of delay times, line of sight, antenna range, and signal relaying seem to be functioning as they used to. Probes with RT are using the new SAS correctly. I haven't touched the flight computer, yet.

Link to comment
Share on other sites

I posted a copy of the modified RT parts for you to see for yourself what problems are arising. It happens with all the modified (to .21 compat) command modules and probes, including the stock probes with the ModuleManager.dll probe compatibilty patch. The most basic change from .20 to .21 is that part type changed from "CommandModule" to "Part" and the old-school SAS feedback info (Ki Kp) was removed.

This part should already be handled fine, as my code actually looks for both the old "ghost torque" method used in RemoteTech 0.5.0.1 and the ReactionWheel modules when calculating the torque available on a ship.

With your dll, I can't toggle the stock SAS but the flight computer does work and overrides manual input.

Odd... I'll certainly look into this.

The FC should be made to work with the RCS if enabled as well as the ReactionWheels like MechJeb 2.09 does (take a look at the MechJeb 2 code). Many modules/ships don't have enough (or any) ReactionWheel torque to push them around. They, instead, use RCS.

This should already be working I think (even the unmodified 0.5.0.1 RemoteTech flight computer works fine with your RCS enabled).

I included a test rocket for you. It's the one I use to establish my COMNET around Kerbin. I park three at 74km and send them in elliptical orbits out to 4,200,000m. After they're up, you can get your unmanned COMSATs up without losing contact with KSC. Also test using this rocket but change the torque values for the capsule and blue&white RT module to .01 and slap some RCS on the capsule and the base of the final stage tank to see if the FC can push it around with RCS instead of ReactionWheel torque.

Thanks very much. I should have some time tomorrow to try to sort out your SAS issues.

Link to comment
Share on other sites

...It happens with all the modified (to .21 compat) command modules and probes, including the stock probes with the ModuleManager.dll probe compatibilty patch ... I included a test rocket for you. It's the one I use to establish my COMNET around Kerbin. I park three at 74km and send them in elliptical orbits out to 4,200,000m. After they're up, you can get your unmanned COMSATs up without losing contact with KSC. Also test using this rocket but change the torque values for the capsule and blue&white RT module to .01 and slap some RCS on the capsule and the base of the final stage tank to see if the FC can push it around with RCS instead of ReactionWheel torque.

So I just got a chance to test out my DLL with your updated configs, and I can't reproduce any of your issues. Using your provided .craft file, my SAS works fine, and when I add RCS to the craft the RCS thrusters are fully utilized by the flight computer. Have you tried temporarily removing all your other mods and testing with RemoteTech in isolation? Maybe something like MechJeb might be interfering with your SAS? I say this because unless I've misunderstood the RemoteTech code somehow, my modified version should not be modifying your stock SAS state in any way whatsoever. I removed the control locks that RemoteTech previously placed on the SAS, and the only point of interaction is that RemoteTech will read the current SAS state to allow SAS actions to be applied without communication delay.

Link to comment
Share on other sites

I never used this mod before 0.21.1 can someone briefly explain how the old version with DBrickShaw/Oinker fixes would be better than RT2?

RT2 seems to function correctly with respect to 1) requiring a signal pathway, 2) input delay (though this is a bit wonky sometimes). The flight computer is a bit odd at times and. Giving it a command to hold prograde for instance requires manually turning, but the computer will only allow change toward the vector your asked for, and once it reaches that vector it prevents you from turning away.

Link to comment
Share on other sites

this needs to be integrated with kOS.

preferbly with it so you need actual sensors on the craft, not getting variables from anywhere but the game itself.

This. kOS is doing what Remote Tech has showed is a shortcoming of KSP - no flight plans or anything. Together they go a long, long way to making an awesome yet somewhat realistic space game. Stock KSP is great, but for those desiring a little more realism and challenge Remote Tech and kOS are must have mods.

I fully understand this might be extra work, but is suits the spirit of Remote Tech so perfectly it almost makes me cry. Launching a probe into a holding orbit, making sure it (somehow) can communicate with Kerbin and sending fresh code for that landing sequence would be as NASA as it gets - and super awesome to boot.

Link to comment
Share on other sites

In addition I'm just imagining having to get telemetry data from ground tracking stations or something.

In addition to other problems.

I have no problem with automated launch programs, as long as automated launch in question presents challenges in its own right.

Edited by betaking
Link to comment
Share on other sites

So I just got a chance to test out my DLL with your updated configs, and I can't reproduce any of your issues. Using your provided .craft file, my SAS works fine, and when I add RCS to the craft the RCS thrusters are fully utilized by the flight computer. Have you tried temporarily removing all your other mods and testing with RemoteTech in isolation? Maybe something like MechJeb might be interfering with your SAS? I say this because unless I've misunderstood the RemoteTech code somehow, my modified version should not be modifying your stock SAS state in any way whatsoever. I removed the control locks that RemoteTech previously placed on the SAS, and the only point of interaction is that RemoteTech will read the current SAS state to allow SAS actions to be applied without communication delay.

Okay, I stripped KSP of all mods and verified files (steam). It's bare-bones. I used RT1 and the Probe Compatibility from Spaceport (not my own configs or probe compatibility which is better, btw). I loaded the test craft and tested with the old dll. Press "T" at launch site and SAS indicator is on. Press again - off. Press KILLROT and SAS indicator is on. Press again - off. Take for flight and responds accordingly.

Now I swap your dll for the old RT dll. Load the test craft and press "T" at launch site - no SAS indicator. Press KILLROT - no SAS indicator. Take if for a flight. Press "T" - no SAS, craft still spins or goes off course. Re-launch, press KILLROT - craft holds a straight line but no SAS indicator like with the old dll.

You see, it works with the FC, but not if you're flying manually and just want to toggle SAS on/off with "T" and it doesn't light the SAS indicator. Pressing "R" btw, gives me RCS indicator but since I didn't have RCS on the test craft, I don't know how it affected flight.

Somebody else, please try this test and report back.

Link to comment
Share on other sites

Okay, I stripped KSP of all mods and verified files (steam). It's bare-bones. I used RT1 and the Probe Compatibility from Spaceport (not my own configs or probe compatibility which is better, btw). I loaded the test craft and tested with the old dll. Press "T" at launch site and SAS indicator is on. Press again - off. Press KILLROT and SAS indicator is on. Press again - off. Take for flight and responds accordingly.

Now I swap your dll for the old RT dll. Load the test craft and press "T" at launch site - no SAS indicator. Press KILLROT - no SAS indicator. Take if for a flight. Press "T" - no SAS, craft still spins or goes off course. Re-launch, press KILLROT - craft holds a straight line but no SAS indicator like with the old dll.

You see, it works with the FC, but not if you're flying manually and just want to toggle SAS on/off with "T" and it doesn't light the SAS indicator. Pressing "R" btw, gives me RCS indicator but since I didn't have RCS on the test craft, I don't know how it affected flight.

Somebody else, please try this test and report back.

Alright, I reproduced the issue by following your exact steps on a fresh KSP install. I'm still pretty sure the problem isn't in my code. I believe the issue is actually something to do with the probe compatibility patch from the original post, and some sort of issue with ModuleManager. Check if the "Remote Control" and "SAS-Equipped" flags are being displayed on the same text line on your pod pieces in the ship builder. If this is the case, the stock game is not recognizing that your ship is SAS-Equipped because ModuleManager has mangled the flag name. I never noticed this because my ships tend to feature the inline reaction wheels, which wouldn't be affected by this. In any case, using your provided configs and probe compatibility patch my SAS works as intended ("T" toggles stock SAS, KillRot is entirely separate and is enabled if the GUI button is highlighted green). I've uploaded an archive of all the RemoteTech related content in my GameData folder here, so you can check if using my exact setup resolves your issues.

Link to comment
Share on other sites

Is 0.21 still being worked on? The last commit is 25 days old...

JDP and Cliph are propably waiting for the release of v0.22, which will change and add many things regarding a vanilla networking system to transfer data back to Kerbin, based on the vanilla antenna and dish.

I bet once that's released, they will start adapting RT2 to 0.22 and release it eventually.

EDIT: What I said is maybe not that accurate. I just read a post from a moderator stating that 0.22 is not even in testing yet, so release might be over a month or more in the future.

Edited by BigNose
Link to comment
Share on other sites

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