Jump to content

[1.3] Kerbal Joint Reinforcement v3.3.3 7/24/17


ferram4

Recommended Posts

Yet Another New Toy, boys! :) And, hopefully, this one will go "gold" (unless someone else manage to find another mishap of mine!).

KJR/L Pre-Release 3.4.0.3 (hard dependency KSPe Pre-Release 2.1.0.4update to the most recent is mandatory).

This one introduces (yet another one) change on configuration files. As @AccidentalDisassembly correctly stated above, config.xml is not exactly a user settings file. It has standard, "stock" settings that should be managed by the maintainer, and the user adding his own settings on it would render updates a hell.

So I put back the config.xml on the /GameData/KerbalJointReinforcement/PluginData , and this file from nowon is not user servicecable anymore.

On /PluginData/KerbalJointReinforcement you will find a file named user.xml, with the very same syntax from the config.xml. Anything you put here will be merged over the config.xml in memory. Currently, there's no way to "delete" something from the config.xml, just to replace or to add. I'm not being too much smart on this "merging over" thing, as duplicated entries from the lists (exemptModuleType and decouplerStiffeningExtensionType) will be duplicated in memory. Not a problem, just a bit of waste.

A proper INSTALL file with detailed instructions are available on the zip file and here.

— — — 

I didn't had the time to a proper throughout test - only the basic tests where done: running KSP with and without KJR installed using a reference vessel known to horribly spaghettify without.

It's appears to be working fine now. Thanks for your patience. :)

Edited by Lisias
fixing the download links
Link to comment
Share on other sites

Like the install guide, nice an easy to follow. About to test it now @Lisias. you have done so much already and i havent seen you around before so i got to thank you for updating KJR, Acceping the torch for TweekScale and im guessing your planing on maintaing KAX from SpannerMonkey.

Keep up the good work

Edit:
Was just checking the file layout and i noticed that CHANGE_LOG.md, LICENSE, NOTICE, README.md, KerbalJointReinforcement.dll and KerbalJointReinforcement.version are all missing.
Checked the zip and its also not in there. 

Edit: 
Only PluginData with config.xml inside that folder

Edited by xD-FireStriker
Link to comment
Share on other sites

3 minutes ago, Geonovast said:

I see you have modulemanager.dll in the Install.md file.  Is it required, somehow, or is it just there for an example?

Just an example.

Link to comment
Share on other sites

The thread is becoming confusing cause the longer it goes on, the more people are thinking KJR is Lisias' builds which it is not. In my opinion this thread should be closed until either Ferram4 resumes development of it or it is officially handed over to someone. Lisias should start his own thread on his own development of his version of this and should even call it something else to avoid further confusion. Just my two cents on this.

Link to comment
Share on other sites

Just now, MikeO89 said:

The thread is becoming confusing cause the longer it goes on, the more people are thinking KJR is Lisias' builds which it is not. In my opinion this thread should be closed until either Ferram4 resumes development of it or it is officially handed over to someone. Lisias should start his own thread on his own development of his version of this and should even call it something else to avoid further confusion. Just my two cents on this.

Lisias' Fork is called KJR/L, i kind of like the naming scheme Lisias uses as i can guess what the L stands for. Idk what should be done about the thread. i dont think anything is stopping people from making a new thread but since ferram hasnt passed the mod over you can get some backlash from the community for doing that and you dont rly want 5 diff version threads floating around.

I say thats up to Lisias if  he/she wants to make a new thread
 

Link to comment
Share on other sites

I'm restraining myself to creating a new thread because I'm just fixing KJR, not exactly adopting it.

I don't know what's going to happen from now, it's up to ferram to decide.

Edited by Lisias
Link to comment
Share on other sites

1 hour ago, Lisias said:

I'm restraining myself to creating a new thread because I'm just fixing KJR, not exactly adopting it.

I don't know what's going to happen from now, it's up to ferram to decide.

My understanding is that no one has heard from Ferram in a full year or more? I don't disagree with your logic, but I feel like you might be waiting for a train that isn't coming.

