Also, how about implementing Lua into SSUPad? That way we can get rid of the dialog while controlling the swing arms and service functions through a standard Lua interface.
Maybe even go as far as using SSULCC for the actual commanding while the SSUPad vessel only responds to those commands. That should increase realism another step. That way we could also control the GLS.
Can be done, it doesn't really hurt to have a Lua interface too much. But you have to include that Lua isn't really fast and doesn't have precise timing, so everything that requires more complex behaviors should be better done by C++, but could then still be scheduled from inside Lua.
About the RSLS - what about finally getting the DPS sorted out and have the behavior properly. The current simplifications work most of the time, but are not even recreating the behavior of the shuttle.
Take for example the behavior of the Major Function switches and the CRT/CRT command, for example:
After launch, if you want to go to SM, you have to switch MF of CRT 1 to SM. Now, there is no SM GPC yet. so the GPC currently driving the IDP will switch to GPC MEMORY OPS. Next, you enter GPC/CRT 4 1 EXEC. This will tell the GPC 4 to drive the IDP 1. Since it does also not support SM, since it is still operating in G1 (It does not load the G2 memory config when the other two GPCs are switched into GNC OPS 201), it will switch to OPS 0 GPC MEMORY, unloading the GNC MF overlay. Now you can load the G2 Memory config on GPC 4, and switch to SM OPS 201.
Then, the PL MF switch position also makes more sense: it is used on the Shuttle during a mission as "usually not supported major function" and thus always allows turning a GPC into OPS 0 again - otherwise you can't get a GPC to run only system software (OPS 0).