@@ -308,6 +308,9 @@ KSP_COMMUNITY_FIXES
308308 // Optional MM-patcheable toggle to always disable the MH features
309309 OptionalMakingHistoryDLCFeaturesAlwaysDisable = false
310310
311+ // Allow targeting the parent body of the current craft, or any body in the parent hierarchy
312+ TargetParentBody = true
313+
311314 // ##########################
312315 // Performance tweaks
313316 // ##########################
@@ -372,19 +375,25 @@ KSP_COMMUNITY_FIXES
372375 LogGameEventsSubscribers = false
373376 }
374377
375- // Fix CommNet update throttling mechanism that exists in stock but doesn' t work correctly.
376- // This is supposed to prevent full CommNet network updates from happening every frame, but instead to
377- // to happen at a regular real-world time interval of 5 seconds while in flight. Enabling this throttling
378- // mechanism has an detrimental impact on the precision of the simulation, so this patch isn' t enabled by
379- // default to avoid issues in mods relying on the stock behavior. Enabling this can provide a decent
380- // performance uplift in games having a large amount of celestial bodies and/or vessels.
381- CommNetThrottling = false
378+ // Implement a throttling mechanism preventing CommNet network updates from happening every frame.
379+ // When this patch is enabled, network updates will only happen at a set interval of in-game seconds,
380+ // defined by below settings. This patch will cause events such as line of sight loss or acquisition,
381+ // or comm link changes to happen with a delay, but provide a significant performance uplift in games
382+ // having a large amount of celestial bodies and/or vessels.
383+ CommNetThrottling = true
382384
383- // Interval in real-world seconds between full CommNet network updates.
384385 COMMNET_THROTTLING_SETTINGS
385386 {
386- unpackedInterval = 5 // interval when the active vessel is not timewarping
387- packedInterval = 0.5 // interval when the active vessel is timewarping
387+ // Maximum duration in in-game seconds between CommNet updates.
388+ // Increasing it further than the 2.5s default won' t have any effect on framerate and will make
389+ // CommNet situation changes (such as loss or acqusition of signal) increasingly sluggish.
390+ maxGameTimeInterval = 2.5
391+
392+ // Minimum duration in real world *milliseconds* between CommNet updates.
393+ // Increasing it will only affect medium to fast timewarp situations, and will improve framerate
394+ // and significately reduce simulation precision. Recommended value is either 20 or 500 to 1000,
395+ // values in between will likely result in stuttery framerate and no perceptible improvement.
396+ minRealTimeInterval = 20
388397 }
389398
390399 // This tweak eliminates KSP' s stock behavior of saving every time
@@ -448,7 +457,7 @@ KSP_COMMUNITY_FIXES
448457 // strut position tracking...
449458 PartSystemsFastUpdate = true
450459
451- // Various small performance patches (volume normalizer, eva module checks)
460+ // Various small performance patches (volume normalizer, eva module checks, FlightGlobals.fetch )
452461 MinorPerfTweaks = true
453462
454463 // General micro-optimization of FlightIntegrator and VesselPrecalculate. This has a significant impact in
@@ -458,6 +467,16 @@ KSP_COMMUNITY_FIXES
458467 // General micro-optimization of floating origin shifts. Main benefit is in large particle count situations
459468 // but this helps a bit in other cases as well.
460469 FloatingOriginPerf = true
470+
471+ // Improve performance in the Map View when a large number of vessels and bodies are visible via faster drawing
472+ // of orbit lines and CommNet lines.
473+ OptimisedVectorLines = true
474+
475+ // Faster part icon generation and Part fields parsing.
476+ PartParsingPerf = true
477+
478+ // Significantly reduces the time it takes to open the craft browser and to search by name. Most noticeable with lots of craft.
479+ CraftBrowserOptimisations = true
461480
462481 // # #########################
463482 // Modding
@@ -496,6 +515,11 @@ KSP_COMMUNITY_FIXES
496515 // To use add `Description` attribute to the field.
497516 KSPFieldEnumDesc = false
498517
518+ // Allow dynamically defining additional BaseFields on a Part or PartModule and having the backing
519+ // field for that BaseField in another class / instance than the targetted Part or Module. Look for
520+ // the examples and documentation in the patch source.
521+ BaseFieldListUseFieldHost = true
522+
499523 // # #########################
500524 // Localization tools
501525 // # #########################
0 commit comments