Jump to content

[KSP >= 1.3.0] TweakScale - Under Lisias' Management - 2.4.8.6 - 2024-0921


Lisias

Recommended Posts

13 minutes ago, JadeOfMaar said:

@LadyAthena @Lisias Oh damn, sorry. I meant to say GameData/KerbalismConfig/ Where the hell did my mind go at that exact point? :( 

You should have:

  • GameData/Kerbalism/
  • GameData/KerbalismConfig/

I can't imagine why CKAN is doing GameData/Kerbalism/KerbalismConfig/for you. It hasn't done so for me. Delete your your CKAN/ folder (it is beside GameData, not inside it.) or otherwise refresh your CKAN install and try again.

 

In that case CKan installed it correctly. I do have it exactly as you said with two different folders in GameData

  • GameData/Kerbalism/
  • GameData/KerbalismConfig/

I manually did Kerbalism/KerbalismConfig since you said that's how it was supposed to be, but that seemed like a fluke typo on your part, since it came back with so many errors, which you just said it was. No harm though :)

 

That being said, the errors with the parts you mentioned don't seem to effect anything, as they still work perfectly fine with the Kerbalism mod. So.. no idea. No harm no foul though.

 

Edit: Still trying to figure out the Tweakscale fatal error with the 2 B9 engines though.

 

Edited by LadyAthena
Link to comment
Share on other sites

4 hours ago, JadeOfMaar said:

I just posted an update to HX Reconfig. That's fixed now. Or should be.

Thanks :) I'll give it a go.

4 hours ago, JadeOfMaar said:

I just posted an update to HX Reconfig. That's fixed now. Or should be.

Sorry now I feel stupid.

I usually use CKan to update, and install mods. So not sure where to check to find your update :3.. >.<; The latest changelogs of the mods seem to be from 10-7-2020.

Link to comment
Share on other sites

20 minutes ago, LadyAthena said:

Will I be alright playing the game if I don't use those 2 parts?

Yes. Alternatively, you can just save a file somewhere (I suggest __LOCAL/TweakScale/Workarounds/HX_Reconfig.cfg) with the contents:

@PART[B9_Structure_HX_HPD2, B9_Structure_HX_HPD3]:FINAL
{
	-MODULE[TweakScale],* { }
}

And just forget about the issue. This will remove TweakScale from the affected parts, so eliminating the FATALity on the log but also preventing you from scaling them (what would not be a good idea anyway).

Just remember to remove this patch once the problem is solved, so you can scale the parts (or load crafts from third-parties that do it).

 

29 minutes ago, LadyAthena said:

 

@JadeOfMaar

Where do you post the update?

I think it should be available already, he released a new version yesterday on github. If I understood it right, the problem was not exactly on Kerbalism (or not only there), but on HX Reconfig that by its turn was borking Kerbalism that by its turn was borking TweakScale.

