Jump to content

[1.8 - 1.12] KSPCommunityFixes - Bugfixes and QoL tweaks


Gotmachine
 Share

Recommended Posts

KSP Community Fixes

This plugin is a collection of code patches for fixing bugs and performance issues in the KSP codebase, and adding small QoL improvements. Entirely new features (especially those already covered by other mods) are out of scope, as well as patches that might alter the stock behaviors to minimize potential mod compatibility issues.

This mod is meant as community project, so feel free to propose additional patch ideas by opening an issue, or to contribute with a pull request.

Download and installation

Compatible with KSP 1.8.0 to 1.12.3 - Available on CKAN

Required and must be downloaded separately :

Installation

  • Go to the GitHub release page and download the file named KSPCommunityFixes_x.x.x.zip
  • Open the downloaded *.zip archive
  • Open the GameData folder of your KSP installation
  • Delete any existing KSPCommunityFixes folder in your GameData folder
  • Copy the KSPCommunityFixes folder found in the archive into your GameData folder

Features

Individual patches can be enabled or disabled by editing (or MM patching) the Settings.cfg file.

While all KSP versions from 1.8.0 to 1.12.3 are supported, using the latest one (1.12.3) is highly recommended, as many patches only apply to the most recent KSP versions. When a bug fix patch doesn't apply to an older KSP version, this doesn't mean those bugs don't exist there.

User options are available from the "ESC" in-game settings menu :
settings.gif

Major bugfixes

  • RefundingOnRecovery [KSP 1.11.0 - 1.12.3]
    Vessel recovery funds properly account for modules implementing IPartCostModifier. This bug affect stock fairings, cargo parts and many modules from various mods (part switchers and procedural parts mods, USI, Kerbalism, Tweakscale, etc).
  • KerbalInventoryPersistence [KSP 1.12.2 - 1.12.3]
    Fix the whole kerbal inventory persistence system being inactive in KSP 1.12.2+. This cause multiple issues, like being able to bypass kerbal inventories mass/volume limits, and various cargo part duplication / disappearance issues when EVAing / boarding.
  • RoboticsDrift [KSP 1.8.0 - 1.12.3]
    Prevent unrecoverable part position drift of Breaking Grounds DLC robotic parts and their children parts.
  • DockingPortRotationDriftAndFixes [KSP 1.12.3]
    Make the stock docking port rotation feature actually useable :
    • Completely prevent unrecoverable position drift of children parts of docking ports.
    • Fix joint failure and phantom forces when a docking port pair is set to opposite extreme angles.
    • Allow tweaking the rotation in the editor and while not docked in flight.
    • Rotation can now be properly used in a robotic controller.
    • Remove the -86°/86° hardcoded limitation of hardMinMaxLimits, it is now -180°/180°.
    • Fix many issues and state inconsistencies.
    • An optional DockingPortExtendedRotation.cfg.extra MM patch extending rotation range to 360° is available in the Extras folder. Copy it to your GameData folder and remove the .extra extension to use it.
  • AutoStrutDrift [KSP 1.8.0 - 1.12.3]
    Improves the overall physics stability when using autostruts and prevent autostrut induced deformations following vessel modification events (decoupling, docking/undocking, fairing separation...).
  • ModuleIndexingMismatch [KSP 1.8.0 - 1.12.3]
    Prevent modules persisted state from being lost in existing saves/ships following a mod installation/uninstallation/update. Note that this won't handle all cases, but it massively reduce occurrences of that issue.
  • PackedPartsRotation [KSP 1.8.0 - 1.12.3]
    Fix part rotations not being reset to their pristine value when a non-landed vessel is packed, resulting in permanent part rotation drift when docking and other minor/cosmetic issues.
  • PartStartStability [KSP 1.8.0 - 1.12.3]
    Fix vessel deformation and kraken events on flight scene load, also prevent some kraken issues when placing parts with EVA construction.

