KSP-RO/ROEngines

ROE generic thrusters are all over the place

lpgagnon opened this issue · 5 comments

A longstanding issue, but now I'm thinking of actually doing something about it.

ROE-PLE, ROE-MR104, ROE-S400 aren't configured in a way that's consistent with the base RO 1kN/2kN generic thrusters

  • all 3 have the same thrust, despite very different model sizes
  • all 3 have a thrust rating in their Title, but it's completely disconnected from their actual thrust
  • the 3 part names (and 2 of the Titles) reference specific real-world engines, but their only relationship to those engines seems to be the model
  • 2 have the same mass, consistent with 1kN, but the 3rd is much lighter
  • the biggest of them is about the same size as the 1kN thruster, but half the thrust

Proposed requirements:

  • all 3 should produce different thrust, to give more options.
    • 1 should provide the same thrust as the 1kN, for the sake of just offering a nicer model
    • 1 should provide half the thrust, as all 3 currently do
    • 1 should provide half again the thrust, for even smaller applications that are currently poorly supported.
  • all 3 should have mass "proportional" to their thrust, following standard RO rules (only the ROE-PLE needs a fix; it's currently set to explicitly override the mass RO would set)
  • all 3 should be scaled to fit their thrust
  • all 3 should have a less misleading Title. Just a (correct) thrust rating, no reference to real-world parts

Concrete changes this translates to:

  • ROE-S400 keeps its size (close to 1kN thruster) and gets double current thrust
  • ROE-MR104 keeps its size (maybe enlarged a bit?), gets half current thrust
  • ROE-PLE is scaled up so 1 nozzle is the same size as ROE-MR104, keeps current thrust
  • ROE-PLE useRcsMass = False becomes useRcsMass = True

BUT in the interest of not breaking any vessels, the current parts should be left untouched and deprecated via techrequired=undefined, category=-1. New parts should be created with the proposed changes, named ROE-generic-1/2/3 or similar

Phase 2:
At some point, might want to consider adding actual dual-MR107, MR104, S400 engines to ROEngines, since we have models that are presumably suitable. This is more work (would need RO engine configs), and there's already lots of small thrusters, so not a high priority. (such parts would presumably get named ROE-MR104-v2 etc)

This is all great. I don't really have any improvements to it!

Release management is going to be tricky; if the old parts just get category=-1-disappeared right away, someone who updates just ROE will end up with only non-RO/non-RP0 replacements. Acceptable so long as it only affects people tracking master, but not acceptable if, say, ROE gets a release and rp-1 doesn't for a few months. Similar awkwardness happens if rp-1 removes the rp0conf=true and releases before ROE releases (at least for people with the nononrp folders).

So I'm thinking ROE should leave the old parts alone until such time as rp-1 gets a release, maybe adding some 'part is deprecated' text. And rp-1 should likewise leave the old parts alone until ROE gets a release.

I don't much like the idea of both old and new parts being available in the interim, but it seems better than alternatives.

Unless everybody's ok with just altering the existing parts and calling it a day. S400 suddenly gets heavier and stronger, PLE suddenly gets heavier and bigger, MR104 suddenly gets lighter and weaker.

Let's do this:

  • Change the Title to be whatever it is now (DEPRECATED)
  • Don't mess with the OG parts for now, but prepare to execute it as of next release cycle of RP-1

done in #125

I threw in a "clever" way to hide the old parts if and only if the new ones are rp0conf=yes; hoping it'll make the transition smoother

all relevant PRs merged, closing this. 'phase 2' remains for the distant future to deal with