RemoteTechnologiesGroup / RemoteTech

Community developed continuation of Kerbal Space Program's RemoteTech mod.
http://remotetechnologiesgroup.github.io/RemoteTech
GNU General Public License v2.0
230 stars 103 forks source link

RT breaks symmetrical context menu controls #777

Closed Dunbaratu closed 5 years ago

Dunbaratu commented 5 years ago

O.S: Windows 8 64 bits KSP: 1.4.5 Problem: If you have a part placed using symmetry, adjusting a setting during construction on the right-click menu for that part (for example thrust limiter, or inverting the direction of a control flap, etc) adjusts it the same for all the other parts in the symmetry group. In stock, it also keeps this symmetry during flight, where adjusting right-click menu settings will affect both paired parts. But with Remote Tech installed, it does not, creating dangerously confusing results when users use this feature and it is only "one sided" unlike what they are used to.

Reproduction steps: This is one example of the problem: Build an airplane. Place elevators with mirror symmetry as you normally would. Launch the airplane to the runway. Take off and start flying it. While flying it, right-click the left elevator and reduce it's control authority to 50%. Now try to pull up with the "S" key. The plane rolls when you try to pull up because ONLY the left elevator got reduced to 50%, not both of them like it's supposed to. Any similar symmetry part will have the same problem. You can have even more disasterous effects by trying to, say, invert the direction of a landing flap and it only inverts on one side of the plane not both. It seems as if when remote tech replaces the controls on the rightclick menus with its own wrappers around them, it loses track of this symmetrical linkage they're supposed to have.

Logs: (No log because there were no exceptions or messages shown. This is Remote Tech behaving "normally", but its "normal" behavior is incorrect.)

Installed Mods:

KSP-TaxiService commented 5 years ago

Hi,

This behavior you are seeing is due to the signal delay mechanism. When you right-click on a part to open Part Action Menu, this menu is hooked up by RT to catch and add delay to all player actions. As such, RT only executes the part action that is explicitly triggered by the player, resulting in the symmetrical effect not happened as a side effect.

If this mechanism is disabled, the stock symmetrical codes on a Part Action Menu action will be carried out. You may notice this stock symmetrical behavior in Editor because RT mechanism is turned off there.

I am trying to see if it is even possible to trigger the symmetrical effect in RT.

KSP-TaxiService commented 5 years ago

I am not sure if this should be fixed in the RT context (currently one delayed click is only executed on its target part). Anyone else feel about this behavior?

KSP-TaxiService commented 5 years ago

Closing with no clear consensus on what to do with this symmetrical issue but this option to revisit later is open.