Minor bugfixes

  • PAWGroupMemory [KSP 1.8.0 - 1.12.3]
    Fix the expanded/retracted state of Part Action Window groups being reset when the PAW is closed or internally rebuilt (especially frequent in the editor).
  • PAWItemsOrder [KSP 1.8.0 - 1.12.3]
    Fix PAW items position randomly changing and flickering.
  • KerbalTooltipMaxSustainedG [KSP 1.8.0 - 1.12.3]
    Fix the kerbals tooltip giving wrong "Max sustainable G" information.
  • ROCValidationOOR [KSP 1.8.0 - 1.12.3]
    Fix ROCManager crashing during loading with Kopernicus modified systems.
  • ReactionWheelsPotentialTorque [KSP 1.8.0 - 1.12.3]
    Fix reaction wheels reporting incorrect available torque when "Wheel Authority" is set below 100%. Fix stock SAS (and possibly other attitude controllers) instability issues.
  • StockAlarmCustomFormatterDate [KSP 1.12.0 - 1.12.3]
    Make the stock alarm respect the day/year length defined by mods like Kronometer. Fix the underlying AppUIMemberDateTime UI widget API to use the mod-provided IDateTimeFormatter if present.
  • StockAlarmDescPreserveLineBreak [KSP 1.12.0 - 1.12.3]
    Stock alarm preserve line breaks (and tabs) in the description field.
  • ExtendedDeployableParts [KSP 1.12.0 - 1.12.3]
    Fix deployable parts (antennas, solar panels, radiators...) always starting in the extended state when the model isn't exported in the retracted state. This bug affect parts from various mods (ex : Ven's stock revamp solar panels).
  • DeltaVHideWhenDisabled [KSP 1.12.0 - 1.12.3]
    Hide the stock stage delta-v UI elements and navball extended burn info when DELTAV_CALCULATIONS_ENABLED and DELTAV_APP_ENABLED are disabled by another mod or in the KSP settings.cfg file.
  • AsteroidSpawnerUniqueFlightId [KSP 1.8.0 - 1.12.3]
    Fix the asteroid/comet spawner generating non-unique Part.flightId identifiers. This has a few minor side effects in stock (mainly incorrect science bonuses), but this field is heavily relied upon by various mods and this can cause major issues for them.
  • PartListTooltipIconSpin [KSP 1.8.0 - 1.12.3]
    Fix editor tooltip part icons not spinning anymore after hovering on a greyed out surface attachable only part while the editor is empty.
  • ScatterDistribution [KSP 1.8.0 - 1.12.3]
    Fix incorrect terrain scatter distribution when a partial longitude range is defined in the PQSLandControl definition.
  • LostSoundAfterSceneSwitch [KSP 1.12.0 - 1.12.3]
    Fix audio source not being centered/aligned with the current vessel after scene switches, causing loss of vessel effects audio and random volume or left/right channel weirdness.
  • EVAKerbalRecovery [KSP 1.11.0 - 1.12.3]
    Fix recovery of EVAing kerbals either causing their inventory to be recovered twice or the science data they carry not being recovered, depending on the EVA kerbal variant/suit.
  • StickySplashedFixer [KSP 1.8.0 - 1.12.3]
    Fix vessel never leaving the splashed state if it starts out splashed, and decouples from its only splashed parts. This also fixes an issue where Splashed overrides Prelaunch as a situation.
  • RescaledRoboticParts [KSP 1.8.0 - 1.12.3]
    Fix rescaled robotics parts propagating their scale to childrens after actuating the servo in the editor
  • EnginePlateAirstreamShieldedTopPart [KSP 1.11.0 - 1.12.3]
    Fix engine plates causing the part attached above them to be incorrectly shielded from airstream.
  • AsteroidInfiniteMining [KSP 1.10.0 - 1.12.3]
    Fix asteroid/comet mass being restored to 100% when reloading after having mined it down to 0%.
  • CometMiningNotRemovingMass [KSP 1.12.2 - 1.12.3]
    Fix mass of comets not actually reducing when mining them, despite the PAW saying so.
  • DoubleCurvePreserveTangents [KSP 1.8.0 - 1.12.3]
    Fix DoubleCurve flattening the tangents of the first keyframe regardless of whether tangents are supplied.
  • StrategyDuration [KSP 1.8.0 - 1.12.3]
    Fix Strategies not using Duration settings.
  • UpgradeBugs [KSP 1.8.0 - 1.12.3]
    Fix various bugs with upgrades, like the part stats upgrade module breaking, upgrades not properly applying in the editor, upgrade cost not being applied to part cost, and various issues int the public API.

