Sigma88 / Sigma-Replacements

Handles replacement of various KSP assets
13 stars 1 forks source link

CTD when aggressively switching between facilities #24

Closed milljm closed 6 years ago

milljm commented 6 years ago

I am running into a 'crash to desktop' issue when using only the sigma mods.

To reproduce, start with a clean KSP install, and only install sigma mod(s) (any variant, such as Texture, Heads, SkyBox, etc). There is no need to actually install any other mods that uses sigma (like GPP).

Next, load a new game (no need to adjust any KSP settings), and aggressively switch between the facilities  (@ ~.5 seconds). I've found the more sigma mods I use (Texture, Descriptions, Heads, Suites, etc all of them) the quicker the crash occurs.

It feels as if, there is some sort of time delay that needs to occur before 'sigma' replaces 'stuff' as I am registering a hard fault? But thats just my poor debugging attempts.

[Edit]: This issue is more prominent the more mods you have. Meaning, the more mods one has, the less aggressive one needs to be in order to trigger the issue (full seconds between facility switching).

Video link: https://drive.google.com/open?id=1pagM1Pv4WTT3YSK3s66pTqZdehOl2lNx output_log.txt error.log

Sigma88 commented 6 years ago

I never noticed this before, but I never change scene quickly so that might be the reason why

I assume you are not experiencing the same issue when my mods are not installed

I will look into this asap 👍

milljm commented 6 years ago

I do not receive this error when not using this mod... sorry! No developer likes to hear that, so if its any consolation, I never expected my issue to be related to sigma! =D took me a very long time to weed out all the other mods (all day).

I was fooling around with Memgraph and came to realize that Unity performs garbage collection on a facility change (I think). I am no C developer, but maybe those two are related somehow...

Regardless, thanks for looking into it, and I stand ready to assist if you need anything else!

Sigma88 commented 6 years ago

I can confirm this bug happens to me as well.

Thanks for reporting it :)

Sigma88 commented 6 years ago

I was able to reproduce the bug only with Heads and Suits,

I tried a fix, here are two alpha versions. If you could check them out and confirm that they solve the issue I will make a release out of them.

Sigma-Replacements_Heads.v0.1.8-alpha1.zip

Sigma-Replacements_Suits.v0.1.5-alpha1.zip

milljm commented 6 years ago

@Sigma88 as soon as I get home I will do so thanks!

milljm commented 6 years ago

Hmmm, unfortunately I still experience this issue; though it takes a decent amount of iterations to reach. The good news is, if I am patient, I do not run into the error (no one should be switching between facilities so rapidly anyways...).

I'll go ahead and close this issue. If you wish to continue working on it, well its your project :) I'll help out however I can!

[Edit]: Well... after installing all the mods I normally use... I can't get it to fail with your patch. So... Yeah... I think you got it 👍

Me trying to make it fail for 8 minutes (AKA; real boring video)

Sigma88 commented 6 years ago

hahaha thanks for testing!

I'll delay the release untill I'm finished with #23 if that's not a problem

milljm commented 6 years ago

Not a problem for me! Keep up the good dev work!

Apocryph commented 6 years ago

Hi @Sigma88,

I think that I'm running into this same issue - I'm getting a crash when using the latest release version of Sigma Replacements Heads/Suits sometimes when I enter the VAB or SPH. I don't think I was doing it super quickly, though to be fair I'm just testing this install atm, so I have been bouncing around trying to make it crash.

I can reproduce the crash with just the suits and heads replacers and stock - all I have in my GameData folder is the "sigma" and "squad" folders. I've tried your alpha builds posted above, and still get the crash.

Here's my logs: https://drive.google.com/file/d/1RGnd-p_U4DbgbpbyK7bQTSsM2E1hy8J5/view?usp=sharing

Hopefully this is enough issue to diagnose the problem - let me know if there's anything else I can provide! Thanks! (Also, I can open a new issue if you'd rather I do that.)

Sigma88 commented 6 years ago

hi, your logs shows this:

