net-lisias-ksp / KSP-Recall

Recall for KSP blunders, screw ups and borks.
GNU General Public License v2.0
25 stars 2 forks source link

General Support Issue #19

Closed Lisias closed 2 years ago

Lisias commented 3 years ago

General Support Issue.

For things that do not deserve (at least, yet) an Issue.

Lisias commented 3 years ago

Fellow Kerbonaut Krazy1 reported a weird issue related to Cargo and Inventory parts, apparently affecting Illuminator Mk1.

Well, I did this a try but no dice. I could not reproduce it on a naked KSP (only with KSP-Recall and TweakScale).

screenshot45

screenshot46

screenshot47

KSP.log

As a matter of fact, however, I found this exception on KSP.log while exiting the game:

[LOG 06:31:49.406] [PlanetariumCamera]: Focus: Kerbin
[ERR 06:31:49.411] Exception handling event onPlanetariumTargetChange in class KnowledgeBase:System.NullReferenceException
  at (wrapper managed-to-native) UnityEngine.Component.get_gameObject(UnityEngine.Component)
  at KSP.UI.Screens.KnowledgeBase.ActivateApps (KSP.UI.Screens.KnowledgeBase+KbTargetType targetType, MapObject target) [0x0010f] in <cf1abf6b50ac49c3b967fb61a43f1e5f>:0
  at KSP.UI.Screens.KnowledgeBase.OnMapFocusChange (MapObject target) [0x000f4] in <cf1abf6b50ac49c3b967fb61a43f1e5f>:0
  at EventData`1[T].Fire (T data) [0x000b0] in <cf1abf6b50ac49c3b967fb61a43f1e5f>:0

[EXC 06:31:49.536] NullReferenceException
    KSP.UI.Screens.KnowledgeBase.ActivateApps (KSP.UI.Screens.KnowledgeBase+KbTargetType targetType, MapObject target) (at <cf1abf6b50ac49c3b967fb61a43f1e5f>:0)
    KSP.UI.Screens.KnowledgeBase.OnMapFocusChange (MapObject target) (at <cf1abf6b50ac49c3b967fb61a43f1e5f>:0)
    EventData`1[T].Fire (T data) (at <cf1abf6b50ac49c3b967fb61a43f1e5f>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    KSPe.Util.Log.UnityLogDecorator:UnityEngine.ILogHandler.LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:LogException(Exception)
    EventData`1:Fire(MapObject)
    PlanetariumCamera:SetTarget(MapObject)
    PlanetariumCamera:OnVesselDestroy(Vessel)
    EventData`1:Fire(Vessel)
    Vessel:OnDestroy()

I failed to correlate this to Recall or TweakScale.

Lisias commented 3 years ago

Fellow Kerbonaut Warro have some problems with his/her installment.

Log: KSP.log.zip Sample craft: Auto-Saved Ship.craft.zip

On a clean Test Bed (KSP 1.11.2, KSPR & TweakScale), things are working fine with KIS. KIS is not a problem. (KSP-Recall neither) at this moment:

screenshot50

screenshot51

Based on the sample craft file, the list of probable triggers for the problem appears to be:

At this moment, there's no other solution but to carry on an Uninstall Fest, hunting for the trigger of the problem.

-- EDIT --

A new test. This time I dropped the Electric ScrewDriver on the ground before recovering.

screenshot52

screenshot53

The cost if the ScrewDriver was not recovered, what's the expected behaviour.

Lisias commented 3 years ago

Fellow Kerbonaut Krzesny found something weird on Baha EPL Redrilled that I found yet more weird, and so I decided to give this a look.

The described behaviour was not reproduced on KSP 1.5.1, so I ruled out a problem on the config files.

screenshot16

screenshot17

My current guess is the need to use the latest Interstellar Fuel Switch, as the one provided with the original download is too old to be used on KSP 1.11.2.

ERRATA

I used the wrong container! The Ore one works fine, it's the Expanding Rocket Parts Container the problem!

screenshot18

screenshot19

So, the guy was right. There's a problem on the Config file, his assessment of the situation was correct!

Since we are here, I gone back to the latest version released by BahamutoD and it also has the problem. I double checked the Community Resource Pack for the RocketPart resource used by this Part back to the released dated to the time used on the files of the RAR archive, and the Cost of the resource were defined since the beginning!

Well.. Apparently Krzesny detected a pretty old bug on the thing! :)

Lisias commented 3 years ago

Fellow Kerbonaut Krazy complained about the Refunding stunt being shown in-game:

One small annoyance - the resource display show Refunding in-game. I would be nice to hide that. If you can't in stock then maybe in Alternate Resource Panel?

Probably on KSP 1.12.2? Let's check...

screenshot13

screenshot14

Well, it's working as intended. On flight, there's no trace of the Refunding stunt, and on recovering the Refunding is displayed to the user has the chance to audit the recovered Funds.

On a hunch, perhaps on Editor Scene?

screenshot15 screenshot16

Well, nope neither. I think this is related to some 3rd party addon. Perhaps Construction?

Lisias commented 3 years ago

Following up the report from Krazy1, this is the list of installed Add'Ons:

KSP.log: KSP_log.zip

Inkedscreenshot52_LI Inkedscreenshot64_LI

Lisias commented 3 years ago

First results on the testings: Kerbal Engineer Redux is working fine on my rig. This is relevant because if KER is working fine on my test bed and not on the Krazy1's rig, it means that something had changed the Refunding Resource itself to make it visible - otherwise KER would not be showing it on his machine (not to mention the Stock Resources widget).

If this is happening at runtime or in a patch is now my line of research.

screenshot17

Lisias commented 3 years ago

Have ruled out some add'ons by now. No fancy testings, just load KSP, then a craft then check Resources from KER.

Lisias commented 3 years ago

Krazy1 outsmarted me. :) He nailed the problem.

craft.zip

fnsDf9a

The two first (beta) releases of Refunding was using the default isVisible attribute, that ends up being true. Only the third release (0.0.7.6) had it right: https://github.com/net-lisias-ksp/KSP-Recall/commit/71c9ea36e183701c7033b7a4f84f84f73cb67222#diff-1b10535b2f60b2efead284092829b012fa4dd93ea17b242f5025abd38e0ea9df

Oukey, manually editing the resouce's isVisible to false will solve the problem. Perhaps I should write a workaround on Refunding itself? I think this would be a little hostile, as someone could have a good reason to make this visible in the future...