Chained Borkings - pretty messy to diagnose sometimes (and it's the reason I had asked for so much information myself, has Jade not stepped in, I would need that material to dig on it myself!).

Let me know what worked for you.

Cheers!

Link to comment
Share on other sites

39 minutes ago, Lisias said:

Yes. Alternatively, you can just save a file somewhere (I suggest __LOCAL/TweakScale/Workarounds/HX_Reconfig.cfg) with the contents:



@PART[B9_Structure_HX_HPD2, B9_Structure_HX_HPD3]:FINAL
{
	-MODULE[TweakScale],* { }
}

And just forget about the issue. This will remove TweakScale from the affected parts, so eliminating the FATALity on the log but also preventing you from scaling them (what would not be a good idea anyway).

Just remember to remove this patch once the problem is solved, so you can scale the parts (or load crafts from third-parties that do it).

 

I think it should be available already, he released a new version yesterday on github. If I understood it right, the problem was not exactly on Kerbalism (or not only there), but on HX Reconfig that by its turn was borking Kerbalism that by its turn was borking TweakScale.

Chained Borkings - pretty messy to diagnose sometimes (and it's the reason I had asked for so much information myself, has Jade not stepped in, I would need that material to dig on it myself!).

Let me know what worked for you.

Cheers!

Thanks! Happy to say that fix of his fixed the Fatal error and everything else :D

Thank you you two! @Lisias @JadeOfMaar

Edited by LadyAthena
Link to comment
Share on other sites

ANNOUNCE

Release 2.4.4.3 is available for downloading, with a last minute fix.

This build fixes some regressions from 2.4.4.2 that passed trough, as well a bug I let go unattended about scaled parts with variants radially attached. (Thanks for the heads up, @eberkain!!!)

See OP for download links.

This Release will be published using the following Schedule:

  • GitHub, reaching first manual installers and users of KSP-AVC. Right now.
  • CurseForge -Right now.
  • SpaceDock (and CKAN users) - Right now.

The reasoning is to gradually distribute the Release to easily monitor the deployment and cope with eventual mishaps.

Edited by Lisias
All distribution channels updated.
Link to comment
Share on other sites

Hello, I don't have extensive knowledge of the intricacies of modding so I thought I would come here for some help. Please bear with me. I did see that my problem is similar to one of the recent posters, Fatal Error due to duplicated properties or whatever. However, the distinct difference is that is in on a very large scale unfortunately. I think the number was 304 issues. So yeah, not good.  Here's my log below . Any diagnosis and advice and guidance on next steps would be very much appreciated. Thanks!

https://drive.google.com/file/d/1tEpNN-qK4HOzjYTV5GicgdjzZ6LnkHVp/view?usp=sharing

 

Link to comment
Share on other sites

2 hours ago, 7ruthfu1P3n9uin said:

Hello, I don't have extensive knowledge of the intricacies of modding so I thought I would come here for some help. Please bear with me. 

Spoiler

:sticktongue:

 

2 hours ago, 7ruthfu1P3n9uin said:

I did see that my problem is similar to one of the recent posters, Fatal Error due to duplicated properties or whatever. However, the distinct difference is that is in on a very large scale unfortunately. I think the number was 304 issues. So yeah, not good.  Here's my log below . Any diagnosis and advice and guidance on next steps would be very much appreciated. Thanks!

https://drive.google.com/file/d/1tEpNN-qK4HOzjYTV5GicgdjzZ6LnkHVp/view?usp=sharing

Usually, such an amount of fatalities is due duplicated patches inside TweakScale, what's usually happens by not cleaning up the older files before installing the new Release. And...

[LOG 11:47:32.061] Applying update TweakScale/patches/Squad/Aero/@PART[airlinerCtrlSrf] to Squad/Parts/Aero/airlinerWings/ControlSurface.cfg/PART[airlinerCtrlSrf]
[LOG 11:47:32.389] Applying update TweakScale/patches/Squad/Squad_Aero/@PART[airlinerCtrlSrf] to Squad/Parts/Aero/airlinerWings/ControlSurface.cfg/PART[airlinerCtrlSrf]

And, bingo. You have old lefties on your TweakScale folder. Completely remove the TweakScale folder and reinstall it. It will fix the issue!

Cheers!

Link to comment
Share on other sites

1 hour ago, Lisias said:

 


[LOG 11:47:32.061] Applying update TweakScale/patches/Squad/Aero/@PART[airlinerCtrlSrf] to Squad/Parts/Aero/airlinerWings/ControlSurface.cfg/PART[airlinerCtrlSrf]
[LOG 11:47:32.389] Applying update TweakScale/patches/Squad/Squad_Aero/@PART[airlinerCtrlSrf] to Squad/Parts/Aero/airlinerWings/ControlSurface.cfg/PART[airlinerCtrlSrf]

And, bingo. You have old lefties on your TweakScale folder. Completely remove the TweakScale folder and reinstall it. It will fix the issue!

Cheers!

Worked perfectly! Thanks so much.

Link to comment
Share on other sites

38 minutes ago, Shoujo Q said:

Hi! Do you think it would be possible for TweakScale to support resizing Waterfall-based engine plumes when resizing the engines they are attached to?

Probably, but currently I have some more pressuring issues to deal - so I don't plan to research it on the 2.4.4.x series.

In the mean time, I'm getting good results using SmokeScreen and RealPlumes. SmokeScreen is hardcoded to support TweakScale, so things works seamless for me on it.

Warterfall, on the other hand, is mesh based so I expect to be able to scale the meshes it uses on the part the same way I can scale the meshes used by the part itself- assuming, of course, that Waterfall will allow me to change it on the living part (instead of hardcode the scale of the exhaust or be locked using the prefab).

But I'm just guessing, I didn't had time to give Waterfall a peek yet.

Link to comment
Share on other sites

34 minutes ago, eberkain said:

I just noticed that the github release includes module manager watchdog, but CKAN does not. 

The Watchdog is available on the zip on all releases, but on CKAN there's no script for installing it (it's there, but I didn't told CKAN to install it).

This tool aims to prevent manual installers from accidentally installing older versions of Module Manager on KSP >= 1.8, a nasty situation where only the older Module Manager ends up being elected to be used (some internal changes on KSP now loads only the first Assembly on the chain, short-circuiting all the other copies found), and this was a nasty problem to diagnose as suddenly people could install a older, buggy release on the rig and then file bug reports for fixed issues against newer versions of MM - or, worst, start a finger pointing fest by assuming the problem is not MM as the bug was theoretically fixed . Pretty messy.

CKAN, on the other hand, has its own rules about installing add'ons, and this includes safeties for MM. So CKAN users should rely on CKAN to keep MM healthy, and so by installing the Watchdog I would be stomping on their toes.

(CKAN guys are really picky about allowing the install of DLLs on the GameData - so they want to control themselves the situation)

Of course, CKAN can elect to use MM Watchdog as their safety measure and install it themselves - the latest release is available here. But in a way or another, it's over their shoulders to decide about it, not on mine.

Cheers!

Edited by Lisias
Bad grammars. (sigh). I'm too old for this english thingy.. =D
Link to comment
Share on other sites

Hello everybody. Faced with such a problem. From version 2.4.4.x, spacecraft became "difficult" to take off.
When testing 5 m of a normal tank and 1.25 m -> 5 m of a scaled tank, I saw a difference in the value of "Ballistic coefficient".  1b12f52c943e6fd82972c71f7a31d9d71cbda85b
The formula is significantly affected by the diameter, as the shapes of the tanks as a result are the same and the coefficient and can be neglected.
Normal tank: C = 712 kg / m2
Scalable tank: C = 7019 kg / m2
If we take as a standard a normal tank, the diameter for the formula will be approximately as follows:
Normal tank: d = 5 m
Scalable tank: d ~ 8 m
This strongly affects the air resistance and in the career of the spacecraft that flew on the moon, now can not get into the orbit of Kerbin. Rolled back to version 2.4.3.21.

Spoiler

Tested at an altitude of ~ 3500 m. Mods: TweakScale MechJeb 2

Normal tank: https://prnt.sc/wibai3

Scalable tank: https://prnt.sc/wib669

Sorry in advance for my English.

 

Link to comment
Share on other sites

13 hours ago, by_HOY_ said:

Hello everybody. Faced with such a problem. From version 2.4.4.x, spacecraft became "difficult" to take off.
When testing 5 m of a normal tank and 1.25 m -> 5 m of a scaled tank, I saw a difference in the value of "Ballistic coefficient".  1b12f52c943e6fd82972c71f7a31d9d71cbda85b

KSP is not a Space Simulator - it's a game, and so the values of drag (what appears to be the problem) were choosen in a "gamish" way, not using real life simulable values.

Remember that we are launching lego rockets on a planet those radius is approximately 10% of the Earth, but have the same gravity and the atmosphere has approximately the same highness. So some non-real-life-compliant decisions need to be made to keep the game somewhat balanced.

The KSP's Physics Engine uses Drag Cubes to simulate drag, and TweakScale are scaling the part's drag curves linearly for the depth, and quadratically for the area.  So if a part is scaled to have twice the size, the DragCube is scaled to twice the default depth and 4 times the area. This is the only control I have about drag, and real life formulas don't exactly help me on this task (besides providing some guidelines).

Nevertheless, I'm receiving feedback that the scaling are, indeed, in need to be revised  - and harsher effects on scaling up are taxing too much and it's not worthing the drag being scaled down.

By some reason still to be determined (but already work in progress), scaling down a 8M part to 5M is not getting the same drag as a originally 5M part:

103599985-2038c200-4ee5-11eb-9b4d-b753f9

Neither scaling up a 1.25 to 2.5M is getting the same drag as a part originally at 2.5M.

103956919-4a2df680-5128-11eb-9f14-d1fe2f

Full details on https://github.com/net-lisias-ksp/TweakScale/issues/155

So, yeah. You (too) have a point and the drag scaling is flawed.

I'm working on it.

Edited by Lisias
Bad gramars made less bad.
Link to comment
Share on other sites

ANNOUNCE

Release 2.4.4.4 is available for downloading, with a last minute fix.

This build fixes a nasty regression on scaling drags introduced on 2.4.4.0. Thanks for Lordakos and @by_HOY_ for the reports!

104010491-539c7a80-518b-11eb-98a8-1f5630

(my apologies for taking so much time for a very important bug fix, but I had some really pressuring issues on RL in the mean time)

See OP for download links.

This Release will be published using the following Schedule:

  • GitHub, reaching first manual installers and users of KSP-AVC. Right now.
  • CurseForge -Right now.
  • SpaceDock (and CKAN users) - Right now.

Being a really important bug fix, and being it the only change from the last version, I shoved the release everywhere at once.

Edited by Lisias
Uh... Need to stop posting in a hurry. =P
Link to comment
Share on other sites

Are the drag cubes saved with the vessel?  I guess, what I mean is, do I need to rebuild a saved vessel or will just reloading it into the editor update it? 

EDIT: just launching a new vessel seems to have dramatically changed the drag cubes.  

Edited by eberkain
Link to comment
Share on other sites

3 hours ago, eberkain said:

Are the drag cubes saved with the vessel?  I guess, what I mean is, do I need to rebuild a saved vessel or will just reloading it into the editor update it?

No. Previous crafts and savegames will be good again.

The DragCubes are initially calculated  by KSP on loading, and then TweakScale takes from there and applies changes on the living part itself every time the part is loaded from prefab somehow (and that's the reason I had screwed up, I thought that changing Variants would reset the DragCubes, but by some reason I forgot to check about it and forgot about... #sigh :blush:).

Just installing TweakScale 2.4.4.4 will fix everything on every craft and savegame you have.

 

3 hours ago, eberkain said:

EDIT: just launching a new vessel seems to have dramatically changed the drag cubes.  

Yep. From 2.4.4.0 to 2.4.4.3, that stunt was being applied twice - so when you downscaled a 5M part to 2.5M, it ended up with DragCurves from a 1.25M part. And when you scale up a 5M part to 7.5M, you ended up with a DragCurve from a part with 10M. :0.0:

Edited by Lisias
Tyops, tyops, tyops everywhere!
Link to comment
Share on other sites

hello! i'm encountering this issue with Tweak scale that prevents me from using the autostrut properly 

 

Quote

325793 [EXC 01:24:54.027] NullReferenceException: Object reference not set to an instance of an object 325794 TweakScale.TweakScale.IPartMassModifier.GetModuleMass (System.Single defaultMass, ModifierStagingSituation situation) (at <1e83e4d4259841b8859d3381bbdfe7d3>:0) 325795 Part.GetModuleMass (System.Single defaultMass, ModifierStagingSituation sit) (at <f8bc9e2b903e48a5b248ab0083c07c62>:0) 325796 B9PartSwitch.ModuleB9PartInfo.UpdateFields () (at <b85eabe067044bcb9aeabe863954a5ce>:0) 325797 B9PartSwitch.ModuleB9PartInfo.EditorShipModified (ShipConstruct construct) (at <b85eabe067044bcb9aeabe863954a5ce>:0) 325798 EventData`1[T].Fire (T data) (at <f8bc9e2b903e48a5b248ab0083c07c62>:0) 325799 UnityEngine.DebugLogHandler:LogException(Exception, Object) 325800 ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object) 325801 UnityEngine.Debug:LogException(Exception) 325802 EventData`1:Fire(ShipConstruct) 325803 KIS.<>c:<RefreshContents>b__163_4() 325804 KSPDev.ProcessingUtils.<WaitForEndOfFrameCoroutine>d__4:MoveNext() 325805 UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

 

Link to comment
Share on other sites

2 hours ago, moguy16 said:

hello! i'm encountering this issue with Tweak scale that prevents me from using the autostrut properly 

Ha! So it is the autostruts!! Thanks for the tip!

 

2 hours ago, moguy16 said:

UGH... 32M of exceptions to chew... GREP is going to get a heartburn...

Well, at least some good news - not even a warning on your rig.

[LOG 00:27:35.722] [TweakScale] INFO: WriteDryCost Concluded : 3158 parts found ; 0 checks failed ; 0 parts with hotfixes ; 0 parts with issues overruled ; 0 Show Stoppers found; 0 Sanity Check failed; 1569 unscalable parts.

I'm working on it.

-- -- -- -- -- -- -- - - - --- - --
 

@moguy16, I could not reproduce the problem on my rig. No exceptions at all, with or without autostruts. 

This is not TweakScale - I think that TweakScale could be that nosy guy taking some heat on the face because it is, well, nosy. (TweakScale pokes everything on the game).

What I'm seeing a lot on your log hints me that the problem should not be the autostuts neither (it must be just the smell of the problem, not the problem itself).

[LOG 00:44:00.691] [Part AM.MLP.GeneralHold7] [ModuleB9PartSwitch 'sizeSwitch'] Switched subtype to Small
[ERR 00:44:00.733] Exception handling event onEditorShipModified in class ModuleB9PartInfo:System.NullReferenceException: Object reference not set to
an instance of an object
  at TweakScale.TweakScale.IPartMassModifier.GetModuleMass (System.Single defaultMass, ModifierStagingSituation situation) [0x00010] in <1e83e4d425984
1b8859d3381bbdfe7d3>:0
  at Part.GetModuleMass (System.Single defaultMass, ModifierStagingSituation sit) [0x00046] in <f8bc9e2b903e48a5b248ab0083c07c62>:0
  at B9PartSwitch.ModuleB9PartInfo.UpdateFields () [0x00019] in <b85eabe067044bcb9aeabe863954a5ce>:0
  at B9PartSwitch.ModuleB9PartInfo.EditorShipModified (ShipConstruct construct) [0x00006] in <b85eabe067044bcb9aeabe863954a5ce>:0
  at EventData`1[T].Fire (T data) [0x000b0] in <f8bc9e2b903e48a5b248ab0083c07c62>:0

And there's a lot more. B9PS is asking TweakScale about the part's mass when something it's modified on the craft.

Problem: TweakScale also handles the onEditorShipModified, and I'm not seeing the Exceptions coming from TweakScale itself - only when B9PS calls TweakScale....

Moreover, this exception is not happening on every part, just to some. These parts handled the event alright:

[LOG 00:44:00.664] ModuleAnimatedDecoupler.OnStart() - Animation found named ArmSwingGenDef2
[LOG 00:44:00.665] [Part AM.MLP.GeneralTowerSwingArm] [ModuleB9PartSwitch 'armSwitch'] Switched subtype to End Umbilical
[LOG 00:44:00.665] [Part AM.MLP.GeneralTowerSwingArm] [ModuleB9PartSwitch 'colorSwitch'] Switched subtype to Light Gray
[LOG 00:44:00.665] [Part AM.MLP.GeneralTowerSwingArm] [ModuleB9PartSwitch 'pipe1Switch'] Switched subtype to Black
[LOG 00:44:00.665] [Part AM.MLP.GeneralTowerSwingArm] [ModuleB9PartSwitch 'pipe2Switch'] Switched subtype to White
[LOG 00:44:00.665] [Part AM.MLP.GeneralTowerSwingArm] [ModuleB9PartSwitch 'umbSwitch'] Switched subtype to Single Square
[LOG 00:44:00.665] [Part AM.MLP.GeneralTowerSwingArm] [ModuleB9PartSwitch 'railSwitch'] Switched subtype to Tall
[LOG 00:44:00.665] [Part AM.MLP.GeneralTowerSwingArm] [ModuleB9PartSwitch 'centerSwitch'] Switched subtype to Tall

So, nope. It's not a bug on B9PS neither. Both TweakScale and B9PS are the screaming victims of something else.

I also found some unusual exceptions when KSP is loading:

[LOG 00:15:57.807] [B9PartSwitch.UI.TooltipHelper] created subtype info tooltip prefab
[LOG 00:15:57.808] [AddonLoader]: Instantiating addon 'CustomPreLaunchChecks' from assembly 'CustomPreLaunchChecks'
[LOG 00:15:57.809] [AddonLoader]: Instantiating addon 'DarkenSky' from assembly 'DistantObject'
[LOG 00:15:57.810] [AddonLoader]: Instantiating addon 'SettingsGui' from assembly 'DistantObject'
[LOG 00:15:57.813] [AddonLoader]: Instantiating addon 'DynamicBatteryStorage' from assembly 'DynamicBatteryStorage'
[LOG 00:15:57.813] [AddonLoader]: Instantiating addon 'GlobalEVEManager' from assembly 'EVEManager'
[LOG 00:15:57.884] [AddonLoader]: Instantiating addon 'ShaderLoaderClass' from assembly 'ShaderLoader'
[LOG 00:15:57.885] [AddonLoader]: Instantiating addon 'ShaderProperties' from assembly 'Utils'
[LOG 00:15:57.885] [AddonLoader]: Instantiating addon '_BuildManager' from assembly '_BuildManager'
[EXC 00:15:57.898] NotSupportedException: The invoked member is not supported in a dynamic module.
    System.Reflection.Emit.AssemblyBuilder.get_Location () (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
    _BuildManager._BuildManager+<>c__DisplayClass3.<logVersion>b__0 (System.Reflection.Assembly x) (at <cb23db9c8c564465aabe78f936e70327>:0)
    System.Linq.Enumerable+WhereSelectArrayIterator`2[TSource,TResult].ToList () (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)
    System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable`1[T] source) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)
    _BuildManager._BuildManager.logVersion () (at <cb23db9c8c564465aabe78f936e70327>:0)
    _BuildManager._BuildManager.Awake () (at <cb23db9c8c564465aabe78f936e70327>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.GameObject:AddComponent(Type)
    AddonLoader:StartAddon(LoadedAssembly, Type, KSPAddon, Startup)
    AddonLoader:StartAddons(Startup)
    <LoadObjects>d__90:MoveNext()
    UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
    <CreateDatabase>d__71:MoveNext()
    UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
    GameDatabase:StartLoad()
    <LoadSystems>d__11:MoveNext()
    UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
    LoadingScreen:Start()

And this one I know for sure that can blow up in TweakScale's face, because TweakScale doesn't check if the DragCurveList is there, it just iterates on it trusting KSP did its job and made the DragCurves:

[LOG 00:19:02.691] DragCubeSystem: Creating drag cubes for part 'bluedog.Apollo.Subsatellite.Core'
[EXC 00:19:02.692] NullReferenceException: Object reference not set to an instance of an object
    ModuleDeployablePart.AssumeDragCubePosition (System.String name) (at <f8bc9e2b903e48a5b248ab0083c07c62>:0)
    DragCubeSystem+<RenderDragCubes>d__34.MoveNext () (at <f8bc9e2b903e48a5b248ab0083c07c62>:0)
    UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <5aeafee3fea24f37abd13
15553f2cfa6>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
    <RenderDragCubesCoroutine>d__31:MoveNext()
    UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
    <SetupDragCubeCoroutine>d__46:MoveNext()
    UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
    <CompileParts>d__56:MoveNext()
    UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

In the end, it's not TweakScale neither B9PS - some parts on your rig are causing exceptions everywhere ono initialisation, and so things that should had been done, were not. And God knows what happens after.

Now the job is to identify all the parts with problems and report it to the Add'On Author. BlueDog is one of them, and there's a lot of AM.<something> parts borking around. Check who owns these parts and ask for help there.

I can't help further, sorry.

Edited by Lisias
Brute force post merging....
Link to comment
Share on other sites

4 hours ago, Lisias said:

Problem: TweakScale also handles the onEditorShipModified, and I'm not seeing the Exceptions coming from TweakScale itself - only when B9PS calls TweakScale....

Er, the exception isn't being thrown from TweakScale's event handler, it's being thrown from

TweakScale.TweakScale.IPartMassModifier.GetModuleMass

That is to say, just because TweakScale's event handler doesn't throw an exception doesn't mean that it isn't to blame, if it doesn't call GetModuleMass.


The _BuildManager exception is benign; everyone gets that one.  Lots of parts have drag cube issues; are you sure TweakScale can't be more robust against whatever is going wrong here?  I don't fully understand it but there were two different people on the discord with this issue today.

Edited by JonnyOThan
Link to comment
Share on other sites

17 hours ago, JonnyOThan said:

Er, the exception isn't being thrown from TweakScale's event handler, it's being thrown from





TweakScale.TweakScale.IPartMassModifier.GetModuleMass

Yes, yes. I'm unsure if I expressed myself clearly.

B9PS receives the onEditorShipModified, does its things and one of them calls TweakScale to get its Module Cost - and then things borks on a NRE.

However, TweakScale calls the very same code the GetModuleMass calls everytime you change a variant (including the initial run when the code needs to know what's the initial variant), including on startup. I don't see a way of B9PS borking on it unless B9PS is calling TweakScale before TweakScale is ready (this is the reason I had to shove some unorthodox initialisation procedures, as TweakScale needs to be sure everybody is already initialised before trying to update them).

 

17 hours ago, JonnyOThan said:

That is to say, just because TweakScale's event handler doesn't throw an exception doesn't mean that it isn't to blame, if it doesn't call GetModuleMass.

The only place where TweakScale could be caught with its pants down is on the KSP initialisation.

This hypothesis has ground, the first occurrence of that exception is on [ERR 00:44:00.429]

[LOG 00:44:00.074] [TweakScale] WARNING: No valid member found for mass in TweakScale for bluedog.Juno4.Interstage
[LOG 00:44:00.155] [ModuleAdvancedLookAtConstraint]: Loading 0 constraints
[LOG 00:44:00.155] [ModuleAdvancedLookAtConstraint]: Loaded 0 constraints
[LOG 00:44:00.155] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.155] [Waterfall][ModuleWaterfallFX]: Loading Controllers on moduleID ar1FX
[LOG 00:44:00.156] [Waterfall][ModuleWaterfallFX]: Loading Effects on moduleID ar1FX
[LOG 00:44:00.156] [Waterfall][ModuleWaterfallFX]: Loading Template effects on moduleID ar1FX
[LOG 00:44:00.156] [Waterfall][ModuleWaterfallFX]: Finished loading 0 effects
[LOG 00:44:00.163] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.184] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.204] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.223] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.243] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.261] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.280] AnimatedAttachment: Failed to find POS_ROT!
[LOG 00:44:00.299] AnimatedAttachment: Failed to find POS_ROT!
[ERR 00:44:00.334] Cannot find fx group of that name for decoupler

[ERR 00:44:00.344] Cannot find fx group of that name for decoupler

[ERR 00:44:00.354] Cannot find fx group of that name for decoupler

[ERR 00:44:00.357] Cannot find fx group of that name for decoupler

[ERR 00:44:00.359] Cannot find fx group of that name for decoupler

[ERR 00:44:00.362] Cannot find fx group of that name for decoupler

[ERR 00:44:00.365] Cannot find fx group of that name for decoupler

[LOG 00:44:00.368] Resupply loaded!
[ERR 00:44:00.429] Exception handling event onEditorShipModified in class ModuleB9PartInfo:System.NullReferenceException: Obj
  at TweakScale.TweakScale.IPartMassModifier.GetModuleMass (System.Single defaultMass, ModifierStagingSituation situation) [0
  at Part.GetModuleMass (System.Single defaultMass, ModifierStagingSituation sit) [0x00046] in <f8bc9e2b903e48a5b248ab0083c07
  at B9PartSwitch.ModuleB9PartInfo.UpdateFields () [0x00019] in <b85eabe067044bcb9aeabe863954a5ce>:0
  at B9PartSwitch.ModuleB9PartInfo.EditorShipModified (ShipConstruct construct) [0x00006] in <b85eabe067044bcb9aeabe863954a5c
  at EventData`1[T].Fire (T data) [0x000b0] in <f8bc9e2b903e48a5b248ab0083c07c62>:0

But that it's happening on some parts, and not on every one - so it suggests a problem on the part. That warning on the first line of the quote (and that I missed completely at first!) also appears to support my thesis, it's something weird happening on the part as it's my understanding that everything on KSP should have mass on the physics engine, otherwise things goes teeths :P up.

However... And I think I should had remembered this before.... At Startup, TweakScale also calculates the dry mass (the total mass of the part subtracted from its resources), and I did'nt found any complaints from it (no exception with the text "Exception on writeDryCost" was found).

So I can't rule out something else yet.

Well, without more information, I cannot proceed with the diagnosis.

Apparently my initial one looks right, but I need more evidences to be sure. So I'm going to play Reductio ad absurdum, if this is a problem with TweakScale it will happens every time, not only with some parts.

I will install B9PS and some smaller (and more manageable) add'ons that use it and see what I get.

 

17 hours ago, JonnyOThan said:

The _BuildManager exception is benign; everyone gets that one.  Lots of parts have drag cube issues; are you sure TweakScale can't be more robust against whatever is going wrong here? 

It depends on what you call robustness.

What would be the proper result when a random problem happens? 0? But by then, how do defent TweakScale's reputation when it's called a cheater by scaling parts without scaling mass too?

Without understanding what's happening, I can't work around it.

 

17 hours ago, JonnyOThan said:

 I don't fully understand it but there were two different people on the discord with this issue today.

Send them to me. I need that KSP.logs - that would help me to define a M.O. , that would help me on investigation.

-- -- -- - POST EDIT -- -- -- -- 

@JonnyOThan , I fired up my (already dirty) KSP 1.11 test bed with the latest KSP Interstellar Extended and the latest B9 Part Switch - these last two together gave me a serious run for my money in the past. :sticktongue:

Not a single flaw, other than the already present ones related to Firespitter and KAX, that I'm working on.

The full KSP.log of that session (until the Main Menu, then I quit the program) is here.

I stand by my previous diagnosis. Until further evidence is found, it's not a problem on TweakScale neither B9 Part Switch.

Edited by Lisias
post edit
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...