Link to comment
Share on other sites

9 hours ago, Lisias said:

So I put back the config.xml on the /GameData/KerbalJointReinforcement/PluginData , and this file from nowon is not user servicecable anymore.

On /PluginData/KerbalJointReinforcement you will find a file named user.xml, with the very same syntax from the config.xml. Anything you put here will be merged over the config.xml in memory. Currently, there's no way to "delete" something from the config.xml, just to replace or to add. I'm not being too much smart on this "merging over" thing, as duplicated entries from the lists (exemptModuleType and decouplerStiffeningExtensionType) will be duplicated in memory. Not a problem, just a bit of waste

Just an FYI, an xml file is rather obtuse for someone to edit, would be nicer to convert it to the standard .cfg file format.  I know it's not something for people to edit, but they will, and having a cfg file makes it easier for them to edit and you to debug.  Except in a few rare cases, I usually convert those files to cfg when I adopt mods

Link to comment
Share on other sites

On 12/7/2018 at 5:13 AM, The_Joe said:

My understanding is that no one has heard from Ferram in a full year or more? I don't disagree with your logic, but I feel like you might be waiting for a train that isn't coming.

He's logging regularly. I can't explain why he's silent, but he is not away. You can check on his profile.

 

20 hours ago, MikeO89 said:

That's all the more  reason to separate  out the threads.

I think the other way: by splitting the thread and redirecting everybody that come here to the other thread we are essentially pushing ferram4 away from the spotlight. What's not what I want.

I agree that sooner or later something will have to reach CKAN in order to get used by the orphaned userbase, but right now what I'm doing is not ready for mass consumption, so this is not a problem anyway. Yet.

 

On 12/7/2018 at 2:34 AM, xD-FireStriker said:

I say thats up to Lisias if  he/she wants to make a new thread

"It" . :D 

 

19 hours ago, linuxgurugamer said:

Just an FYI, an xml file is rather obtuse for someone to edit [..] Except in a few rare cases, I usually convert those files to cfg when I adopt mods

This would be trivial to implement, nice idea.

 

On 12/7/2018 at 12:31 AM, xD-FireStriker said:

Oh haha, its a debug zip. I will uninstall and wait for the update. Dont worry Lisia, it would happen to the best of us sometimes.

Dude, the last 24 hours were a riot around here. :D 

First, after 30 years of use, I discovered that the cache Midnight Commander uses for SSH and FTP virtual file systems are also used for ZIPs, TARs and the others archives, besides the View option working right on the current file. So, you can essentially view a file but use another older one when opening and extracting the contents!! Man, what a mess I did due this!!

Not happy, Real Life stroke me with a series of routing problems on the slightly big city where I live (São Paulo), what cut me out from half the Internet - AWS saved my sorry SAS, I fired up a proxy on my site and could at least have some work done.

But that was not enough! This morning, I'm facing a lot of power outages on my neighbourhood (perhaps the reason for the routing outage - the power outages could be affecting the local backbones).

I'm glad I had delivered that job upfront, or I would had it delayed by now. :D 

Edited by Lisias
and yet anohter tyop!
Link to comment
Share on other sites

I am having quite a lot og log messages and I think the last version made my game lag a bit when decoupling. Like its thinking too much or something. Is there a way to disable logs or something to prevent this lag which I didn't have before? Thanks.

Link to comment
Share on other sites

Hi!

First of all, thanks to Lisias for mantaining the Mod.
I've followed the INSTALL.md procedure, KSP-Addons Version Checked detected bouth mod and dependency, but my rockets still act like spaghettti.
It have been a lot time since my last play, so maybe I am not remembering something. Do I need to activate something inside ksp options? How can I check that the mod is trully well installed?

Data:
KSP 1.5.1
KSPAPIExtensions 2.1.0.4
KerbalJointReinforcement 3.4.0.3

Thanks!

Link to comment
Share on other sites

lisias

You don't have a Patreon account do you? Id love to throw a few bucks your way for what you're doing.