Mod DLLs found:
Stock assembly: Assembly-CSharp v0.0.0.0
ModuleManager v3.0.1.0
000_AT_Utils v1.4.4.0
MiniAVC v1.0.3.2
USITools v1.0.0.0
B9PartSwitch v1.10.0.0
BDB v1.3.1.0
MiniAVC v1.0.3.2
CCK v2.0.1.0 / v2.0.1.0 for KSP 1.3
MiniAVC v1.0.3.2
CLSInterfaces v1.2.0.0
ConnectedLivingSpace v1.2.5.5
ContractConfigurator v1.0.0.0 / v1.23.3
KerbalKonstructs v2.0.0.0 / v1.2.0.1
KerKonConConExt v1.0.0.0 / v1.23.3
MiniAVC v1.0.3.2
SimpleBoiloff v0.2.1.0
MiniAVC v1.0.3.2
CustomBarnKit v1.1.16.0
DeployableEngines v2.2.0.0
DMagic v1.3.0.11 / vv1.3.11
DMModuleScienceAnimateGeneric v0.19.0.0
ContractParser v1.0.7.0 / vv7.0
ProgressParser v1.0.8.0 / vv8.0
CapCom v1.0.2.7 / vv2.7
ContractsWindow v1.0.8.1 / vv8.1
ContractsWindow.Unity v1.0.8.1
DynamicBatteryStorage v1.0.0.0
Atmosphere v1.2.2.1
CelestialShadows v1.2.2.1
CityLights v1.2.2.1
EVEManager v1.2.2.1
PartFX v1.2.2.1
PQSManager v1.2.2.1
ShaderLoader v1.2.2.1
Terrain v1.2.2.1
TextureConfig v1.2.2.1
Utils v1.2.2.1
_BuildManager v1.2.2.1
FarFutureTechnologies v1.0.0.0
MiniAVC v1.0.3.2
Firespitter v7.3.6354.39102
MiniAVC v1.0.3.2
MiniAVC v1.0.3.2
GPPTextureChecker v0.0.0.0
KerbalRenamer v1.0.0.0
ExtraKerbals v1.0.0.0
SigmaReplacementsHeads v1.0.0.0
ExtraKerbalsHeads v1.0.0.0
SigmaReplacementsSuits v1.0.0.0
ExtraKerbalsSuits v1.0.0.0
SuitProg v0.0.0.0
Sigma88LoadingScreens v0.3.3.0
GroundConstruction v1.2.0.0
HideEmptyTechTreeNodes v1.0.0.0
IndicatorLights v1.0.0.0
RasterPropMonitor v0.29.3.14830
KerbalEngineer v1.1.3.0
KerbalEngineer.Unity v1.0.0.0
MiniAVC v1.0.3.2
ModularFlightIntegrator v1.0.0.0 / v1.2.4.0
Kopernicus.Components v1.0.0.0
Kopernicus.OnDemand v1.0.0.0
Kopernicus.Parser v1.0.0.0
Kopernicus v1.0.0.0
BetterManeuvering v1.0.3.3 / v3.3
BetterManeuvering.Unity v1.0.3.3
MiniAVC v1.0.3.2
MiniAVC v1.0.3.2
NearFuturePropulsion v0.9.0.0
MiniAVC v1.0.3.2
MiniAVC v1.0.3.2
FinalFrontier v1.0.0.0
MiniAVC v1.0.3.2
MiniAVC v1.0.3.2
RCSBuildAid v0.9.5.0
MiniAVC v1.0.3.3
DeepFreeze v0.23.7.0
SCANsat v1.8.2.0 / vv18.2
SCANsat.Unity v1.8.2.0
ScienceRelay v1.0.4.2 / vv4.2
CLSInterfaces v1.2.0.0
ShipManifest v5.2.0.0
MiniAVC v1.0.3.2
Stock assembly: KSPSteamCtrlr v0.0.1.35
Stock assembly: Steamworks.NET v9.0.0.0 / v9.0.0
Strategia v1.0.0.0 / v1.6.0
SEPScience v1.2.4.0 / v2.4
SEPScience.Unity v1.2.4.0
SurfaceExperimentPack v1.4.2.0
KerbalAlarmClock v3.8.5.0
TransferWindowPlanner v1.6.2.0
Konstruction v0.0.0.0
USILifeSupport v1.0.0.0
KolonyTools v1.0.0.0
WarpEngine v1.0.0.0
MiniAVC v1.0.3.2

