linuxgurugamer

[1.5.1, 1.6.1, 1.7.2] KSP-AVC Add-on Version Checker Plugin - MiniAVC

Recommended Posts

3 minutes ago, linuxgurugamer said:

I think what I'll do is to leave it, but to put #if/#endif around the 4 lines, so that it won't be compiled in a final release.  

My question for you is, is it doing what you expected?  In my testing, I was rather unhappy with what it was displaying, the output had no relevance to the actual mods

I did what I expected. It showed KSP_VERSION for each mod. Whether or not this is useful info I guess depends on what info the mod author last put in there. I'm only expecting to use this info if I have problems with a mod in a future KSP release. 

Share this post


Link to post
Share on other sites
Posted (edited)
3 hours ago, Stone Blue said:

Arrow buttons to right in center, Incompatable Mod section... I guess I dont see the point in these, the way they are setup... vOv
They currently seem to do the same exact thing as the radial buttons in the Compatable Version Override section... especially for *every* other mod, that is the *same* version or *later*... I would rather rather (and would expect) it would toggle each mod individually for an override

The arrow buttons were there before the toggles for 1.3.*, 1.4.*... were added. The point of the buttons is to quickly add the (max) version of a mod to the version override.
Also, the purpose of the version override is to affect multiple mods. If you want to enable the override for a single mod, use the "always override" option instead.

3 hours ago, Stone Blue said:

toggling a 1.3.x mod, seems to only affect pre-1.4.0 mods, ignoring all post-1.4.0 KSP versions, yet toggling a single 1.4.0 mod, toggles *ALL* mods for *ALL* post 1.4.0 versions... vOv

Could be normal and intended, or a bug...depends on the .version files of the mods. I had some issues before when refering to a version number which ends with 'zero', so just to be sure: Did you set 1.4.0 to be compatible with something different or 1.4.*? Also, please name/link the affected mods/version files :)

3 hours ago, Stone Blue said:

ie what if you have 10 mods that *are* ok to override from 1.4.0 to 1.6.1 ... but you have that one mod, that will *not* work in 1.6.1? How do you easily, in the UI, disabled just that specific mod from the general override you've just enabled?

Open the "advanced settings" and put the mod on the ignore list via the toggle button behind the mod name. You will notice, that the color of the mod name will change from cyan (active override) to yellow (incompatible) :)

3 hours ago, Stone Blue said:

I am also seeing inconsistent orrides being applied using these buttons, that should/should not be enabling/disabling the version overrides... Hard to explain... I'll have to add moar AVC-supported mods over wider range of KSP versions to get a handle on the weirdness I'm seeing...

Sometimes, the displayed version number can be misleading, for example if a mod got VERSION_MIN 1.4.1 and VERSION_MAX 1.5.1. In this case, the UI will show 1.5.1 behind the mod name but it will be affected by a 1.4.*, 1.4.1, 1.4.2,... version override.

3 hours ago, Stone Blue said:

Version Override section ... Currently showing version numbers strictly how they are selected and toggled... ie a line each for 1.4.99 -> 1.6.1, 1.4.0 -> 1.6.1, 1.4.5 -> 1.6.1, etc... Would it be too difficult to add some code that could could do live comparison, and combine the _MIN/_MAX/_STRICT versions, into a *single* line where applicable, that would basically cover the _MIN/_MAX range... even when only implied, where any of the three fields are not present?

Maybe...but I guess this would be even more misleading because it would not represent the min/max range...more like a max/max range.

3 hours ago, Stone Blue said:

Also, when added, the displayed entries are not displayed numerically in order... nor even in order of when they are selected... vOv

I removed the sorting for some reasons I cant remember... maybe worth a try to re-implement it^^

Edited by 4x4cheesecake

Share this post


Link to post
Share on other sites

New beta, 1.3.0.2

  • Disabled the STRICT_VERSION with a compile-time setting.  To enable it, add STRICT to the conditional compilation symbols
  • Added Sorting for mod names and version numbers.

https://github.com/linuxgurugamer/KSPAddonVersionChecker/releases/tag/1.3.0.2

Share this post