KJR is one of those mods Ive found I cant really play without.

Edited by Marq
Link to comment
Share on other sites

On 12/6/2018 at 6:06 PM, Lisias said:

Yet Another New Toy, boys! :) And, hopefully, this one will go "gold" (unless someone else manage to find another mishap of mine!).

KJR/L Pre-Release 3.4.0.3 (hard dependency KSPe Pre-Release 2.1.0.4update to the most recent is mandatory).

This one introduces (yet another one) change on configuration files. As @AccidentalDisassembly correctly stated above, config.xml is not exactly a user settings file. It has standard, "stock" settings that should be managed by the maintainer, and the user adding his own settings on it would render updates a hell.

So I put back the config.xml on the /GameData/KerbalJointReinforcement/PluginData , and this file from nowon is not user servicecable anymore.

On /PluginData/KerbalJointReinforcement you will find a file named user.xml, with the very same syntax from the config.xml. Anything you put here will be merged over the config.xml in memory. Currently, there's no way to "delete" something from the config.xml, just to replace or to add. I'm not being too much smart on this "merging over" thing, as duplicated entries from the lists (exemptModuleType and decouplerStiffeningExtensionType) will be duplicated in memory. Not a problem, just a bit of waste.

A proper INSTALL file with detailed instructions are available on the zip file and here.

— — — 

I didn't had the time to a proper throughout test - only the basic tests where done: running KSP with and without KJR installed using a reference vessel known to horribly spaghettify without.

It's appears to be working fine now. Thanks for your patience. :)

My rockets are mostly working correctly(excluding the REALLY long ones), but my stations are like wet noodles, I think its working for everything but the docking ports, even modded fuel tanks.

Link to comment
Share on other sites

21 minutes ago, Nyarlathotep- said:

My rockets are mostly working correctly(excluding the REALLY long ones), but my stations are like wet noodles, I think its working for everything but the docking ports, even modded fuel tanks.

That really long ones must use the EAS struts. Impossible Innovations have some different ones, if you don't mind throwing the plausibility through the window. :) 

On your <KSP_ROOT>/GameData/KJR/PluginData (or <KSP_ROOT>/GameData/KerbalJointReinforcement/PluginData if you are using "my" unofficial fork), you will find a config.xml file where some parts and modules are listed.

Check if your docking ports are listed there, or make a very small station using the same parts you are seeing the problem on yours and publish it here so we can give a look.

 

Link to comment
Share on other sites

19 hours ago, Lisias said:

That really long ones must use the EAS struts. Impossible Innovations have some different ones, if you don't mind throwing the plausibility through the window. :) 

On your <KSP_ROOT>/GameData/KJR/PluginData (or <KSP_ROOT>/GameData/KerbalJointReinforcement/PluginData if you are using "my" unofficial fork), you will find a config.xml file where some parts and modules are listed.

Check if your docking ports are listed there, or make a very small station using the same parts you are seeing the problem on yours and publish it here so we can give a look.

 

Although I dont have Impossible Innovations and dont plan on installing it, I do have B9 and B9's struts are fairly strong.

I'll need to check how long the rocket that had some minor stability issues was...

 

10:06AM(origanaly posted at 9:27AM) edit: I think I found the problem, the KJR plugindata folder is empty. XD

Edited by Nyarlathotep-
Link to comment
Share on other sites

On 12/9/2018 at 5:16 AM, XPi2 said:

Hi!

First of all, thanks to Lisias for mantaining the Mod.
I've followed the INSTALL.md procedure, KSP-Addons Version Checked detected bouth mod and dependency, but my rockets still act like spaghettti.
It have been a lot time since my last play, so maybe I am not remembering something. Do I need to activate something inside ksp options? How can I check that the mod is trully well installed?

Data:
KSP 1.5.1
KSPAPIExtensions 2.1.0.4
KerbalJointReinforcement 3.4.0.3

Thanks!

@Lisias I'm having the same issue.  My ships are back to wet spaghetti physics.