Quality of Life tweaks

  • PAWCollapsedInventories [KSP 1.11.0 - 1.12.3]
    Part Action Window inventory UI widgets in a collapsed group by default, group title show volume and mass usage. Applied to part and kerbal inventories.
    PAWCollapsedInventories.gif
  • AltimeterHorizontalPosition [KSP 1.8.0 - 1.12.3]
    Altimeter widget horizontal position is now tweakable in the pause menu settings.
    AltimeterHorizontalPosition.gif
  • PAWStockGroups [KSP 1.10.1 - 1.12.3]
    Part Action Window groups for a selection of stock items/modules
    PAWGroups.png
  • TweakableWheelsAutostrut [KSP 1.8.0 - 1.12.3]
    Allow tweaking the autostrut mode of wheels/landing legs. Still default to "Heaviest part".
    TweakableWheelsAutostrut.gif
  • AutostrutActions [KSP 1.8.0 - 1.12.3]
    Allow autostrut mode to be toggled with action groups (requires advanced tweakables to be enabled).
  • UIFloatEditNumericInput [KSP 1.8.0 - 1.12.3]
    Allow numeric input ("#" button) in "float edit" PAW items
    UIFloatEditNumericInput.gif
  • DisableManeuverTool [KSP 1.12.0 - 1.12.3]
    Allow disabling the KSP 1.12 maneuver planner tool in the KSPCF in-game settings menu. It can cause stutter and freezes on scene load, when changing SOI or when editing maneuver nodes, especially with Kopernicus modified systems.
  • FairingMouseOverPersistence [KSP 1.10.0 - 1.12.3]
    Make the "Fairing Expansion" state persistent when reloading a craft in the editor.
  • HidePartUpgradeExtendedInfo [KSP 1.8.0 - 1.12.3]
    Hides irrelevant extended info on the part tooltip for PartUpgrades in the RnD screen.
  • AutoSavedCraftNameAtLaunch [KSP 1.8.0 - 1.12.3]
    Append [Auto-Saved Ship] when relevant in the Launchpad / Runway UI.
    AutoSavedCraftNameAtLaunch.png
  • ShowContractFinishDates [KSP 1.12.0 - 1.12.3]
    For archived contracts, show accepted/finished dates.
  • NoIVA [KSP 1.8.0 - 1.12.3]
    Allow to disable IVA functionality and prevent related assets from being loaded, reducing RAM/VRAM usage and slightly increasing performance in some cases. Has a "use placeholder IVA" option allowing to keep crew portraits. This patch is disabled by default and must be enabled from the KSP "ESC" settings menu. It has no entry in the Settings.cfg file and require a restart to take effect. Do not use this option alongside IVA mods like RPM or MAS.
  • DisableNewGameIntro [KSP 1.8.0 - 1.12.3]
    Disable the "intro" popups appearing in the space center, VAB/SPH and tracking station upon creating a new career game. Disabled by default.
  • ToolbarShowHide [KSP 1.8.0 - 1.12.3]
    Add a button for hiding/showing the stock toolbar. Also allow accessing the toolbar while in the space center facilities windows (mission control, admin building, R&D...).
  • ResourceLockActions [KSP 1.8.0 - 1.12.3]
    Add part actions for locking/unlocking resources flow state.

Performance tweaks

  • SceneLoadSpeedBoost [KSP 1.8.0 - 1.12.3]
    Reduce scene switches loading time with large/modded saves by caching the current save in memory instead of loading it from disk.
  • OnDemandPartBuoyancy [KSP 1.8.0 - 1.12.3]
    Prevent the part buoyancy integrator from running when not needed. Improves performance for large part count vessels while in the SOI of a body that has an ocean (Kerbin, Eve, Laythe...)
  • TextureLoaderOptimizations [KSP 1.10.0 - 1.12.3]
    Speedup loading time by caching on disk the PNG textures KSP converts to DXT5 on every launch. Also make PNG @thumbs cargo part textures non-readable to free some RAM. This patch has no entry in settings.cfg, but is opt-in (a popup is shown on first KSP launch) and can be disabled latter in the in-game settings menu.
  • PQSUpdateNoMemoryAlloc [KSP 1.11.0 - 1.12.3]
    Prevent huge memory allocations and resulting occasional stutter on PQS creation happening when moving around near a body surface.
  • MemoryLeaks [KSP 1.12.0 - 1.12.3]
    Fix a bunch of managed memory leaks, mainly by proactively removing GameEvents delegates originating from destroyed UnityEngine.Object instances on scene switches. Will log detected leaks and memory usage. Also seeSettings.cfg to enable advanced logging options that can be useful to hunt down memory leaks in mods.
  • ProgressTrackingSpeedBoost [KSP 1.12.0 - 1.12.3]
    Remove unused ProgressTracking update handlers. Provides a very noticeable performance uplift in career games having a large amount of celestial bodies and/or vessels.
  • DisableMapUpdateInFlight [KSP 1.8.0 - 1.12.3]
    Disable the update of orbit lines and markers in flight when the map view isn't shown. Provides decent performance gains in games having a large amount of celestial bodies and/or vessels.
  • CommNetThrottling [KSP 1.12.0 - 1.12.3]
    Disabled by default, you can enable it with a MM patch. Prevent full CommNet network updates from happening every frame, but instead to happen at a regular real-world time interval of 5 seconds while in flight. Enabling this can provide a decent performance uplift in games having an large amount of celestial bodies and/or vessels, but has a detrimental impact on the precision of the simulation and can potentially cause issues with mods relying on the stock behavior.
  • AsteroidAndCometDrillCache [KSP 1.12.3]
    Reduce constant overhead of ModuleAsteroidDrill and ModuleCometDrill by using the cached asteroid/comet part lookup results from ModuleResourceHarvester. Improves performance with large part count vessels having at least one drill part.