Link to post
Share on other sites

@linuxgurugamer during your last stream, you said that you thought about adding a toolbar button for the override GUI so it can be accessed from a running savegame and not just during the loading screen/mainmenu. Is that still something you want to do? Otherwise, I would consider it a bug that the override window is not destroyed after loading a savegame.

I also had a thought about the new default toggles: How about moving them to the center box and treat them like a mod but just add the button to enable the version override, like this:
yWWHU57.png

(just a quick shot for better visualization so far, not functional)

IMO, this would create a "cleaner" look.
At least, I would like to add a toggle to the advanced settings to enable/disable the default values, regardless where they are displayed (visible by default).

 

Share this post


Link to post
Share on other sites
On 3/13/2019 at 4:23 PM, 4x4cheesecake said:

 The point of the buttons is to quickly add the (max) version of a mod to the version override.
Also, the purpose of the version override is to affect multiple mods. If you want to enable the override for a single mod, use the "always override" option instead.

Ok.. but again, doing that for *one* mod, seems to enable the overide for all other mods with that version or greater... again, which seems to be duplicating what the KSP version buttons do...
Gotcha on the single mod override ;)
 

On 3/13/2019 at 4:23 PM, 4x4cheesecake said:

Open the "advanced settings" and put the mod on the ignore list via the toggle button behind the mod name. You will notice, that the color of the mod name will change from cyan (active override) to yellow (incompatible) :)

Hmm.. i hate to add moar stuff and make things moar complicated, but maybe use a different, third, color, to show incompatability, but that it has been chosen on purpose.
By going back to yellow, it just throws it into the general list of incompatable mods that may/may not have been addressed/over-ridden by the user... vOv

 

On 3/13/2019 at 4:23 PM, 4x4cheesecake said:

Sometimes, the displayed version number can be misleading, for example if a mod got VERSION_MIN 1.4.1 and VERSION_MAX 1.5.1. In this case, the UI will show 1.5.1 behind the mod name but it will be affected by a 1.4.*, 1.4.1, 1.4.2,... version override.

Gotcha... if this still bugs me, and after i add moar mods for moar data points, I'll remember to check that before posting moar on this.

 

On 3/13/2019 at 4:23 PM, 4x4cheesecake said:

Maybe...but I guess this would be even more misleading because it would not represent the min/max range...more like a max/max range.

Hmmm... would seem moar like an appropriate MIN/max range, to me vOv

Share this post


Link to post
Share on other sites
2 hours ago, 4x4cheesecake said:

@linuxgurugamer during your last stream, you said that you thought about adding a toolbar button for the override GUI so it can be accessed from a running savegame and not just during the loading screen/mainmenu. Is that still something you want to do? Otherwise, I would consider it a bug that the override window is not destroyed after loading a savegame.

I also had a thought about the new default toggles: How about moving them to the center box and treat them like a mod but just add the button to enable the version override, like this:
yWWHU57.png

(just a quick shot for better visualization so far, not functional)

IMO, this would create a "cleaner" look.
At least, I would like to add a toggle to the advanced settings to enable/disable the default values, regardless where they are displayed (visible by default).

 

Moving them to the center is fine, and makes sense.

Right now I'm not planning on adding a button, but regardless, the window should close.

And the advanced toggle about the default values is also fine

Are you going to do this?

Share this post


Link to post
Share on other sites
31 minutes ago, Stone Blue said:

Hmm.. i hate to add moar stuff and make things moar complicated, but maybe use a different, third, color, to show incompatability, but that it has been chosen on purpose.
By going back to yellow, it just throws it into the general list of incompatable mods that may/may not have been addressed/over-ridden by the user... vOv

Hm...including the dropwdown list, we already have:

yellow: update available, incompatible, no override
cyan: incompatible, override
green: compatible
(orange: kopernicus) <- not colored by AVC

Not sure if adding more colors actually helps to understand whats going on. Maybe we can find a different way to differentiate between "incompatible" and "incompatible by choice".

33 minutes ago, Stone Blue said:

Hmmm... would seem moar like an appropriate MIN/max range, to me vOv

I probably just misunderstood you.

