Jump to content

[1.8 - 1.12] KSPCommunityFixes - Bugfixes and QoL tweaks


Gotmachine

Recommended Posts

Mhhh... this is kinda odd.... whenever I try to do some orbital construction the installation of some parts lead to rapid unplanned disassembly on my space stations. Is there some possibility for KSPCF to kill a bit of the kraken's power on EVA construction? 

Example: EVA installation of a BDA+ weapons bay (printed with the sandcastle and KSP_Partvolumes mod in situ and installed via stock EVA construction mode)

Edited by Rakete
Link to comment
Share on other sites

Just used the new FastLoader in the 1.24 pre-release patch. Excellent work. My moderate-heavy KSP game (83 mods) got a insane massive boost in load times. From 3 minutes and 19 seconds on my 5950x and Gen 4 SSD to 1 minute and 14 seconds. That's about 2.6x faster! Seriously impressive work you do.

Edited by Hunter54711
Link to comment
Share on other sites

I wonder if it's possible to make a QoL patch that lets us lock the robotics while they're moving, or at least increase the threshold. Because right now the button is literally unpressable when a robotic part is using any electricity, even if it's 0.001 ec/s. 

Link to comment
Share on other sites

On 1/17/2023 at 5:13 PM, dok_377 said:

I wonder if it's possible to make a QoL patch that lets us lock the robotics while they're moving, or at least increase the threshold. Because right now the button is literally unpressable when a robotic part is using any electricity, even if it's 0.001 ec/s. 

I've been messing with an animated part, and have run into a similar problem (I think)...
I believe it has to do with the part/animation status... it seems while a part is in the "Moving" status, my PAW button which controls the deployment/animation disappears, and there is no longer anyway to interact with the part to stop/change the deployment mode vOv

Link to comment
Share on other sites

7 hours ago, Stone Blue said:

I've been messing with an animated part, and have run into a similar problem (I think)...
I believe it has to do with the part/animation status... it seems while a part is in the "Moving" status, my PAW button which controls the deployment/animation disappears, and there is no longer anyway to interact with the part to stop/change the deployment mode vOv

But that's a prebaked animation. Robotics don't work like this. They actually have physically moving individual pieces, as far as I know, and the button does not disappear. It just becomes unclickable.

Who knows though, it might be the same cause, just acting differently. Maybe they just forgot to remove the button while the robotics are in motion. 

Edited by dok_377
Link to comment
Share on other sites

Aha. Tracked it to the latest release of this mod. I started a new KSP career game today. My very first rocket (MK1 pod, flea, MK16 chute, 3 basic fins) is not looking right. Says to myself "what! Descent on chute is  30+ m/s instead of the expected 7 or 8; does not make for gentle landings." Comparing things to a KSP copy on one of my other systems, I see that the MK16 fully deployed effective diameter is I think it was (not looking at that right now) 2.6 instead of 20.7. Odd. I noticed that the version of this mod CKAN gave me is only 2 days old, and looking at this thread, I see recent discussion relating to chutes. Hmm.... Reverting to the previous version of this mod fixes it. Suppose I could generate some log files if needed, but the general diagnosis seems clear enough to me.

[edit] Amused at the forum software's bowdlerization of my use of a common 3-letter acronym for expressing surprise. It replaced that acronym with just "what", which I suppose is accurate, if less emphatic. Better than a previous case I ran into where a fairly common word for "complained" got turned into "poodled", which didn't quite catch the meaning; I've learned to avoid that word, even though that particular usage of it doesn't have the impolite connotation that some other uses of the same word have. :-)

Edited by rmaine
amused at forum's bowdlerization
Link to comment
Share on other sites

9 hours ago, rmaine said:

Descent on chute is  30+ m/s instead of the expected 7 or 8

I can't reproduce this, tried a bunch of times in various configurations. Please provide exact reproduction steps.

9 hours ago, rmaine said:

I see that the MK16 fully deployed effective diameter is I think it was (not looking at that right now) 2.6 instead of 20.7