API and modding tools

  • MultipleModuleInPartAPI [KSP 1.8.0 - 1.12.3]
    This API allow other plugins to implement PartModules that can exist in multiple occurrence in a single part and won't suffer "module indexing mismatch" persistent data losses following part configuration changes. See documentation on the wiki.
  • DockingPortLockedEvents [KSP 1.12.2 - 1.12.3]
    Disabled by default, you can enable it with a MM patch. Fire GameEvents onRoboticPartLockChanging/onRoboticPartLockChanged respectively before/after calls to ModuleDockingNode.ModifyLocked(), following a modification of the ModuleDockingNode.nodeIsLocked field.
  • OnSymmetryFieldChanged [KSP 1.8.0 - 1.12.3]
    Disabled by default, you can enable it with a MM patch. Change the UI_Control.onSymmetryFieldChanged callback to behave identically to the UI_Control.onFieldChanged callback :
    • The callback will only be called when the field value has actually been modified.
    • The "object" argument will contain the previous field value (instead of the new value).
  • PersistentIConfigNode [KSP 1.8.0 - 1.12.3]
    Disabled by default, you can enable it with a MM patch. Implement IConfigNode members marked as [Persistent] serialization support when using the CreateObjectFromConfig(), LoadObjectFromConfig() and CreateConfigFromObject() methods. Also implements Guid serialization support for those methods.
  • ReflectionTypeLoadExceptionHandler [KSP 1.8.0 - 1.12.3]
    Patch the BCL Assembly.GetTypes() method to always handle (gracefully) an eventual ReflectionTypeLoadException. Since having an assembly failing to load is a quite common scenario, this ensure such a situation won't cause issues with other plugins. Those exceptions are logged (but not re-thrown), and detailed information about offending plugins is shown on screen during loading so users are aware there is an issue with their install. This patch is always enabled and has no entry in Settings.cfg.
  • DepartmentHeadImage [KSP 1.8.0 - 1.12.3]
    Fix administration building custom departement head image not being used when added by a mod.

Stock configs tweaks

  • ManufacturerFixes
    Fix a bunch of stock parts not having manufacturers, add icons for the stock "Stratus Corporation" and "LightYear Tire Company" and two new agents, "FreeFall Parachutes" and "Clamp-O-Tron".

License

MIT

Localization

This mod supports localization. If you wish to contribute a localization file, you can have the mod generate or update a language template by editing the Settings.cfg (see instructions near the end of the file).

Changelog

Spoiler
1.20.0
  • New KSP bugfix : UpgradeBugs (contributed by @NathanKell)
  • New KSP bugfix : DoubleCurvePreserveTangents (contributed by @NathanKell)
  • New KSP bugfix : StrategyDuration (contributed by @NathanKell)
  • PersistentIConfigNode patch : fixed incorrect serialization in some corner cases(contributed by @NathanKell)
  • New KSP bugfix : CometMiningNotRemovingMass
  • New performance patch : AsteroidAndCometDrillCache (contributed by @JonnyOThan)
  • OnSymmetryFieldChanged : fixed mistakenly inverted "changed" condition resulting in the patch not actually preventing symmetry events to be fired when the value hasn't changed.
  • Added russian localization (contributed by @sunnypunny)
  • New stock configs tweak : ManufacturerFixes (contributed by @sunnypunny)
1.19.1
  • DisableMapUpdateInFlight : fixed phantom map markers on flight scene load
1.19.0
  •  
1.18.3
  • MemoryLeaks : Only remove GameEvent delegates owned by destroyed UnityEngine.Object instances if they are declared by the stock assembly, or a PartModule, or a VesselModule. Some mods are relying on a singleton pattern by instantiating a KSPAddon once, registering GameEvents there and relying on those being called on the dead instance to manipulate static data (sigh...). Those cases will still be logged when the LogDestroyedUnityObjectGameEventsLeaks flag is set in settings.
1.18.2
  • Fixed MemoryLeaks patch causing KSC facilities upgrades being reverted after a scene change.
1.18.1
  • Fixed AutostrutActions patch causing nullrefs on part duplication and generally not working as intended.
1.18.0
  • New performance patch : MemoryLeaks
  • New KSP bugfix : RescaledRoboticParts (thanks to @pap1723)
  • New QoL patch : AutostrutActions (suggested by forum user @RealKerbal3x)
1.17.0
  • New KSP bugfix : StickySplashedFixer (@NathanKell)
  • New modding bugfix : DepartmentHeadImage (@NathanKell)
  • PersistentIConfigNode patch : added Guid serialization support to CreateObjectFromConfig(), LoadObjectFromConfig() and CreateConfigFromObject() methods (@NathanKell).
1.16.1
  • RoboticsDrift : fix "Servo info not found" log spam originating from servo parts for which the drift correction isn't enabled.