Let's assume you set "1.4.2 to 1.4.5 1.6.1" (combined, as I understand your suggestion), 1.4.2 would look like your MIN and 1.4.5 would be your MAX.
But this would also affect mods which are compatible from 1.4.1 to 1.5.1 because 1.4.1 < 1.4.2.
I would expect that this mod wouldn't be affected because the KSP_VERSION_MIN is not covered by the range of the combined version numbers but the KSP_VERSION_MIN from the .version file is not the same MIN from the combined version numbers.
It's a bit confusing, regardless if you combine the numbers or not, but combining them will look like you got some borders around the range, which isn't actually the case.

At least, this is how I understood your suggestion, please correct me if I'm wrong :)

2 minutes ago, linuxgurugamer said:

Are you going to do this?

Sure, I can do it this evening.

I also just found a bug in my regex pattern, I'll fix it as well.

Share this post


Link to post
Share on other sites

New beta, 1.3.0.3

  • Moved default values to addon list
  • Added toggle button to hide the default values (Advanced Settings)
  • Decent highlighting of addons on the ignore list (bold and italic)
  • Fixed: Issue during text input validation
  • Fixed: Windows don't close after loading a savegame
  • Some internal code changes (CompatibilityState)

Available here:  https://github.com/linuxgurugamer/KSPAddonVersionChecker/releases/tag/1.3.0.3

Share this post


Link to post
Share on other sites
Posted (edited)

A little push for the beta and a ping for @Stone Blue since I added some highlighting for ignored mods just for you (kinda...let's say, based on your suggestion) and I would love to read your feedback on the change :)

Edited by 4x4cheesecake

Share this post


Link to post
Share on other sites

I've updated the last beta into a full release.  

New release, 1.3.0.3 (following is a full wrapup of all the changes since the last release)

  • Thanks to 4x4cheesecake for this:
  •     Added some features to AVC and MiniAVC
    •         AVC
      •         Added Compatibility Override incl. GUI
      •         Added Update Frequency
      •         Added command line flag to write just a separate AVC.log
    •         MiniAVC
    •         -Added Update Frequency
  •         Compatibility Override
    •         Allows to set a single addon or a range of versions to be compatible with a different KSP version, configurable via GUI. GUI becomes available after all addons have been checked for updates. Can be accessed via a button in the dropdown addon list or by pressing "modkey + 2".  Mod authors can disallow the override for their mod by adding <"DISALLOW_VERSION_OVERRIDE": true> to the .version file. Update notifications are not affected!
  •         Update Frequency
    •         Allows to skip AVC version check for a some time or to disable it at all. Configurable via config file:
      •         "-1" to disable AVC
      •         "0" to run at each game launch (default)
      •         "x > 0" skip AVC for the next x hours
  •         Logging
    •         Prevent AVC to write into the KSP.log and output_log by adding the command line parameter "-AVC-log-only".
  • 1.3.0.1
    •     Fixed reset button not clearing toggles
    •     Fixed toggle not becoming enabled after entering value manually
    •     Fixed issue when MinTimeBetweenAvcRuns > 0, the dropdown list was being shown when it wasn't supposed to
    •     Added new field in config file:  STRICT_VERSION, if set true, then the Min and Max versions are ignored.
  • 1.3.0.2
    •     Disabled the STRICT_VERSION with a compile-time setting.  To enable it, add STRICT to the conditional compilation symbols
    •     Added Sorting for mod names and version numbers.
  • 1.3.0.3
    •     Moved default values to addon list
    •     Added toggle button to hide the default values (Advanced Settings)
    •     Decent highlighting of addons on the ignore list (bold and italic)
    •     Fixed: Issue during text input validation
    •     Fixed: Windows don't close after loading a savegame
    •     Some internal code changes (CompatibilityState)

Share this post


Link to post
Share on other sites

Hi there, I know you are playing with loads of mods (meaning your adopted mods) and therefore have little time. I hope this question is no bugger nor an issue.

Is there any chance that Gitlab can also be used as source for KSP-AVC version files or does this need tinkering in the source?

regards! :)

Share this post


