Rework unlockable PartUpgrade tips#2759
Conversation
As you cannot put anything other than batteries inside a proc avionics core, why not just disable the MLI upgrade alert on them outright? |
|
... Oh I just noticed a major error with persistence. Converting to draft while I work this out. Also I think with how the callbacks are ordered, the Data Storage alert will always fire first? (My implementation right now isn't smart enough to handle a separate smarter check for a specific upgrade type, it's intentionally generic.) |
|
Okay cool, fixed it. Ignored upgrades now persist per-savegame instead of per-save, which is better since players may reload prior to when they purchased/ignored an upgrade. Also, I added a filter delegate to the constructor for UpgradeLine, so I can add more logic for the MLI check. The MLI warning now only fires for Conventional and Isogrid tanks, and there is now a Balloon tank MLI warning for Balloon tanks (if that upgrade is unlocked). |
|
|
ECMHelper additions are used inside the function that gets ECM names for the unlock cost calculation, so unpurchased comms/solar TLs can be fixed during validation. Everything else should be fixed:
https://github.com/user-attachments/assets/1d4cd731-e047-4379-b078-d52259ed8e58
|
|
Would be best to scrub the "This is not a part you can use..." text for the VAB. |
|
Would it be better to programmatically remove that text in the popup, or should I remove it entirely from the description in the tech tree? |
|
The former. Although, if you could find a way to automatically add the text when viewing the part upgrade in the tech tree, that would be even better. |









Currently there are 6 PartUpgrade lines that can only be purchased in R&D, and are therefore frequently missed by new players. Even experienced players can forget to purchase a corresponding upgrade when it is unlocked.
These are:
We currently only warn about communications tech, and in order to purchase it players must leave the VAB and enter R&D.
For antennas and solar panels, the following behaviour now applies:
For the other 4 cases, the following behaviour now applies:
The "relevant modules" for the 4 tech lines described above are as follows:
ProceduralFairingSideModuleProceduralAvionicsModuleFuelTanksModuleUnpressurizedCockpitImplementation notes:
The Balloon tank MLI upgrade is not in the MLI tech order. I do not know of a clean way to distinguish Balloon tanks from non-Balloon tanks.[Edit: The Balloon tank MLI upgrade is now included.]If a part would cause multiple alerts to be set off at the same time, only one shows. As far as I can tell this occurs in one of two situations:[Edit: There should no longer be any simultaneous alerts.]A procedural avionics core is opened when there is an MLI upgrade and data storage upgrade available. This could probably be fixed by the same fix that distinguishes Balloon tanks.A X-1 cockpit is opened when there is an MLI upgrade and X-2 cockpit upgrade available.This pull request requires KSP-RO/ROLibrary#30 and KSP-RO/RealAntennas#74 to handle the comms and solar panel cases, but theoretically works standalone without them.