1.16.0
  • New KSP bugfix : EVAKerbalRecovery (thanks to @JonnyOThan for bug-reporting)
  • FairingMouseOverPersistence : patch now only applies to KSP 1.10.0 and latter, as the field it relies on doesn't exists in prior versions, causing exceptions in OnLoad()/OnSave().
  • Codebase cleaning pass, analyzers are now happy (or silenced).
1.15.0
  • New KSP bugfix : ScatterDistribution (credit to @R-T-B)
  • New KSP bugfix : LostSoundAfterSceneSwitch (credit to @ensou04)
  • Fixed KerbalInventoryPersistence patch not being applied on KSP 1.12.3
1.14.1
  • Fix KSPCF issue #39 : AltimeterHorizontalPosition patch causes state inconsistencies with vessel filters.
  • Fix KSPCF issue #40 : UIFloatEditNumericInput patch breaking IR custom FloatEdit control. Don't alter the control prefab list, instead return our custom prefab on the fly in the KSP methods searching the prefab list.
1.14.0
  • New KSP bugfix : PartListTooltipIconSpin (investigation efforts by @StoneBlue).
  • New KSP bugfix : AsteroidSpawnerUniqueFlightId
  • New QoL patch : DisableNewGameIntro
  • New performance patch : PQSUpdateNoMemoryAlloc (investigation and fix by @Linx).
  • Updated Harmony to v2.2.1
  • Fixed multiple RoboticsDrift patch issues:
    • Improved general numerical stability by normalizing input/output Quaternions.
    • Fixed potential NRE spam happening after in-flight vessel hierarchy changes (ie, docking/undocking/decoupling...)
    • Fixed random child-parts-of-robotic-part displacement after timewarping/reloading (bug introduced with the changes made in 1.12.2)
    • Modded robotic parts whose servoTransform has a position offset relative to the part origin (either due to non-zero local position in the model hierarchy or a position offset in the part config MODEL{} node) are now unsupported. This mean drift correction won't be applied for them, and the stock behavior will apply. KSPCF will issue a log warning when unsupported parts are loaded in flight. Note that such a configuration isn't fully supported by stock either, and such parts will also have issues when manipulating their angle in the editor. And while I might find a way to fix this issue in the future, I strongly recommend mod authors to check/alter their models to ensure the servoTransform has a zero relative position/rotation from the model root. As of writing, this issue notably affect the BDB Skylab truss, the "More Servos" mod by @Angel-125 and possibly others.
1.13.2
  • RoboticsDrift : fixed a rotation offset being wrongly applied to child parts of translation servos following the fix for issue #35 released in KSPCF 1.12.2 (see report 1, report 2)
1.13.1
  • Fixed NoIVA patch causing missing part textures when the part reuse/share IVA textures (ex : SXT). Note that this change negate the loading time gains of the original patch, and might even cause a small increase (a few seconds) if KSP isn't running from a SSD.
1.13.0
  • New modding patch : ReflectionTypeLoadExceptionHandler
  • New QoL patch : ShowContractFinishDates, contributed by @NathanKell
  • New QoL patch : NoIVA
  • Added localization support
  • Added tooltips to in-game settings
1.12.2
  • RoboticsDrift : fixed issue #35, incorrect handling of non-stock servo parts having MODEL{} rotation/position offsets and/or a model hierarchy where the rotation transform has a position/rotation offset relative to the model root. Notably fixes incorrect behavior with the BDB Hokulani OCO-RT90 Truss Structure.
1.12.1
  • HidePartUpgradeExtendedInfo : fixed wouldn't show extended info sometimes for regular parts.
1.12.0
1.11.2
  • TextureLoaderOptimizations : restored compatibility with KSP 1.10 and 1.11
  • DockingPortRotationDriftAndFixes : fixed autostruts crossing docking ports not being disabled if only one of the port pair is rotation-unlocked.
1.11.1
  • TextureLoaderOptimizations hotfix : was causing loading to hang on KSP 1.10 and 1.11 due to using an Unity method only available since KSP 1.12. Will restore compatibility later, for now the patch is disabled for all versions below 1.12.
  • AutoStrutDrift bugfix : fixed potential ArgumentOutOfRangeException.