Link to post
Share on other sites
Posted (edited)
6 hours ago, LatiMacciato said:

Is there any chance that Gitlab can also be used as source for KSP-AVC version files or does this need tinkering in the source?

The online .version file can be located everywhere, you just need to change the URL within the file.

For example, LGG uses it's own server: https://github.com/linuxgurugamer/KSPAddonVersionChecker/blob/master/KSP-AVC.version

Just be sure to use the "raw" link and it should work :)

Edited by 4x4cheesecake

Share this post


Link to post
Share on other sites
On 4/7/2019 at 1:59 PM, 4x4cheesecake said:

The online .version file can be located everywhere, you just need to change the URL within the file.

For example, LGG uses it's own server: https://github.com/linuxgurugamer/KSPAddonVersionChecker/blob/master/KSP-AVC.version

Just be sure to use the "raw" link and it should work :)

GitLab.com != GitHub.com

Share this post


Link to post
Share on other sites
5 hours ago, LatiMacciato said:

GitLab.com != GitHub.com

Yes...I know....

If you actually click on the link, you will notice that the "URL" within the .version file does NOT point to github but here:

http://ksp.spacetux.net/avc/KSP-AVC

But the format is less friendly to read (at least in my browser) so I've linked  the github version:

QNsdI4B.png

Share this post


Link to post
Share on other sites

@linuxgurugamer I have a feature suggestion, maybe for this mod, maybe a new mod. Would it be possible to search the KSP.Log to look for .dlls from mods that fail to load and present a message that "xxxx.dll did not load. The installing mod and any dependencies should be considered broken".

The 1.7 update broke KPBS (PlanetarySurfaceStructures.dll), KAS 1.2 (KAS.dll) and Wind Tunnel (accord.dll). A lot of users have posted questions about the symptoms this causes (broken animations, missing PAW, etc) without knowing what to look for in the log and recognizing the problem themselves. 

Share this post


Link to post
Share on other sites
1 minute ago, Tonka Crash said:

@linuxgurugamer I have a feature suggestion, maybe for this mod, maybe a new mod. Would it be possible to search the KSP.Log to look for .dlls from mods that fail to load and present a message that "xxxx.dll did not load. The installing mod and any dependencies should be considered broken".

The 1.7 update broke KPBS (PlanetarySurfaceStructures.dll), KAS 1.2 (KAS.dll) and Wind Tunnel (accord.dll). A lot of users have posted questions about the symptoms this causes (broken animations, missing PAW, etc) without knowing what to look for in the log and recognizing the problem themselves. 

It broke a few others as well.

But, if a dll fails to load, is it even shown in the log at all?

Share this post


Link to post
Share on other sites

@linuxgurugamer https://drive.google.com/file/d/1CRhZW4BMBOsF64oLeuIR5a7K_T8Gf_7u/view This was in the output_log.txt another player posted that contains errors. When I first updated to 1.7 the first thing I did on the first game start was to look in the KSP.Log and I found similar exceptions. I can't easily produce a log for you now as I ended up fixing and compiling the problem mods locally.

Spoiler

Non platform assembly: C:\Program Files\Steam\steamapps\common\Kerbal Space Program\GameData\KAS\Plugins\KSPDev_Utils.1.2.dll (this message is harmless)
AssemblyLoader: Exception loading 'KAS': 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 AssemblyLoader.LoadAssemblies () [0x00000] in <filename unknown>:0 

Additional information about this exception:

 System.TypeLoadException: Could not load type 'SaveUpgradePipeline.KAS.PatchFilesProcessor' from assembly 'KAS, Version=1.2.7037.1765, Culture=neutral, PublicKeyToken=null'.
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)



....
    
Non platform assembly: C:\Program Files\Steam\steamapps\common\Kerbal Space Program\GameData\PlanetaryBaseInc\BaseSystem\Plugins\PlanetarySurfaceStructures.dll (this message is harmless)
AssemblyLoader: Exception loading 'PlanetarySurfaceStructures': 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 AssemblyLoader.LoadAssemblies () [0x00000] in <filename unknown>:0 

