Jump to content

[1.0.4] KSPAPIExtensions V1.7.5 - Utilities for shared mod use 25 Jun


swamp_ig

Recommended Posts

  • 3 weeks later...

i reinstalled KSP today and was reinstalling some mods and now i am getting a error that KSPAPIExtensions is incompatible with KSP 0.90.0 it seems to be a part of the Near Future Propulsion mod i have checked it against the version here and it is version 1.7.2 is this something that you all can help with? should i take this over to that thread instead?

Link to comment
Share on other sites

  • 2 weeks later...

This line of the requirements of use, in the first post of the thread:

> Ensure you're in the list of users below (#4) before releasing your mod

Links to a post that was last edited on September 1st, 2014. Technically if that rule was being followed to the letter, nobody who has added KAE to their mod after 1 September would be allowed to release, because their mod's name wouldn't be in a list that was last updated then.

Can the first post be edited to refer to a newer list? I'm sure the newer list must exist and the first post is just linking to stale information.

Link to comment
Share on other sites

  • 2 weeks later...

I'm doing a maintenance release on Smart Parts to make it compatible and I noticed that it uses KSPAPIExtesions. I'm letting you know about it in case the list in the 3rd post is still being updated.

D.

Link to comment
Share on other sites

I can't figure out why I get this error with version 1.7.4 of KSPAPIextensions installed. I didn't get it with 1.7.3:

It causes the main KSP game to fail to load ANY part data on startup, and therefore it deleted all my vessels in the saved game (all of them had "invalid parts" since none of the parts in the game "exist"). The VAB tabs show no parts at all. This all happened after I installed KSPAPIExtensions.dll version 1.7.4 and clobbered KSPAPIExtensions.dll 1.7.3. with it.


FileNotFoundException: Could not load file or assembly 'KSPAPIExtensions, Version=1.7.3.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
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.MonoField.GetCustomAttributes (System.Type attributeType, Boolean inherit) [0x00000] in <filename unknown>:0
at BaseFieldList.CreateList (System.Type type, System.Object instance) [0x00000] in <filename unknown>:0
at BaseFieldList..ctor (UnityEngine.Component host) [0x00000] in <filename unknown>:0
at PartModule.ModularSetup () [0x00000] in <filename unknown>:0
at PartModule.Awake () [0x00000] in <filename unknown>:0
UnityEngine.GameObject:Internal_AddComponentWithType(Type)
UnityEngine.GameObject:AddComponent(Type)
Part:AddModule(String)
Part:AddModule(ConfigNode)
PartLoader:ParsePart(UrlConfig, ConfigNode)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
PartLoader:StartLoad()
:MoveNext()

(Filename: Line: -1)

NullReferenceException: Object reference not set to an instance of an object
at PartModule.Load (.ConfigNode node) [0x00000] in <filename unknown>:0
at Part.AddModule (.ConfigNode node) [0x00000] in <filename unknown>:0
at PartLoader.ParsePart (.UrlConfig urlConfig, .ConfigNode node) [0x00000] in <filename unknown>:0
at PartLoader+.MoveNext () [0x00000] in <filename unknown>:0
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
PartLoader:StartLoad()
:MoveNext()

(Filename: Line: -1)

NullReferenceException: Object reference not set to an instance of an object
at PartLoader.GetDatabaseConfig (.Part p) [0x00000] in <filename unknown>:0
at PartLoader.GetDatabaseConfig (.Part p, System.String nodeName) [0x00000] in <filename unknown>:0
at DragCubeSystem.LoadDragCubes (.Part p) [0x00000] in <filename unknown>:0
at Part+.MoveNext () [0x00000] in <filename unknown>:0
(Filename: Line: -1)

It appears to be looking for a version 1.7.3 of KSPAPIExtensions, and barfing when it can't find one (because it's now 1.7.4?).

Here is the list of things I've already spent time trying:

- Remove all redundant copies of KSPAPIExtensions.dll that other mods may have installed. Leave just the one in the main GameData folder only.