1.11.0
  • New bugfix : ExtendedDeployableParts
  • New performance tweak : TextureLoaderOptimizations
  • new Qol tweak : HidePartUpgradeExtendedInfo, courtesy of @NathanKell (see PR#29)
1.10.1

DockingPortRotationDriftAndFixes refinements :

  • Fixed the stock implementation being unable to handle a rotating docking ports when it is the root part (was throwing exceptions and generally wasn't working correctly)
  • Fixed another stock bug : having a rotationAxis other than "Y" result in the docking port still rotating around the Y axis. This bug affect the 2 "inline" stock docking port parts.
  • Fixed KSPCF bug : parent port not being able to rotate after re-docking
  • Fixed KSPCF bug : things were not working as expected when using a rotating + non-rotating docking port pair
  • Fixed KSPCF bug : prevent rotation being available when about to dock or after undocking when the other docking port is "acquired" but not docked.
  • Various performance optimizations
1.10.0
  • New bugfix : DockingPortRotationDriftAndFixes. This patch contain several docking port fixes, and supersede the DockingPortLocking and DockingPortDrift patches, those patches have been removed.
  • New bugfix : PackedPartsRotation. This patch is a generalization of a fix previously implemented in RoboticsDrift, and now cover all occurrences of that issue.
  • New QoL patch : FairingMouseOverPersistence (suggested by forum user @dok_377)
  • New mod API optional patch : OnSymmetryFieldChanged (thanks to @DRVeyl)
  • New mod API optional patch : PersistentIConfigNode (thanks to @NathanKell)
  • PartStartStability : fixed the patch causing an ArgumentOutOfRangeException on scene/vessel load in FlightIntegrator.Update(). As a side effect, this patch now make the FI first "valid" execution deterministic (will always be on the fourth FixedUpdate() cycle).
  • RoboticsDrift : fixed incorrect handling when a robotic part is the vessel root part
  • Prevent some patches failing with a ReflectionTypeLoadException when another plugin assembly fail to load (ex : the Sandcastle/EL integration assembly)
1.9.1
  • RoboticsDrift : fixed (harmless) [RoboticsDrift] Servo info not found... log spam when toggling the locked state of a robotic part in the editor
1.9.0
  • New bugfix : RoboticsDrift, see issue #13.
  • New mod API patch : DockingPortLockedEvents (added for KJR, see related issue)
  • New bugfix : DockingPortLocking
  • PAWCollapsedInventories : Fixed mass/volume info not updating correctly in the group title.
  • Now using Krafs.Publicizer for cleaner/faster access to KSP internals.
1.8.0
  • New bugfix : AutoStrutDrift, see issue #21. Thanks to @Lisias for investigation efforts.
  • New bugfix : PartStartStability, see issue #9.
  • The FlightSceneLoadKraken patch is superseded by the PartStartStability patch, which is now disabled by default
  • Fixed a silly mistake with the OnDemandPartBuoyancy patch where it would prevent part buoyancy from running if the vessel is already below water at scene load. Thanks to @DRVeyl for catching that.
1.7.0
  • New performance patch : OnDemandPartBuoyancy (thanks to @siimav)
  • New bugfix : ROCValidationOOR (thanks to @R-T-B)
1.6.1
  • Fixed version file for 1.12.3
1.6.0
  • Updated for KSP 1.12.3
  • DockingPortDrift bugfix doesn't apply in 1.12.3 (identical fix was ported to stock)
  • Moved KSPCommunityFixes in-game settings to a dedicated category in the KSP settings menu
  • New performance patch : SceneLoadSpeedBoost
  • New QoL patch : DisableManeuverTool
1.5.0
  • New bugfix : KerbalTooltipMaxSustainedG
  • Fixed (again...) some patches not being applied
1.4.2
  • Fixed ModuleIndexingMismatch patch causing issues with modules dynamically adding/removing resources. Specifically, the patch was causing part resources to be loaded before (instead of after in stock) the PartModule.OnLoad() call when loading a ShipConstruct. This notably fixes RealFuel resources being lost when reloading/launching a craft file, but that mistake likely had consequences for other fuel/resource switchers mods (B9PS, Firespitter...)
1.4.1
  • Fixed UIFloatEditNumericInput patch causing various errors and generally not working as intended.
1.4.0
  • New QoL patch : UIFloatEditNumericInput
  • Fixed some patches not being applied in KSP versions below 1.12 : PAWItemsOrder, TweakableWheelsAutostrut, ModuleIndexingMismatch, FlightSceneLoadKraken.
  • PAWStockGroups patch now applicable to KSP 1.10.1 (min version was 1.11.1 before)
1.3.0
  • New bugfix : PAWItemsOrder
1.2.0
  • New QoL patch : TweakableWheelsAutostrut issue #16
  • Fix PluginData folder being created in the Plugins folder
1.1.0
  • New bugfix : ModuleIndexingMismatch issue #14
  • New bugfix : FlightSceneLoadKraken issue #9
  • New bugfix : StockAlarmCustomFormatterDate (thanks to @LGG)
  • New bugfix : PAWGroupMemory
  • New bugfix : KerbalInventoryPersistence Squad bugtracker
  • New QoL patch : PAWStockGroups issue #1
  • New API : MultipleModuleInPartAPI
  • Small tweaks to the patching engine
1.0.4
  • new bugfix : DockingPortDrift
1.0.3
  • Fix persisted altimeter position not being correctly reloaded
  • Fix map filters transition coroutine errors by disabling the nested gameobject instead of the top one
1.0.2
  • New QoL patch : AltimeterHorizontalPosition
1.0.1
  • New QoL patch : PAWCollapsedInventories
  • Base infrastructure for patch managment and conditional activation based on the KSP version
  • Patches can be enabled/disabled in configs
  • Support for KSP-Recall / Tweakscale
1.0.0
  • Initial release : RefundingOnRecovery bugfix
Edited by Gotmachine
Link to comment
Share on other sites

Hey I have one!

 

this patch is designed to fix the custom barn kit errors in science and sandbox mode that turn your building so the wrong level and you cant upgrade them, so it deletes levels all together.

heres the link: https://www.dropbox.com/sh/2amqicgx4knheqw/AABpYdKlNnm6sXHES6vjchHIa?dl=0

This Does Require Module Manager and Custom Barn Kit, but you should already have those since this is to fix them

:D

(Please note that the link sends you to the folder that contains all of my things, not just this one, and if you install any other things, they will merge into one "Triangular Technologies LLC" Folder) 

don’t use this it’s very broken

Edited by DaBakonAder
Link to comment
Share on other sites

1 minute ago, DaBakonAder said:

this patch is designed to fix the custom barn kit errors in science and sandbox mode that turn your building so the wrong level and you cant upgrade them, so it deletes levels all together.

Well, issues in other mods should be addressed directly by their authors. You should probably raise the issue in the CustomBarnKit forum thread or on its github repository.

Also, I should have mentioned that this is primarily aiming at fixing issues that require some code. Things that only require a MM patch are likely out of scope, although I might include some on a case by case basis.

Link to comment
Share on other sites

1 minute ago, Gotmachine said:

Well, issues in other mods should be addressed directly by their authors. You should probably raise the issue in the CustomBarnKit forum thread or on its github repository.

I Did do this

1 minute ago, Gotmachine said:

Also, I should have mentioned that this is primarily aiming at fixing issues that require some code. Things that only require a MM patch are likely out of scope, although I might include some on a case by case basis.

Okay then!

Link to comment
Share on other sites

 

10 hours ago, Gotmachine said:

AltimeterHorizontalPosition : Altimeter widget horizontal position is now tweakable in the pause menu settings.

I didn't realise i needed this.  Thanks!

 

10 hours ago, Gotmachine said:

PAWCollapsedInventories

Could this be applied to all the things like vessel naming too please?

Peace.

Link to comment
Share on other sites

3 hours ago, KawaiiLucy said:

Does the Refund on Recovery fix the bug with negative funds, eg. when recovering high amounts of rare metals/refined exotics from USI?

I don't know, depends on what USI is doing. Is there a more detailed report for that bug on the Squad bugtracker or on the USI github repo or forum thread ?

Edit : If you are talking about this :

Anything that is fixed by KSP-Recall will be fixed by KSPCommunityFixes, so the answer is yes (I updated the OP to mention that).

Edited by Gotmachine
Link to comment
Share on other sites

I'm receiving this error messages all the time I perform some staging event. Other moments too, but staging where I was able to find a pattern...

[ERR 18:48:56.605] Coroutine couldn't be started because the the game object 'TrackingFilters' is inactive!
...
[ERR 18:48:56.848] Coroutine couldn't be started because the the game object 'IVACollapseGroup' is inactive!

In addition to the messages on the screen, the game has a small freeze (less than 1s). But I don't know if this is because of this mod!

Thanks.

Link to comment
Share on other sites

8 hours ago, Dominiquini said:

I'm receiving this error messages all the time I perform some staging event. Other moments too, but staging where I was able to find a pattern...

Sorry for that, and thanks for reporting. I should have done a bit more testing, that last altimeter tweaking feature had a few issues.

Released v1.0.3 hotfix : https://github.com/KSPModdingLibs/KSPCommunityFixes/releases/tag/1.0.3

  • Fix persisted altimeter position not being correctly reloaded
  • Fix map filters transition coroutine errors by disabling the nested gameobject instead of the top one
Link to comment
Share on other sites

1 hour ago, Dominiquini said:

You thing this is a bug worth of fixing?

I would love to. However, this is far from an easy fix, as this is not really a bug, but more a missing feature.

The PAW items order is determined by the order of execution of every object that add items to it, change the items visibility or trigger PAW rebuilds, so it is completely uncontrollable.
The only real way to do it would be to re-order the items after the fact, which :
- Is quite complicated to implement : there are a lot of events that can trigger a PAW rebuild, and due to all the various caching/performance fixes Squad implemented, the PAW UI code is... lets say tortuous...
- Would require to manually define the desired order of all PAW items, which is quite a huge task when you factor in the gazillion of custom items from mods

Link to comment
Share on other sites

7 hours ago, Gotmachine said:

I would love to. However, this is far from an easy fix, as this is not really a bug, but more a missing feature.

The PAW items order is determined by the order of execution of every object that add items to it, change the items visibility or trigger PAW rebuilds, so it is completely uncontrollable.
The only real way to do it would be to re-order the items after the fact, which :
- Is quite complicated to implement : there are a lot of events that can trigger a PAW rebuild, and due to all the various caching/performance fixes Squad implemented, the PAW UI code is... lets say tortuous...
- Would require to manually define the desired order of all PAW items, which is quite a huge task when you factor in the gazillion of custom items from mods

Just to be clearer, what bothers is that the order keeps changing. Any order, as long as static, would be fine.
Anyway, thanks for considering this!

Link to comment
Share on other sites

25 minutes ago, Dominiquini said:

what bothers is that the order keeps changing. Any order, as long as static, would be fine.

That's the problem. There is nothing in the code that control the order, it is the result of the code execution path, which is very complex in that case, and consequently impossible to control or predict.
Even if I manage a way to detect PAW rebuild events, re-applying the initial order is quite hard, as some initially invisible PAW items will become visible after the first initialization and we won't be able to know where to put them.

I will see if I get the courage to work on this. Dwelling in the PAW code is a traumatic experience.

Edit : Just gave a quick look, there is actually some ordering code. So there is likely a bug in it.

Edited by Gotmachine
Link to comment
Share on other sites

4 minutes ago, Poodmund said:

This didn't use to happen before KSP 1.8.0, it was fine on 1.7.3. I raised an issue about it but it gained no traction: https://bugs.kerbalspaceprogram.com/issues/24943 

I upvoted it!

I opened a bug that I thing is serious, but doesn't have been picked is this: https://bugs.kerbalspaceprogram.com/issues/28185.  It's been confirmed, but it doesn't look like anyone is working on it... I didn't suggest it because I don't think it's part of the scope of this mod, but if you want to check it out!

Thanks.

Link to comment
Share on other sites

  • 2 weeks later...
On 7/25/2021 at 2:30 PM, Gotmachine said:

This is the same issue that is also fixed by KSP-Recall, but by patching the actual stock bug instead of doing a huge hack with hidden resources. If KSP-Recall is installed, the fix from KSPCommunityFixes will by used instead of the KSP-Recall one.

You should also force the Refunding to be disabled on KSP-Recall.cfg: 

@KSP-Recall:AFTER[999_KSP-Recall]
{
        @INSTALLED
        {
                @Resourceful = false
        }
}

This will prevent the FlightHelper and EditorHelper from running, saving some CPU cycles as their GameEvent handlers will not be hooked.

 

Link to comment
Share on other sites

Is making MH launchsites menu in the VAB/SPH larger in the scope of this mod?

For example, based on how many launchsites in the list, make the list expand, for example up until 10 lines.

Probably the same applied to the stock save folder list in the VAB/SPH

Link to comment
Share on other sites

On 7/29/2021 at 9:51 PM, Dominiquini said:

I opened a bug that I thing is serious, but doesn't have been picked is this: https://bugs.kerbalspaceprogram.com/issues/28185.

Just to be clear : does the contract work or not ?
Because the nullref itself is likely quite harmless, excepted that it prevent the orbit UI tooltip from showing.
Edit : And also, I can't replicate it in 1.12.2. No nullref when hovering on available contract orbits.

On 8/7/2021 at 10:17 PM, Lisias said:

ou should also force the Refunding to be disabled on KSP-Recall.cfg

Will add this to next update. Thanks for notifying.

1 hour ago, Dodge said:

Does this replace KSP-Recall? Seems like KSP-recall does have some other things fixed? 

This replace one of KSP-Recall fixes (recovery funds). Both mods can be installed together, and the recovery funds fix from KSPCommunityFixes will be used.
This being said, for KSP 1.12, I think the only other active fix in KSP-Recall is "Attached", and I have absolutely no idea what this is doing.

36 minutes ago, flart said:

Is making MH launchsites menu in the VAB/SPH larger in the scope of this mod?

That seems like a good UI QoL improvement. Feel free to open an issue for it, or even to submit a PR.

Edited by Gotmachine
Link to comment
Share on other sites

1 hour ago, Gotmachine said:

This being said, for KSP 1.12, I think the only other active fix in KSP-Recall is "Attached", and I have absolutely no idea what this is doing.

It does for AttachNodes what Resourceful does for Resources - prevent the current state from being squashed by the prefab data on some events on faulty KSP versions. A change on TweakScale ended up rendering it redundant when TweakScale is installed, but TweakScale-less installations that suffer the problem (attaching nodes being reset all the time) can force its activation the same way you could force the deactivation of Refunding to see if it fixes the problem.

It is not activated on KSP 1.12.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...