Additional information about this exception:

 System.TypeLoadException: Could not load type 'PlanetarySurfaceStructures.SaveFileUpgrader' from assembly 'PlanetarySurfaceStructures, Version=1.6.8.0, Culture=neutral, PublicKeyToken=null'.
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

....

Non platform assembly: C:\Program Files\Steam\steamapps\common\Kerbal Space Program\GameData\WindTunnel\Plugins\Accord.dll (this message is harmless)
ADDON BINDER: Cannot resolve assembly: System.ComponentModel.DataAnnotations, Culture=neutral, PublicKeyToken=31bf3856ad364e35
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

ADDON BINDER: Cannot resolve assembly: System.ComponentModel.DataAnnotations, Culture=neutral, PublicKeyToken=31bf3856ad364e35
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

AssemblyLoader: Exception loading 'Accord': 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 AssemblyLoader.LoadAssemblies () [0x00000] in <filename unknown>:0 

Additional information about this exception:

 System.IO.FileNotFoundException: Could not load file or assembly 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies.
File name: 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'

 System.TypeLoadException: Could not load type 'Accord.RealAttribute' from assembly 'Accord, Version=3.8.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7'.

 System.TypeLoadException: Could not load type 'Accord.RealAttribute' from assembly 'Accord, Version=3.8.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7'.

 System.IO.FileNotFoundException: Could not load file or assembly 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies.
File name: 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'

 System.TypeLoadException: Could not load type 'Accord.RealAttribute' from assembly 'Accord, Version=3.8.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7'.

 System.IO.FileNotFoundException: Could not load file or assembly 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies.
File name: 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'

 System.IO.FileNotFoundException: Could not load file or assembly 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies.
File name: 'System.ComponentModel.DataAnnotations, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'

 System.TypeLoadException: Could not load type 'Accord.IntegerAttribute' from assembly 'Accord, Version=3.8.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7'.

 System.TypeLoadException: Could not load type 'Accord.IntegerAttribute' from assembly 'Accord, Version=3.8.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7'.

 System.TypeLoadException: Could not load type 'Accord.IntegerAttribute' from assembly 'Accord, Version=3.8.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7'.

 System.TypeLoadException: Could not load type 'Accord.IntegerAttribute' from assembly 'Accord, Version=3.8.0.0, Culture=neutral, PublicKeyToken=fa1a88e29555ccf7'.
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

 

 

Share this post


Link to post
Share on other sites
Posted (edited)

Another exception I've figured out is the TypeLoadException: Could not load type 'System.Runtime.Versioning.TargetFrameworkAttribute' from assembly : XXX

In every case this has tracked to a mod that was not compiled .NET 3.5. In this case if you look at the github .csproj for comfortable landing system it was compiled with 4.5.2. This error seems throws when the AddonLoader instantiates LogAggregatorWorker from Kopernicus. It only throws an error on the first offending mod, No idea if it throws without Kopernicus.

Spoiler

TypeLoadException: Could not load type 'System.Runtime.Versioning.TargetFrameworkAttribute' from assembly 'ComfortableLanding'.
  at (wrapper managed-to-native) System.MonoCustomAttrs:GetCustomAttributesInternal (System.Reflection.ICustomAttributeProvider,System.Type,bool)
  at System.MonoCustomAttrs.GetCustomAttributesBase (ICustomAttributeProvider obj, System.Type attributeType) [0x00000] in <filename unknown>:0 
  at System.MonoCustomAttrs.GetCustomAttributes (ICustomAttributeProvider obj, System.Type attributeType, Boolean inherit) [0x00000] in <filename unknown>:0 
  at System.Reflection.Assembly.GetCustomAttributes (System.Type attributeType, Boolean inherit) [0x00000] in <filename unknown>:0 
  at Kopernicus.LogAggregatorWorker.Awake () [0x00000] in <filename unknown>:0 
