Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] Allow saves to load with parts missing #258

Open
jan-bures opened this issue Aug 28, 2023 · 2 comments
Open

[FEATURE] Allow saves to load with parts missing #258

jan-bures opened this issue Aug 28, 2023 · 2 comments
Labels
feature New feature or request

Comments

@jan-bures
Copy link
Contributor

Feature Information

Feature description

This issue can be divided into two separate but very related scenarios:

  1. There's an in-flight vessel with a specific part "A". Let's say that part A comes from a mod, and the user disables or uninstalls the mod in between two play sessions. When they come back to the campaign that contains the loaded vessel with the part, the game will freeze during loading at the "Creating Vessel" loading action:
    Loading frozen
    The following error causes this freeze:
    Freeze error

  2. There are no vessels with missing parts in flight, but the user has such a vessel saved in VAB. When they attempt to load the vessel into the editor, they don't see any message or error, there's only an exception in a log, which is not very user friendly:
    VAB vessel loading exception

Solution proposal
  1. Implement some sort of a system similar to KSP 1, where we would check during the save loading whether any of the vessels in the save have missing parts, and if so, don't load those vessels and warn the user:
    Game load vessel problems
    Game load vessel loading error

  2. This should be relatively easy - just patch the ObjectAssemblyBuilderFileIO.LoadWorkspaceFromFile method and display an error dialog when the vessel cannot be loaded. Example from KSP 1:
    VAB missing parts
    VAB craft loading error

@jan-bures jan-bures added the feature New feature or request label Aug 28, 2023
@cheese3660
Copy link
Member

Hmm, the best way I can think to do this is to completely replace the flow actions code with a harmony patch

@cheese3660
Copy link
Member

But to give the actual part errors would require a deeper patch to know what parts weren't loaded

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
Status: Planned for Production
Development

No branches or pull requests

2 participants