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

Stock inventory does not handle part mass modifiers or resource mass correctly #182

Closed
JonnyOThan opened this issue Jan 26, 2024 · 0 comments
Labels
kspBug Identified KSP issue
Milestone

Comments

@JonnyOThan
Copy link
Contributor

If you have a stock part with ModulePartVariant on it that changes the part's mass, the inventory module only uses the prefab mass when calculating how much of the inventory is filled.

For example the RCS block thruster has many variants with different nozzle counts, and each one has a different mass. But if you place this part in an inventory, it always takes up 0.04t:

image

image

image

image

Further, the info box that you get when right-clicking on the part in inventory seems to only show the mass of the variant that is selected in the parts box, not the one that is currently in the inventory. This thruster should have a mass of 0.02t, but it shows 0.03t because that's what's selected in the parts box:

image

Further, the mass of parts that have resources is not represented correctly - they always weigh as much as they do when full of resources. To reproduce: place a fuel tank somewhere on the ship, then remove its resources. Place it in an inventory, and the mass is incorrect:

image

image

@JonnyOThan JonnyOThan added the kspBug Identified KSP issue label Jan 26, 2024
JonnyOThan added a commit that referenced this issue Jan 26, 2024
…ss or volume

-for example, changing a part's variant (rcs thruster blocks, structural tube) or its resource level could change its mass, but when you store it in inventory the mass would always use the value from the prefab
@JonnyOThan JonnyOThan added this to the 1.34 milestone Jan 28, 2024
JonnyOThan added a commit that referenced this issue Jan 30, 2024
* New KSP QoL/performance patch : [**LowerMinPhysicsDTPerFrame**](#175) : Allow a min value of 0.02 instead of 0.03 for the "Max Physics Delta-Time Per Frame" main menu setting. This was already possible by manually editing the `settings.cfg` file, but changes would revert when going into the settings screen.

* Add tooltip describing the "Max Physics Delta-Time Per Frame" main menu setting

* merging master to dev (#181)

* zh-cn localization for ManufacturerFixes.cfg (#178)

* Remove ENABLE_PROFILER define that got added recently

---------

Co-authored-by: zhangyuesai <zhangyuesai@live.com>

* Fix #182: ModulePartInventory now accounts for changes to a part's mass or volume
-for example, changing a part's variant (rcs thruster blocks, structural tube) or its resource level could change its mass, but when you store it in inventory the mass would always use the value from the prefab

* oops, revert a couple changes to the csproj that made it into the last commit by accident

* Fix #185: calculate the correct mass for parts when picking them up off the ground in EVA construction

* Fix #104 : set dead kerbals to missing when loading a game and respawning is enabled

* Standardize spaces for indent in .editorconfig and add it to the SLN
(note personally I'd prefer tabs for indents, but all the existing code in here that didn't come from me uses spaces and consistency is more important)

* Change tabs -> spaces in the few files that used it
Whitespace-only change.
(note most of these were originally authored by me, but the project as a whole uses spaces pretty consistently)

* Fix #180: add ZeroCostTechNode patch

* Better editor undo redo (#176)

* BetterEditorUndoRedo : Exploratory fix for undo/redo state, doesn't work because of VesselCrewManifest side effects
See #172

* BetterEditorUndoRedo : functional, obvious issues fixed, still likely to cause side effects.

* disable BetterEditorUndoRedo by default

---------

Co-authored-by: JonnyOThan <jonnyothan@gmail.com>

* PAWGroupMemory is no longer per-window, but rather per-group (#186)

* Fix #50: PAWGroupMemory is no longer per-PAW, but stores the expansion state for all windows and is not cleared on scene changes
-possible future work: persist the collapse state to disk

* collapse or expand PAW groups when the PAW is shown

* Fix #179: ModulePartVariants now applies node position changes in all scenes

* enable BetterEditorUndoRedo by default

* Merge master -> dev (#187)

* zh-cn localization for ManufacturerFixes.cfg (#178)

* Remove ENABLE_PROFILER define that got added recently

---------

Co-authored-by: zhangyuesai <zhangyuesai@live.com>

* update readme with the new fixes

---------

Co-authored-by: gotmachine <24925209+gotmachine@users.noreply.github.com>
Co-authored-by: zhangyuesai <zhangyuesai@live.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kspBug Identified KSP issue
Development

No branches or pull requests

1 participant