UnityEngine.GameObject:Internal_AddComponentWithType(Type)
UnityEngine.GameObject:AddComponent(Type)
AddonLoader:StartAddon(LoadedAssembly, Type, KSPAddon, Startup)
AddonLoader:StartAddons(Startup)
<LoadObjects>c__Iterator1:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutine_Auto_Internal(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
<CreateDatabase>c__Iterator0:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutine_Auto_Internal(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
GameDatabase:StartLoad()
<LoadSystems>c__Iterator0:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

 

Edit: This seems much more benign, it could create problems, but is not guaranteed to be a problem.

 

Edited by Tonka Crash
more info

Share this post


Link to post
Share on other sites
10 minutes ago, Tonka Crash said:

Another exception I've figured out is the TypeLoadException: Could not load type 'System.Runtime.Versioning.TargetFrameworkAttribute' from assembly : XXX

In every case this has tracked to a mod that was not compiled .NET 3.5. In this case if you look at the github .csproj for comfortable landing system it was compiled with 4.5.2. This error seems throws when the AddonLoader instantiates LogAggregatorWorker from Kopernicus. It only throws an error on the first offending mod, No idea if it throws without Kopernicus.

  Reveal hidden contents


TypeLoadException: Could not load type 'System.Runtime.Versioning.TargetFrameworkAttribute' from assembly 'ComfortableLanding'.
  at (wrapper managed-to-native) System.MonoCustomAttrs:GetCustomAttributesInternal (System.Reflection.ICustomAttributeProvider,System.Type,bool)
  at System.MonoCustomAttrs.GetCustomAttributesBase (ICustomAttributeProvider obj, System.Type attributeType) [0x00000] in <filename unknown>:0 
  at System.MonoCustomAttrs.GetCustomAttributes (ICustomAttributeProvider obj, System.Type attributeType, Boolean inherit) [0x00000] in <filename unknown>:0 
  at System.Reflection.Assembly.GetCustomAttributes (System.Type attributeType, Boolean inherit) [0x00000] in <filename unknown>:0 
  at Kopernicus.LogAggregatorWorker.Awake () [0x00000] in <filename unknown>:0 
UnityEngine.GameObject:Internal_AddComponentWithType(Type)
UnityEngine.GameObject:AddComponent(Type)
AddonLoader:StartAddon(LoadedAssembly, Type, KSPAddon, Startup)
AddonLoader:StartAddons(Startup)
<LoadObjects>c__Iterator1:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutine_Auto_Internal(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
<CreateDatabase>c__Iterator0:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
UnityEngine.MonoBehaviour:StartCoroutine_Auto_Internal(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
GameDatabase:StartLoad()
<LoadSystems>c__Iterator0:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

 

Edit: This seems much more benign, it could create problems, but is not guaranteed to be a problem.

 

I've noticed this issue already in 1.6 when you run Craft Manager and Kopernicus together. Running just one of both didn't throw an exception anymore and the mods actually worked fine though. 

Don't know for which .NET target these mods are compiled and I'm not going to check it since I'm on a mobile but you can take a look at them if you need more examples for your investigations ;)

There is also a topic about system.reflection in the add-on development subforum:

 

Share this post


Link to post
Share on other sites
2 minutes ago, 4x4cheesecake said:

There is also a topic about system.reflection in the add-on development subforum:

This is actually a different problem. The System.Reflection.Assembly.GetTypes() failing is due to expected.dlls not being present. The Target Framework TypeLoadException is another issue. 

 

Share this post


Link to post
Share on other sites

@Tonka Crash

You are doing great research.  This is important and useful enough to deserve it's own thread.  I'm not sure a mod could do anything, but if it can, then it should be a stand-alone mod and not part of anything else

Share this post


Link to post
Share on other sites

A note brought on by the current issues with Spacedock:

It would be nice to be able to move or even close the window while it's still checking for updates.

Share this post


Link to post
Share on other sites

so got the notice via ksp avc that a new versions of engine light relit, ksp avc, pebkac was out but....

the kspavc download link for engine light relit went to the old engine light on spacedock. 

ksp avc keeps reporting that my current ksp avc build is 1.2 something instead of the 1.303 that is in the version file

also the pebkac spacedock download link in ksp avc goes to a dead link.

i really hate these posts cuz you should be sainted for keeping all these mods going over the years so just letting you know whats going on.  

Share this post


Link to post
Share on other sites
2 hours ago, COL.R.Neville said:

the kspavc download link for engine light relit went to the old engine light on spacedock. 

[...]

also the pebkac spacedock download link in ksp avc goes to a dead link.

These are issues within the .version files of the mods. Engine Light Relit contains the wrong link, PEBKAC a broken one. Need to be fixed in the related mods.

2 hours ago, COL.R.Neville said:

ksp avc keeps reporting that my current ksp avc build is 1.2 something instead of the 1.303 that is in the version file

How does AVC report this? Via a small popup window saying "You successfully installed AVC version xyz" or does it show up as 1.2 in the mod list or does it keep showing up in the "update available" window?

A log file might be useful for this one :)

Share this post


Link to post
Share on other sites

in the ksp avc popup window showing the current and available versions. it reports my current version as 1.2 .0.2 and this is my version file

{
  "NAME": "KSP-AVC Plugin",
  "URL": "http://ksp.spacetux.net/avc/KSP-AVC",
  "DOWNLOAD": "https://github.com/linuxgurugamer/KSPAddonVersionChecker/releases",
  "GITHUB": {
    "USERNAME": "linuxgurugamer",
    "REPOSITORY": "KSPAddonVersionChecker"
  },
  "VERSION": {
    "MAJOR": 1,
    "MINOR": 3,
    "PATCH": 0,
    "BUILD": 3
  },
  "KSP_VERSION": {
    "MAJOR": 1,
    "MINOR": 6,
    "PATCH": 1
  },
  "KSP_VERSION_MIN": {
    "MAJOR": 1,
    "MINOR": 5,
    "PATCH": 1
  }
}

Spoiler

[LOG 12:18:52.462] KSP-AVC -> Executing: KSP-AVC - 1.3.0.3
[LOG 12:18:52.462] KSP-AVC -> Assembly: E:\ksp170_stock\KSP_win64\GameData\KSP-AVC\KSP-AVC.dll
[LOG 12:18:52.462] KSP-AVC -> Starter was created.

KSP-AVC -> E:\ksp170_stock\KSP_win64\GameData\MiniAVC\KSP-AVC.version
    NAME: KSP-AVC Plugin
    URL: http://ksp.spacetux.net/avc/KSP-AVC
    DOWNLOAD: https://github.com/linuxgurugamer/KSPAddonVersionChecker/releases
    GITHUB: linuxgurugamer/KSPAddonVersionChecker
        LatestRelease: NULL
        AllowPreRelease: False
    DISABLE_COMPATIBLE_VERSION_OVERRIDE: False
    VERSION: 1.3.0.3
    KSP_VERSION: 1.6.1
    KSP_VERSION_MIN: 1.5.1
    KSP_VERSION_MAX: NULL
    CompatibleKspVersion: False
    CompatibleKspVersionMin: True
    CompatibleKspVersionMax: True
    CompatibleGitHubVersion: True

[LOG 12:18:53.562] KSP-AVC -> E:\ksp170_stock\KSP_win64\GameData\KSP-AVC\KSP-AVC.version
    NAME: KSP-AVC Plugin
    URL: http://ksp.spacetux.net/avc/KSP-AVC
    DOWNLOAD: https://github.com/linuxgurugamer/KSPAddonVersionChecker/releases
    GITHUB: linuxgurugamer/KSPAddonVersionChecker
        LatestRelease: NULL
        AllowPreRelease: False
    DISABLE_COMPATIBLE_VERSION_OVERRIDE: False
    VERSION: 1.3.0.3
    KSP_VERSION: 1.6.1
    KSP_VERSION_MIN: 1.5.1
    KSP_VERSION_MAX: NULL
    CompatibleKspVersion: False
    CompatibleKspVersionMin: True
    CompatibleKspVersionMax: True
    CompatibleGitHubVersion: True

that is what is in the logs. 

yeah the same guy owns all of the mods not making separate posts all over the place.

ksp avc is reporting the wrong version for itself as well as other mods and going to the wrong places when i use the ksp avc download button. 

seems to be a trend, common thread here. 

Share this post


Link to post
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.