Folders and files in GameData:
000_AT_Utils
000_FilterExtensions
000_USITools
B9PartSwitch
blackheart
Bluedog_DB
CommunityCategoryKit
CommunityResourcePack
CommunityTechTree
ConnectedLivingSpace
ContractConfigurator
ContractPacks
CryoEngines
CryoTanks
CTTP
CustomBarnKit
DeployableEngines
DMagicOrbitalScience
DMagicScienceAnimate
DMagicUtilities
DynamicBatteryStorage
EnvironmentalVisualEnhancements
FarFutureTechnologies
Firespitter
GEP
GPP
GroundConstruction
HideEmptyTechTreeNodes
IndicatorLights
JSI
JX2Antenna
KerbalEngineer
KerbalKonstructs
Kopernicus
ManeuverNodeEvolved
ModularFlightIntegrator
NearFutureLaunchVehicles
NearFutureProps
NearFuturePropulsion
NearFutureSpacecraft
Nereid
OPM
RCSBuildAid
REPOSoftTech
SCANsat
ScienceRelay
ShipManifest
Sigma
SpaceTuxIndustries
Stock folder: Squad

Strategia
SurfaceExperimentPackage
TheGoldStandard
TriggerTech
UmbraSpaceIndustries
UniversalStorage
VenStockRevamp
FinalFrontier.dat
ModuleManager.3.0.1.dll
ModuleManager.ConfigCache
ModuleManager.ConfigSHA
ModuleManager.Physics
ModuleManager.TechTree

to debug this I will need some help:

1- reproduce the bug with just SQUAD and Sigma Replacements and share those logs 2- try to reproduce the bug with just SQUAD (to make sure it's not an issue with your install)

to do the test install SigmaReplacements Heads or Suits and then replace the plugin with one of these:

Sigma-Replacements.newRequirements-alpha6.zip

Apocryph commented 6 years ago

Sorry about that - I had a lot of logs folders - I think I grabbed the wrong one by accident!

I just cleared my GameData folder again, and ran four tests (I'm attaching the logs for each that crashed)

KspLogs.zip

I'm not very well versed in reading ksp's crash logs, but it looks like they're all crashing with the same exception.

Let me know if there's any other tests you'd like me to run!

Sigma88 commented 6 years ago

I'm releasing a fix that worked for the guy who created this issue,

after this, if you still experience the issue we can start debugging your issue properly

Sigma88 commented 6 years ago

@Apocryph could you try the latest release and tell me if you still have the issue?

Sigma88 commented 6 years ago

reopening this since there seems to be still some issues

damn

Apocryph commented 6 years ago

Hey @Sigma88 ,

Just got a chance to try again myself - still having the same issue unfortunately (as you said). Here's my logs:

KspLogs-WithSuitsv0.2.0.zip

I saw your message as well - not sure if that means you can reproduce it, but I'm willing to test anything if you need me to, heh.

Sigma88 commented 6 years ago

good news is, it would seem that the CTDs happen only if you don't have any custom suit pack installed (that's why you were getting the issue and I wasn't)

Apocryph commented 6 years ago

Oh - cool! Originally, I was getting an exception with GPP installed, though I don't know if it's the same one - maybe that is resolved by this build. I'll try to load GPP again, or another suit pack if I can find one and report back.

Sigma88 commented 6 years ago

actually I can't even get the CTD with no custom Suits but MM installed, this is weird

Sigma88 commented 6 years ago

@Apocryph could you try adding MM to your test and see what happens?

Apocryph commented 6 years ago

Will do! Setting it up right now. 2.8.1 or 3 of Module Manager? Or does it not matter?

Sigma88 commented 6 years ago

I was using 3.0.1 but I don't think it matters

Apocryph commented 6 years ago

No luck - I still get the crash. It feels like I might be able to do more transitions before it happens, but I might just be imagining that. Here's logs with Squad + Suits 2.0 +

KspLogs3.zip

I'm going to try again more slowly - just to see if it's entirely me being too fast when I'm transitioning.

EDIT: I think I'm going fairly slow, but the crash seems consistent to me, for some reason.

Sigma88 commented 6 years ago

TEST_INSTALL.zip

for some reason I cannot manage to get the crashes with this install

could you try it, put all these in GameData with the Squad folder and load the game

Apocryph commented 6 years ago

Loaded up KSP with the squad folder + the contents of your test install, saw purple suits, still got the same crash :(

KspLogs-TestInstall.zip

Sigma88 commented 6 years ago

I have no idea, could you try moving the ksp install outside "ProgramFiles" ?

sometimes Windows has issues with that folder

I put mine in "C:\Games\Kerbal Space Program\"

Apocryph commented 6 years ago

Unfortunately, I had no luck with that either. It's possible that there's just something weird going on with my system, especially if you can't reproduce it at all/haven't gotten any other reports. I planning some hardware updates (and an OS reinstall) in the next few weeks, so maybe I'll give it another shot then to see if that clears something out of my system or something.

Thanks for looking into it!

I'm going to attach one last log - it looks the same to me, though.

KspLogs-MovedToC.zip

Sigma88 commented 6 years ago

@Apocryph if you want to try something a little less extreme than a complete OS re-install, you could try re-downloading KSP from steam/ksp store and try again.

I don't know what else to tell you to be honest since the logs don't really show any involvement of my mod (even tho it must be somehow related to my mod since you don't get the crash without it)

milljm commented 6 years ago

I skimmed over the posts here, so apologies if this has been tried already;

My issue of CTD went away while using @Sigma88 patch(s) Sigma-Replacements_Heads.v0.1.8-alpha1.zip, Sigma-Replacements_Suits.v0.1.5-alpha1.zip and installing all the mods that I originally was trying to roll with.

@Apocryph you probably already tried that... but, this is me just trying to help!

I honestly can not say what has stopped my CTDs. But they did stop...

Sigma88 commented 6 years ago

@Apocryph I just thought about it

what kind of game were you creating? Sandbox / Science / Career?

Apocryph commented 6 years ago

@Sigma88, I think most if not all of my tests were in Sandbox for testing - I can try in science or career when I get home though, if you were trying something else. I'll also try a fresh install, shouldn't take to long to try that for sure.

@milljm - I did try once with the new version and GPP for my textures - no luck for me unfortunately, and my last test was with a simple config provided by Sigma. Were you running GPP as well, or were you using something else for your textures? I'm willing to try anything, haha

Sigma88 commented 6 years ago

my tests were all in sandbox, so that doesn't seem to be a factor

Apocryph commented 6 years ago

Ahh, okay - I'll try the clean install tonight anyways, definitely couldn't hurt.

Rampant Speculation below:

I know next to nothing about KSP modding, but I wonder if the UICanvas/UIMasterController stuff in the exceptions could be pointing to a tutorial window showing up with a kerbal in it whose getting a custom texture applied, and that's going haywire? Maybe the texture can't be applied to the kerbal in that circumstance or something?

Like I said, it's just a guess. I was poking through the code last night (I develop in C# at work) and saw code that looked like it was applying textures to kerbals based on triggers, and I separately noticed while that sometimes KSP opens little tutorial windows and wernher von kerman or someone else is visible there. Doesn't really make sense why it'd be failing with no config in that scenario, but it's just an idea.

milljm commented 6 years ago

my failures happened in sandbox as well. However, my last video I posted shows me starting up a new sandbox game (but with all my mods available) and not running into CTDs.

@Apocryph I was running GPP... among others. Let me post a link to a google share of all the mods I was running at the time: https://drive.google.com/drive/folders/1hRjgk2fAbJHx9JIsSZ_2yt6_mPMLxTvK?usp=sharing

The .zip files are the files containing the mods (ksp_1.3.1-environment.zip contains the sigma mod and the mods that use it). I mean, you're welcome to try all of these mods and see what happens... But I admit, thats a lot of data to download just to see if it works. Your call!

Keep in mind, I created this for my Dad... not really for anyone else... Oh, and I also legally purchased a copy for him to use (the shared link does not contain a copy of Squad) =D !

milljm commented 6 years ago

When I look over the instructions I wrote for my dad, yes I indeed run Kerbal from C:\some_directory and not from Program Files. Could be a factor...

Sigma88 commented 6 years ago

actually I was able to reproduce the bug and now I am narrowing it down, the problem is that the logs don't give me any info about what is going wrong

Apocryph commented 6 years ago

@Sigma88 - good to hear you're able to reproduce it - though that's unfortunate about the logs :(

@milljm thanks for the info! We tried moving the install with no luck, but it sounds like Sigma is onto something, so fingers crossed.

Apocryph commented 6 years ago

Just an update - tried a clean install just to give it a shot, unfortunately still getting a crash. This is pretty anecdotal, but it seemed that the first time I ran the game after the reinstall, it made it through more transitions than previously, I was switching between the facilities quite a few times without problems before it crashed. Subsequent runs though produced results closer to my normal experiences, so it may have been a fluke.

I made sure to delete the leftover files in the folder after letting steam do the uninstall, so there shouldn't have been any trace of the previous install. I installed outside of the program files folder again for good measure.

I know you said you weren't getting much from the logs, but I'll attach my last crashlog just in case.

KspLogsFreshInstall.zip

Sigma88 commented 6 years ago

good news I found what is causing the bug

bad news, I have no idea why it does

Apocryph commented 6 years ago

ProgrammingMantras

Good to hear you've id'd it at least - now the true fun begins, lol

Sigma88 commented 6 years ago

@Apocryph could you please try using these plugins and tell me if they still cause crashes?

Sigma-Replacements.newRequirements-alpha7.zip

Apocryph commented 6 years ago

@Sigma88 - will do, I'll give these a shot tonight!

Sigma88 commented 6 years ago

don't use the previous one

it had some issues.

I think I've managed to fix all issues, heres the link:

Sigma-Replacements_FixCTD-alpha8.zip.zip

strike that, I did some more tests and I have now released 2 new versions:

Heads v0.2.1 and Suits v0.2.1

those should definitely fix this issue

LET'S HOPE

Apocryph commented 6 years ago

It works! :tada: I loaded up Suits, MM, and your test config with a new sandbox install, and I've been switching facilities for several minutes and no crash!

I'll throw your replacements mods back in with the rest of my career install when I start that up tonight - I'm excited for the guys to be reunited with their glorious beards. Thanks for the hard work!

Sigma88 commented 6 years ago

try a career game as well please :)

happy this works, FINALLY

Apocryph commented 6 years ago

Hey Sigma - did some more testing, seems like we're solid, no crashes yet with just Suits and Heads loaded. I've tested both career and sandbox, and haven't seen anything yet with many transitions. 👍

I saw you also had an update to the descriptions replacer as well 8 hours ago, so I also added that in, and with that, I do eventually get a ctd, for which I'm going to attach the logs. The exception in here is different, and I don't have a config for descriptions set up, so I don't know if either of those are contributors. I'm not even sure I'm going to use that one (don't know if GPP has configs for it), but I figured I may as well let you know! It also took quite a few transitions to get it to happen, perhaps a minute or so.

KspLogs_SuitsHeadsDescriptions.zip

I'm going to run some more tests just to see if I can narrow anything down! Also planning on playing with it a bit with GPP + my full load order, but I don't expect anything different there. Also going to install Skybox/Textures/Navigation - I think those are separate enough that they don't need the tweaks you made for heads/suits, right?

Sigma88 commented 6 years ago

yeah GPP used descriptions, I'll look into it

Apocryph commented 6 years ago

More testing: -New CTD happens with descriptions alone (+ Module Manager and Squad folder) -Tried some more with just suits/heads to make sure they're solid (they are) -New CTD seems to happen when leaving the VAB or SPH, at least I don't think I've seen it yet entering them -New CTD happens in both sandbox and career (attaching career logs) -New CTD is much harder to reproduce, it took me the past twenty minutes to only make it happen a couple times, spamming transitions.

Given how much harder this one is to repro, I don't know how much effort it's worth, but here's the info, heh.

KspLogs_Descriptions_Career.zip

Sigma88 commented 6 years ago

-New CTD is much harder to reproduce, it took me the past twenty minutes to only make it happen a couple times, spamming transitions.

man that is dedication! hahaha

I'll take a look to see if I can see the issue in the code, maybe it's similar to the other two

btw, if in future you want to test bugs you can add a small cfg with this:

@SigmaReplacements
{
    %debug = true
}

this will fill the logs with useful informations, but it will also take a big toll on performance, so use only when you are trying to see where the code breaks

Apocryph commented 6 years ago

Hahaha, if I'm going to test it, may as well be thorough about it!

Thanks for the tip about the debug flag - I think I've already got that on - I'm still using the purple config you sent the other day which has "debug = true", though without the %. Not sure if that matters - but I get a message saying "Debug Spam Enabled".

I did some quick testing with the builds of Navigation/Textures/Skybox from a couple days and those all seemed solid - I can't get them to ctd at all anywhere I've tried in my sandbox.

I'm going to go ahead and play a few hours tonight in my career save with Suits/Heads/Navigation/Textures/Skybox. I'll let you know if anything else comes up there, but it's looking good so far. Thanks again!

Sigma88 commented 6 years ago

Thanks again!

thanks to you!

without the %. Not sure if that matters

nah, it doesn't really matter as long as you get the warning you have the debug feature on