I'm getting an exception causing the module not to load correctly.  Any ideas how I broke it?

 (full log here https://drive.google.com/open?id=1WvORYU4xd-oKczsVmDW7NFSQwvDdRgw3 )

[LOG 20:06:30.294] [AddonLoader]: Instantiating addon 'KJRManager' from assembly 'KerbalJointReinforcement'
[LOG 20:06:30.295] [KerbalJointReinforcement] TRACE: Awake
[ERR 20:06:30.311] [KerbalJointReinforcement] ERROR: KerbalJointReinforcement.KJRManager raised Exception System.TypeInitializationException: An exception was thrown by the type initializer for KerbalJointReinforcement.KJRJointUtils ---> System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
  at (wrapper managed-to-native) System.Reflection.Assembly:GetTypes (bool)
  at System.Reflection.Assembly.GetTypes () [0x00000] in <filename unknown>:0 
  at KSPe.IO.File`1+<>c[KerbalJointReinforcement.KJRManager].<FullPathName>b__6_0 (System.Reflection.Assembly assembly) [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable+<CreateSelectManyIterator>c__Iterator14`3[System.Reflection.Assembly,System.Type,<>f__AnonymousType0`2[System.Reflection.Assembly,System.Type]].MoveNext () [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable+<CreateWhereIterator>c__Iterator1D`1[<>f__AnonymousType0`2[System.Reflection.Assembly,System.Type]].MoveNext () [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable+<CreateSelectIterator>c__Iterator10`2[<>f__AnonymousType0`2[System.Reflection.Assembly,System.Type],System.Type].MoveNext () [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable.FirstOrDefault[Type] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 
  at KSPe.IO.File`1[KerbalJointReinforcement.KJRManager].FullPathName (System.String partialPathname, System.String hierarchy, Boolean createDirs) [0x00000] in <filename unknown>:0 
  at KSPe.IO.File`1+Data[KerbalJointReinforcement.KJRManager].FullPathName (System.String path, Boolean createDirs) [0x00000] in <filename unknown>:0 
  at KSPe.IO.Data.PluginConfiguration.CreateForType[KJRManager] (System.String filename) [0x00000] in <filename unknown>:0 
  at KerbalJointReinforcement.KJRJointUtils..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at KerbalJointReinforcement.KJRManager.Awake () [0x00000] in <filename unknown>:0 

[EXC 20:06:30.312] ReflectionTypeLoadException: The classes in the module cannot be loaded.
    System.Reflection.Assembly.GetTypes ()
    KSPe.IO.File`1+<>c[KerbalJointReinforcement.KJRManager].<FullPathName>b__6_0 (System.Reflection.Assembly assembly)
    System.Linq.Enumerable+<CreateSelectManyIterator>c__Iterator14`3[System.Reflection.Assembly,System.Type,<>f__AnonymousType0`2[System.Reflection.Assembly,System.Type]].MoveNext ()
    System.Linq.Enumerable+<CreateWhereIterator>c__Iterator1D`1[<>f__AnonymousType0`2[System.Reflection.Assembly,System.Type]].MoveNext ()
    System.Linq.Enumerable+<CreateSelectIterator>c__Iterator10`2[<>f__AnonymousType0`2[System.Reflection.Assembly,System.Type],System.Type].MoveNext ()
    System.Linq.Enumerable.FirstOrDefault[Type] (IEnumerable`1 source)
    KSPe.IO.File`1[KerbalJointReinforcement.KJRManager].FullPathName (System.String partialPathname, System.String hierarchy, Boolean createDirs)
    KSPe.IO.File`1+Data[KerbalJointReinforcement.KJRManager].FullPathName (System.String path, Boolean createDirs)
    KSPe.IO.Data.PluginConfiguration.CreateForType[KJRManager] (System.String filename)
    KerbalJointReinforcement.KJRJointUtils..cctor ()
    Rethrow as TypeInitializationException: An exception was thrown by the type initializer for KerbalJointReinforcement.KJRJointUtils
    KerbalJointReinforcement.KJRManager.Awake ()
    UnityEngine.Debug:LogException(Exception)
    KSPe.Util.Log.UnityLogger:logException(String, Exception)
    KSPe.Util.Log.Logger:error(Object, Exception)
    KerbalJointReinforcement.Log:ex(MonoBehaviour, Exception)
    KerbalJointReinforcement.KJRManager:Awake()
    UnityEngine.GameObject:AddComponent(Type)
    AddonLoader:StartAddon(LoadedAssembly, Type, KSPAddon, Startup)
    AddonLoader:StartAddons(Startup)
    AddonLoader:OnLevelLoaded(GameScenes)
    AddonLoader:OnSceneLoaded(Scene, LoadSceneMode)
    UnityEngine.SceneManagement.SceneManager:Internal_SceneLoaded(Scene, LoadSceneMode)
[LOG 20:06:30.312] [KerbalJointReinforcement] ERROR: An error [An exception was thrown by the type initializer for KerbalJointReinforcement.KJRJointUtils] was caught on initialization! The plugin WILL NOT work as expected!
 

 

Link to comment
Share on other sites

37 minutes ago, Critter79606 said:

@Lisias I'm having the same issue.  My ships are back to wet spaghetti physics.

I'm getting an exception causing the module not to load correctly.  Any ideas how I broke it?

 (full log here https://drive.google.com/open?id=1WvORYU4xd-oKczsVmDW7NFSQwvDdRgw3 )

 

Yes. You have a missing, corrupted, duplicated, whatever DLL somewhere in your system. KSPe is picky - anything wrong on the hard bindings, it borks relentlessly.

Your system would bork eventually anyway.

A closer look on the .log file would pinpoint the culprit. PROBLEM IS… Apparently, the DLL loading phase on your logs looks ok! I was considering I borked again on KSPe+KJR when I found this:

[LOG 19:59:57.444] B9TankSettings: registered tank type SSPXRocketParts
[ERR 19:59:57.456] [ModuleManager] Post run call threw an exception in loading System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

[EXC 19:59:57.456] ReflectionTypeLoadException: The classes in the module cannot be loaded.
        System.Reflection.Assembly.GetTypes ()
        ModuleManager.MMPatchLoader+<ProcessPatch>d__31.MoveNext ()
        UnityEngine.Logger:LogException(Exception)
        ModuleManager.Logging.UnityLogger:Exception(String, Exception)
        ModuleManager.Logging.ModLogger:Exception(String, Exception)
        ModuleManager.<ProcessPatch>d__31:MoveNext()
        UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
[LOG 19:59:57.504] [ModuleManager] Calling DustColors.ModuleManagerPostLoad()

This is the thing what would bork KSPe relentlessly. I don't have the slightest clue about what's DustColors, but right now my guess is that you need to update or delete whatever the add-on that uses it.

I also found this:

[LOG 19:59:57.536] [AtmosphereAutopilot]: part 'DERP_Engine_02' config node contains ModuleGimbal, moving it
[LOG 19:59:57.536] Loading KIS global settings...
[LOG 19:59:57.629] PartLoader: Loading part database
[LOG 19:59:57.630] PartLoader: Compiling Part 'Ablative-Airbrake/Parts/AblativeAirbrake/AblativeAirbrake'
[LOG 19:59:57.651] EffectList: Created 16 effect types
[ERR 19:59:57.709] ADDON BINDER: Cannot resolve assembly: TestFlightCore, Culture=neutral, PublicKeyToken=null

[ERR 19:59:57.710] ADDON BINDER: Cannot resolve assembly: TestFlightCore, Culture=neutral, PublicKeyToken=null

[LOG 19:59:57.748] PartLoader: Compiling Part 'AirplanePlus/Parts/Aero/anglewings/hanglel/hanglel'

Same thing. Something is trying to use TestFlightCore, but it's not available. However, since this is not throwing a Exception, I doubt it's a problem. TweakScale suffers from this too. This is an annoyance, but not a problem.

However… I found this too:

[LOG 19:59:58.872] [MechJeb2] Starting the Dispatcher
[ERR 19:59:58.881] MechJeb moduleRegistry creation threw an exception in LoadComputerModules loading System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e08
  at (wrapper managed-to-native) System.Reflection.Assembly:GetTypes (bool)
  at System.Reflection.Assembly.GetTypes () [0x00000] in <filename unknown>:0
  at MuMech.MechJebCore.LoadComputerModules () [0x00000] in <filename unknown>:0

[LOG 19:59:58.898] ManeuverPlanner initialization: found 17 maneuvers

I don't have the slightest idea about this, I never saw MechJeb2 borking this way before!

 

— — — — — 

As a rule of thumb, the presence of a "System.Reflection.*" Exception on the log is usually an indication that you have unsatisfied DLL dependencies (i.e. - some DLL tried to load another one, and didn't found it - or it had changed in a way that they didn't understand each other anymore).

This usually renders your KSP unstable too, and that's the reason I didn't tried to workaround this weakness from KSPe yet - it ends up begin useful as a miner's canary - if KSPe borks, your KSP will bork sooner or later too in a very unexpected and unpleasant way (while playing).

Edited by Lisias
I think there's a bug on forum when editing CODE sections...
Link to comment
Share on other sites

5 hours ago, Zah said:

I'm having pretty similar issues.

I've shuffled around with my mods but nothing really seems to affect it. My full log is 19MB, so here's only lines with kerbaljointreinforcement in them:
https://pastebin.com/8Ktcp9dF
 

I need a full log. Usually, binding errors happen anywhere but on the place where you detect it.

— — — — — 

I set up a minimalistic KSP 1.5.1 installment just for the peace of mind: KSP 1.5.1, MH, ModuleManager, Firespitter, CRP, KSPe+KJR (using the ZIPs from the github to be extra sure). And yes, things are working for sure:

[LOG 20:20:56.745] [HighLogic]: =========================== Scene Change : From SPACECENTER to FLIGHT (Async) =====================
[LOG 20:20:57.472] [UIApp] OnDestroy: KSPedia
[LOG 20:20:57.657] [PlanetariumCamera]: Focus: Kerbin
[LOG 20:20:57.659] [UIMasterController]: HideUI
[LOG 20:20:59.712] UICanvasPrefabSpawner FlightUI spawning Flight
[LOG 20:20:59.753] UICanvasPrefabSpawner FlightUI spawning VesselLabels
[LOG 20:20:59.754] [UiApp] Awake: ResourceDisplay
[LOG 20:20:59.886] [AddonLoader]: Instantiating addon 'AeroGUI' from assembly 'KSP'
[LOG 20:20:59.889] [AddonLoader]: Instantiating addon 'KJRManager' from assembly 'KerbalJointReinforcement'
[LOG 20:20:59.891] [KerbalJointReinforcement] TRACE: Awake
[LOG 20:21:00.104] [KerbalJointReinforcement] INFO: Configuration file loaded.
[LOG 20:21:00.105] [KerbalJointReinforcement] INFO: User customizable file loaded.

I can say for sure that it's something on your KSP. A full log will help us to detect the problem.

Edited by Lisias
MOAR TESTS
Link to comment
Share on other sites

On 12/13/2018 at 8:47 PM, Lisias said:

Yes. You have a missing, corrupted, duplicated, whatever DLL somewhere in your system. KSPe is picky - anything wrong on the hard bindings, it borks relentlessly.

Thanks @Lisias  Last night I made a fresh KSP install and re-installed all my mods.  Took all night, but that's what I get for having 200 mods.  Something on an update somewhere got corrupt.  No more wet noodle rockets!  Thanks again for pointing me in the right direction.  It would be nice if either KSPe or KJR failed to load that it would throw an error that showed up on the loading screen so you know something went wrong, as I have no idea when it broke on me.  I'm now backing up after every update I do...  I used to, but got lazy and forgot it was really needed.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...