Assuming you're talking about the VAB part list tooltip, I don't see that either.

The ChutePhantomSymmetry patch is quite simple and straightforward, I'm a bit skeptical it can cause such issues.

Also, note that you don't need to downgrade to disable a specific patch, you can disable it with a config switch (take a look at the KSPCF_UserSettings.cfg.extra file for instructions).

Link to comment
Share on other sites

Hmm. Ok. Cleanest way I can do. Fresh unmodded  KSP 1.12.5 copied  from my steam dir into C:\Games. Use CKAN to install the community fixes 1.24.1; it drags in module manager 4.2.2 and harmony 2 22.1.0. No other mods. Start KSP, leaving everything at defaults (even accepting the default lowish resolution windowed graphics, which isn't normally how I play). New career game also accepting all defaults. Yes, let this mod do it's loading efficiency thing. Enter VAB. Right click on the Mk16 chute. Yep. Effective fully-deployed diameter is 2.6. That already shows the issue, so I don't even bother to build or launch a rocket. Quit game. Tell CKAN to use version 1.23.0 of this mod and ignore CKAN's warning that that mod version isn't supported on this game version. Accept the png cache thing. New career game; yes overwrite the game named "default". Enter VAB. Right click Mk16. Fully deployed effective diameter is 20.7. Quit game.

Edited by rmaine
fix typo. 12.6 -> 2.6
Link to comment
Share on other sites

Experimenting with the cfg file, which I'd never really looked at before. Use CKAN to go back to mod version 1.24.1. New game, same steps. Yep, effective diameter is 2.6 again. Quit game. Edit the cfg file. Looks straightforward. Changed ChutePhantomSymmetry to false. New game, same steps. Effective diameter still 2.6. Ok. Maybe my focus on that patch was misleading.

Link to comment
Share on other sites

@rmaineThanks for the details.

Still can't reproduce this, although I don't have a fresh KSP install on hand, will try again tomorrow.
Do you have the DLCs installed ?

This being said, this sounds like a config loading/parsing issue.
The effective diameter as shown in the VAB is derived from the drag cube, and the FastLoader patch does alter the code path used in drag cube calculations while loading, so maybe there is something wrong there.

Not sure this will help, but after reproducing the issue, could you open the PartDatabase.cfg file at the root of your KSP install and find the "parachuteSingle" block, then post it here ?

Mine looks like this :

PART
{
	url = Squad/Parts/Utility/parachuteMk1/parachuteMk1/parachuteSingle
	DRAG_CUBE
	{
		cube = PACKED, 0.1571,0.656,0.4137, 0.1571,0.6565,0.4137, 0.2765,0.6425,0.3861, 0.2765,0.8648,0.1765, 0.1614,0.6568,0.6308, 0.1614,0.6703,0.669, 6.735E-06,0.1034,0.01848, 0.6307,0.3626,0.6124
		cube = SEMIDEPLOYED, 7.477,0.2766,0.5834, 7.477,0.2766,0.5834, 0.5275,1.225,4.172, 0.5275,1.125,14.99, 7.54,0.276,0.5646, 7.54,0.2741,0.5325, 6.557E-07,8.838,1.147E-05, 0.826,17.83,0.821
		cube = DEPLOYED, 72.79,7.57,4.943, 72.79,7.569,4.943, 52.78,8.574,4.172, 52.78,6.536,14.99, 73.5,7.494,4.551, 73.5,7.492,4.551, 6.676E-06,8.838,0.0001245, 8.26,17.83,8.21
	}
}

 

Link to comment
Share on other sites

Hmm. Yes, this is driving me crazy (I know - probably you as well). I do have the making history DLC and pawing through the player.log file (which I find really hard to discern much from), I saw MK16 referencing Making History. Made me wonder about some interaction there, which I was in the middle of investigating when I read your most recent post. As a quick check, I tried moving the GameData\SquadExpansion\MakingHistory dir to my desktop just to get it out of the whole KSP tree. Problem went away. Thought I was on the track, but wasn't sure t hat was a clean way to remove that DLC, so I deleted the DLC from my steam install, made a new copy, installed this mod with CKAN. Darn. Problem still there. Here's the part excerpt you asked about and I see that it sure looks suspiciously different from yours. Think I'll try deleting my whole steam install and reinstalling it without the DLC. Later on that.

PART
{
    url = Squad/Parts/Utility/parachuteMk1/parachuteMk1/parachuteSingle
    DRAG_CUBE
    {
        cube = PACKED, 0.1571,0.6559,0.4137, 0.1571,0.6561,0.4137, 0.2765,0.6432,0.3861, 0.2765,0.8647,0.1765, 0.1614,0.6528,0.6308, 0.1614,0.672,0.669, 6.735E-06,0.1034,0.01848, 0.6307,0.3626,0.6124
        cube = SEMIDEPLOYED, 7.477,0.2764,0.5794, 7.477,0.2764,0.5794, 0.5275,1.225,4.172, 0.5275,1.124,14.99, 7.54,0.2754,0.5646, 7.54,0.2744,0.5325, 6.557E-07,8.838,1.147E-05, 0.826,17.83,0.821
        cube = DEPLOYED, 7.477,2.653,0.5794, 7.477,2.653,0.5794, 0.5275,11.76,4.172, 0.5275,10.79,14.99, 7.54,2.644,0.5646, 7.54,2.634,0.5325, 6.557E-07,8.838,1.147E-05, 0.826,17.83,0.821
    }
}

Link to comment
Share on other sites

Ok. More data. Completely deleted my steam install. Reinstalled (without any DLC). The parachuteSIngle block looks like yours above. Copied that install to my C:\Games dir so as to not corrupt anything in my steam dir. CKAN installed latest version of this mod and dependencies. Launch game, letting the mod do its png optimization. Looks bad. Quit game. Check the partDataBase.cfg file. It has changed. Now looks like the (presumably bad) one I show above. make another copy of the game from my steam dir. CKAN install, etc. This time tell the mod not to do it's png optimization. It still changed that block of the partDataBase.cfg file. For the moment, I'm going to leave my steam dir with no DLC in case more digging is useful. Though when I play for real, I really like the Making History DLC (and the Missing History mod).

Link to comment
Share on other sites

Not to dismiss rmaine's concerns, but I can't repro this either on a clean install.  I think it must be a external mod or corruption issue somehow.  Not sure how though.

When you delete your steam install, delete the ksp folder from windows explorer too btw.  Steam will not remove modified files.

For reference, here's my config from my stock game:

PART
{
    url = Squad/Parts/Utility/parachuteMk1/parachuteMk1/parachuteSingle
    DRAG_CUBE
    {
        cube = PACKED, 0.1569,0.6557,0.4137, 0.1569,0.6557,0.4137, 0.2765,0.6423,0.3861, 0.2765,0.8647,0.1765, 0.1612,0.6491,0.6308, 0.1612,0.6762,0.669, 6.735E-06,0.1034,0.01848, 0.6307,0.3626,0.6124
        cube = SEMIDEPLOYED, 7.477,0.2763,0.5794, 7.477,0.2764,0.5794, 0.5275,1.225,4.172, 0.5275,1.124,14.99, 7.54,0.2753,0.5646, 7.54,0.2743,0.5325, 6.557E-07,8.838,1.147E-05, 0.826,17.83,0.821
        cube = DEPLOYED, 72.79,7.568,4.943, 72.79,7.567,4.943, 52.78,8.568,4.172, 52.78,6.533,14.99, 73.5,7.509,4.551, 73.5,7.472,4.551, 6.676E-06,8.838,0.0001245, 8.26,17.83,8.21
    }
}

Edited by R-T-B
Link to comment
Share on other sites

Yes, I know to delete the ksp dir in steam when doing a clean install. Did that. And yes, that's what my config looks like in my stock game, and even after I install this mod (and its 2 dependencies) from CKAN. No other mods at all. It's after launching KSP that the config file changes as shown.

Link to comment
Share on other sites

Just to say, I did randomly experience a similar issue to this the first time yesterday, seemingly out of nowhere... was very confused as my Mk1 Lander Can with a Mk16 chute on top ended up slamming into the ground at 35m/s when fully deployed. I reloaded, EVA'd and parachuted down whilst the Lander Can smashed into the ground again. I thought it was an anomaly, if I see it again I'll dig further. This was with 1.24.1 installed.

Edited by Poodmund
Link to comment
Share on other sites

Decided to hit hard on the suggestion of corruption/whatever. I haven't much played games on my iMac for years. The Mac being a pain in the...um... let's say donkey for games is a large part of why I got a Windows box initially as a dedicated game machine, though I've been moving other of my stuff to it over the years. Actually typing this on my iMac. Installed KSP on this Mac using steam. I don't think KSP has ever been installed on this particular Mac, so that's a very fresh install. Had to paw around to remind myself where steam installs stuff on the Mac. Found it. Tried installing CKAN. "Bad word" Apple gatekeeper or whatever it's called. Found where to tell it to allow CKAN to run in spite of not being "blessed" by Apple. (Apple trying to force me to buy into their closed ecosystem is a big reason I'm moving out of it instead). CKAN still won't come up? Oh. Says it needs mono. I start to grab mono, but decide to just do without CKAN for this. Only 3 mods to install anyway, and I'm not worried about keeping them up to date as it's just for this test. Manually installed harmony 2, module manager, and this mod. Took a look at the partDataBase.cfg file. Looks good. Launch ksp. Look at the chute in the VAB. Looks bad. Quit ksp. Relook at the partDataBase.cfg file. Now it looks bad. I'd say that doing all this on a different computer, even with a completely different OS, pretty much puts the nail in any suggestion that it is corruption or something like that on my end.

Link to comment
Share on other sites

8 hours ago, rmaine said:

Yes, I know to delete the ksp dir in steam when doing a clean install. Did that. And yes, that's what my config looks like in my stock game, and even after I install this mod (and its 2 dependencies) from CKAN. No other mods at all. It's after launching KSP that the config file changes as shown.

I have launched KSP in that install several times, with and without KSPCF.  That's why I believe something else is at play here.  Not sure what though...  the whole thing seems exceptionally odd.

Edited by R-T-B
Link to comment
Share on other sites

Ok, I managed to reproduce the issue.

I won't have a lot of time to investigate in the following days, but this is caused by the FastLoader patch, and it actually cause drag cubes in general to be semi-randomly wrongly generated.
Specifically, this happen on all parts having multiple drag cubes defined, this include parachutes, but also animated parts such as the inflatable heatshield, deployable antennas, landing gears, etc.

The FastLoader patch alter the part compilation to decouple it from framerate, but it seems some part of the drag cube computations actually require a frame to skipped.
I suspect what require a frame skip is setting the part animation at the desired position for each drag cube, but it might be an issue with the aero texture not being updated immediately, this require further investigation.
The reason it's semi-random is likely because the FastLoader patch still skip a frame occasionally to maintain ~30 FPS while loading.

I'm opening a github issue to track this, will try to push a fix ASAP.

Link to comment
Share on other sites

Does anyone have any idea about these errors?

Spoiler

[EXC 17:40:08.863] InvalidCastException: Specified cast is not valid.
    KSPCommunityFixes.Modding.FieldData.Read (ConfigNode node, System.Object host, System.Int32 attribIndex) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    KSPCommunityFixes.Modding.TypeCache.Read (System.Object host, ConfigNode node) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    KSPCommunityFixes.Modding.PersistentIConfigNode.ConfigNode_ReadObject_Prefix (System.Object obj, ConfigNode node, System.Boolean& __result) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    (wrapper dynamic-method) ConfigNode.ConfigNode.ReadObject_Patch1(object,ConfigNode)
    (wrapper dynamic-method) ConfigNode.ConfigNode.LoadObjectFromConfig_Patch2(object,ConfigNode,int,bool)
    ConfigNode.LoadObjectFromConfig (System.Object obj, ConfigNode node) (at <4b449f2841f84227adfaad3149c8fdba>:0)
    StationScience.StnSciScenario..ctor () (at <bee40b38c5f24f8b962dd053be18e86b>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.GameObject:AddComponent(Type)
    ScenarioRunner:AddModule(String)
    ScenarioRunner:AddModule(ConfigNode)
    ProtoScenarioModule:Load(ScenarioRunner)
    ScenarioRunner:LoadModules(List`1)
    ScenarioRunner:SetProtoModules(List`1)
    Game:Load()
    KSP.UI.Screens.SpaceTracking:Start()

...

[ERR 17:42:23.763] [KSPCommunityFixes]: No Persistent fields on object of type Interface that is referenced in persistent field, adding as null to TypeCache.

...

[EXC 17:42:25.873] InvalidCastException: Specified cast is not valid.
    KSPCommunityFixes.Modding.FieldData.Read (ConfigNode node, System.Object host, System.Int32 attribIndex) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    KSPCommunityFixes.Modding.TypeCache.Read (System.Object host, ConfigNode node) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    KSPCommunityFixes.Modding.PersistentIConfigNode.ConfigNode_ReadObject_Prefix (System.Object obj, ConfigNode node, System.Boolean& __result) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    (wrapper dynamic-method) ConfigNode.ConfigNode.ReadObject_Patch1(object,ConfigNode)
    (wrapper dynamic-method) ConfigNode.ConfigNode.LoadObjectFromConfig_Patch2(object,ConfigNode,int,bool)
    ConfigNode.LoadObjectFromConfig (System.Object obj, ConfigNode node) (at <4b449f2841f84227adfaad3149c8fdba>:0)
    StationScience.StnSciScenario..ctor () (at <bee40b38c5f24f8b962dd053be18e86b>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.GameObject:AddComponent(Type)
    ScenarioRunner:AddModule(String)
    ScenarioRunner:AddModule(ConfigNode)
    ProtoScenarioModule:Load(ScenarioRunner)
    ScenarioRunner:LoadModules(List`1)
    ScenarioRunner:SetProtoModules(List`1)
    Game:Load()
    FlightDriver:Start()

...

[EXC 17:45:19.620] InvalidCastException: Specified cast is not valid.
    KSPCommunityFixes.Modding.FieldData.Read (ConfigNode node, System.Object host, System.Int32 attribIndex) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    KSPCommunityFixes.Modding.TypeCache.Read (System.Object host, ConfigNode node) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    KSPCommunityFixes.Modding.PersistentIConfigNode.ConfigNode_ReadObject_Prefix (System.Object obj, ConfigNode node, System.Boolean& __result) (at <ea36b64569b14097acb5977deb4b4bdb>:0)
    (wrapper dynamic-method) ConfigNode.ConfigNode.ReadObject_Patch1(object,ConfigNode)
    (wrapper dynamic-method) ConfigNode.ConfigNode.LoadObjectFromConfig_Patch2(object,ConfigNode,int,bool)
    ConfigNode.LoadObjectFromConfig (System.Object obj, ConfigNode node) (at <4b449f2841f84227adfaad3149c8fdba>:0)
    StationScience.StnSciScenario..ctor () (at <bee40b38c5f24f8b962dd053be18e86b>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.GameObject:AddComponent(Type)
    ScenarioRunner:AddModule(String)
    ScenarioRunner:AddModule(ConfigNode)
    ProtoScenarioModule:Load(ScenarioRunner)
    ScenarioRunner:LoadModules(List`1)
    ScenarioRunner:SetProtoModules(List`1)
    Game:Load()
    <Start>d__4:MoveNext()
    UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

 

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.

×
×
  • Create New...