- Check any ModuleManager configs to see if they explicitly tried to add version 1.7.3 to anything.

- Check my persistent.sfs for the saved game to see if it explicitly mentions 1.7.3 anywhere (it doesn't).

I can't tell why it demands only 1.7.3 and barfs when it's more recent than that.

Mods installed are:

kOS 1.7.2

Infernal Robotics 0.12.RC1

RemoteTech 1.6.3

- - - Updated - - -

Okay I just removed all those mods and re-installed them from scratch and the parts are back, but that saved game now thinks I haven't bought any of them and they're all marked as "experimental" and i have to re-purchase the R&D for the part. No way I'm doing that, the loss of my vessels already borked my bank account in the career - just killing the saved game and starting a new career over.

I think the problem was this:

- Remove all redundant copies of KSPAPIExtensions.dll that other mods may have installed. Leave just the one in the main GameData folder only.

I don't think I should have done that. but part of the reason I did was that I was getting multiple "not compatible with 1.0.2" warnings popping up for the extra copies of them that were compiled for 1.0, and another part of the reason was that leaving the multiple copies in place was causing doubling and tripling of the rightclick menu items- making them look sort of "bold face" as it re-drew them several times on top of each other. That was also tanking the FPS of the game somehow, knocking it down ot about 3 or 4 FPS, even though there were no exceptions in the log.

(So that's why I deleted the extra copies of the dll in the first place, but that seems to have brought on bigger problems.)

Link to comment
Share on other sites

@Stephen Madding: Reading the first posts, mainly post #3 in the thread, KSPAPIExtensions is a bit of an odd duck in that when a mod is compiled with KSPAPIExtensions as a dependency, it is a dependency on that specific version of KSPAPIExt.

So somewhere in your mod list is a mod that has not updated to KSPAPIExt 1.7.4 yet and when it could not find KSPAPIExt version 1.7.3 when you cleaned the other copies of KSPAPIExt out, it crashed out the loader and so no parts loaded.

I've only done a bit with KSPAPIExt and not run into this problem myself, but from reading the start of the thread I think it's pretty clear what is going on.

@Apollo13: I suspect that means one of your installed mods is still on KSPAPIExt 1.7.3 and you will need to wait for it to update to KSPAPIExt 1.7.4

D.

Edited by Diazo
Link to comment
Share on other sites

  • 2 weeks later...

Actually, KSPAPIExt shouldn't be in CKAN in the first place since each mod that uses it is supposed to supply its own copy. KSPAPIExt is not your usual dependency.

Note: I do consider that to be a problem (it has certainly caused me much grief in getting KSPAPIext to work since 0.25 (0.24?)), but that's the way it is right now.

Link to comment
Share on other sites

So I have a few mods installed which use KSPAPIExt:

TweakScale, using v 1.7.4,

TweakableEverything, using v 1.7.4.15,

Infernal Robotics, using v 1.7.4

These are the only intances of the KSPAPIExt file I could find. All mods downloaded via CKAN. Lately, I've been having trouble right clicking Kerbals to open their context menus. I have a plane sitting out somewhere, and whenever I right click on the pilot, I get this exception:

[EXC 22:05:38.577] NullReferenceException: Object reference not set to an instance of an object

KSPAPIExtensions.UIPartActionFloatEdit.UpdateValueDisplay (Single newValue)

KSPAPIExtensions.UIPartActionFloatEdit.UpdateItem ()

UIPartActionWindow.CreatePartList (Boolean clearFirst)

UIPartActionWindow.UpdateWindow ()

UIPartActionController.UpdateActiveWindows ()

UIPartActionController.UpdateFlight ()

UIPartActionController.Update ()

After getting this exception, I cannot open any context menu without changing scenes. Attempting to open a vehicle part's context menu does not throw an exception. Anyone know what mod is causing this, and how I can fix it while keeping the mod, or at least work around it?

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

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...