Firov

[1.0.4] Smart Parts v1.6.6 | DDS Textures and Bug Fixes | July 5

Recommended Posts

I found the problem.

The KSPAPIExtensions.dll was out of date in the MagicSmokeIndustries/Plugins directory as well as the SmartParts/Plugins directory.

Once I replaced both of them, it started to work properly again

I must add that according to the KSPAPIExtensions, that this is NOT correct. See this link

I'm going to send him a message because according to the notes, we shouldn't have to do this.

LGG

Share this post


Link to post
Share on other sites

I found replacing the kspapi dill didn't sort it. Got the missing lines in right-click menu issue. Is this mod on hiatus? There hasn't been any activity fir a while now.

Share this post


Link to post
Share on other sites
I found replacing the kspapi dill didn't sort it. Got the missing lines in right-click menu issue. Is this mod on hiatus? There hasn't been any activity fir a while now.

Hey Dear Leader. It's not on hiatus. I'm working on an update now, and should have it out in the next day or two. I've just been busy lately.

Note though that the problem you're experiencing is definitely a result of an outdated KSPAPIExtension.dll, somewhere. Unfortunately, even if you update the KSPAPIExtension.dll in the SmartParts folder, it will still use the outdated KSPAPIExtension.dll if it exists ANYWHERE else in your mods folder. So if you have any mod that hasn't been updated for 1.0.4, it will use it's KSPAPIExtension.dll. Frankly, as linuxguru pointed out, it really shouldn't do that. If anyone has any ideas on how I can get it to always use the latest version, I'd love to know.

Anyway, what I would suggest is doing is doing a search for that file in your entire mod folder and replacing all of them with the latest version.

Share this post


Link to post
Share on other sites

Real life always has a habit of getting in the way. I went through and replaced a bunch of kspapi, but must of missed one. Looking forward to your update, this is an awesome mod. I use it on every vessel in some form or another, it's so handy. It's really good for automated re-entry into planets with an atmosphere of lander probes when I don't have a consistent RemoteTech connection.

EDIT: Got it working again! Thanks for your help!

Edited by Glorious Dear Leader

Share this post


Link to post
Share on other sites

Whoa! An update soon! Great news!

Share this post


Link to post
Share on other sites

Foun d problem as other more than one KSPAPIE

My one was within Tweakable everythink

Share this post


Link to post
Share on other sites

Hello everyone. Version 1.6.6 is good to go.

It's now compatible with KSP 1.0.4 (it technically was before, but KSPAPIExtension caused issues) and fixed the bug with the auto stager firing prematurely while set for 0% activation. It should now only fire when once the resource it's monitoring is no longer being drained (AKA the engine has stopped firing).

Also, thanks to InsanePlumber, I've switched over to DDS textures, which will improve load times and reduce memory usage. Please remember to delete the old Smart Parts folder before you install the new one, otherwise it may still try to load the old TGA textures.

As always, you can find the latest release at my GitHub repository below. Let me know if there are any issues!

New Releases

Share this post


Link to post
Share on other sites

Thanks, Firov!

Is there a chance the prox sensor might see an expansion in possibilities in the future?

I've been looking at the code, and it seems changing the minimum distance is easy, however I don't see yet how "target" being the vessel, changed to "part", can be done.

And something else.

The code to switch action groups seems not too difficult ... maybe if I can find the way a part's temperature is handled, you could build a temperature switch out of it?

Share this post


Link to post
Share on other sites

I see an exception in the Log when loading the game (doing nothing in the game up to this point):

I have 7 KSPAPIExtensions.dll all identical.

Exception when attempting to register listener: Lib.Stager, SmartParts, Version=1.6.6.0, Culture=neutral, PublicKeyToken=null.changeListener

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

ArgumentException: Message argument is null
at KSPAPIExtensions.PartMessage.PartMessageListener..ctor (System.Type delegateType, PartRelationship relations, GameSceneFilter scenes) [0x00000] in <filename unknown>:0

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.MonoCustomAttrs.GetCustomAttributes (ICustomAttributeProvider obj, Boolean inherit) [0x00000] in <filename unknown>:0

at System.Reflection.MonoMethod.GetCustomAttributes (Boolean inherit) [0x00000] in <filename unknown>:0

at KSPAPIExtensions.PartMessage.ServiceImpl.Register[Stager] (Lib.Stager obj) [0x00000] in <filename unknown>:0
UnityEngine.GameObject:SetActive(Boolean)
DragCubeSystem:SetupPartForRender(Part, GameObject)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine_Auto(IEnumerator)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
:MoveNext()

(Filename: Line: -1)

Full Log: https://www.dropbox.com/s/t105e3y4886w5mk/output_log6.zip?dl=0

Edited by Kolago

Share this post


Link to post
Share on other sites
Thanks, Firov!

Is there a chance the prox sensor might see an expansion in possibilities in the future?

I've been looking at the code, and it seems changing the minimum distance is easy, however I don't see yet how "target" being the vessel, changed to "part", can be done.

And something else.

The code to switch action groups seems not too difficult ... maybe if I can find the way a part's temperature is handled, you could build a temperature switch out of it?

For some reason new post notifications from the KSP forums were being directed to my spam folder (fixed now), so I only just noticed this.

Anyway, it's definitely possible to do this, but it would require a pretty extensive rework. When I created this, I never imagined anyone would want to do intra-vessel proximity detection. Right now proximity sensors will only register themselves on the global list if there's not already an entry for that vessel on that channel. Furthermore, as you've noticed, the position used for this is the vessel's CoM, not the CoM of the proximity sensor. I think it's possible to get the position of an individual part, but I'll have to look into it.

Honestly, I don't think I want to make the mainline release work this way, since it likely wouldn't be quite as... user friendly, but it may be an interesting challenge to make. I honestly can't promise anything, but I'll see what I can do.

I see an exception in the Log when loading the game (doing nothing in the game up to this point):

I have 7 KSPAPIExtensions.dll all identical.

This problem is, a little difficult to pin down. Per your GitHub bug report, I've fixed at least a few instances of this, but it still shows up in my latest developer build in other situations. I'm still trying to pin this one down.

Share this post


Link to post
Share on other sites

I have a problem with my story mode, where the SmartParts doesn't show the action groups when i right click on it.

For example: I go into my fully upgraded assembly building, put a parachute in custom group 1, and place the altitude action group trigger on the craft. Then i right click on the part, and i see Altitude, active, auto-reset, use AGL, use kilometers. There is an empty line between the name of the part and altitude as well as active and auto-reset.

I see no places to select what group i want to trigger. I expect that this is a bug and that those empty lines should likely not be empty? But how do i fix it?

Share this post


Link to post
Share on other sites

Hi,

I never used the mod but i'm interested in for Remote tech applications.

Is it possible to program a soft landing of a probe with smart part. Let say I would like a probe to maintain a speed of 2m/s below 100m above the ground until it makes the touchdown. Is it possible?

Share this post


Link to post
Share on other sites

After this new version update, i can't use smart parts anymore, on Mac.

It freezes on load one of the smart parts.

:(

Share this post


Link to post
Share on other sites
Hi,

I never used the mod but i'm interested in for Remote tech applications.

Is it possible to program a soft landing of a probe with smart part. Let say I would like a probe to maintain a speed of 2m/s below 100m above the ground until it makes the touchdown. Is it possible?

Yes, this is possible. I have build such a probe. You need the Vertical Velocity and the Mod Actions Mods by Diazo. Then you can release via Smart Parts --> Action Groups --> Vertical Velocity. Simultaneous you can use the Landing Aid Mod by Diazo for the horizontal velocity.

Share this post


Link to post
Share on other sites
Yes, this is possible. I have build such a probe. You need the Vertical Velocity and the Mod Actions Mods by Diazo. Then you can release via Smart Parts --> Action Groups --> Vertical Velocity. Simultaneous you can use the Landing Aid Mod by Diazo for the horizontal velocity.

Many thanks!

I'm in that shape:bave.png

Share this post


Link to post
Share on other sites

Anyway, it's definitely possible to do this, but it would require a pretty extensive rework. When I created this, I never imagined anyone would want to do intra-vessel proximity detection. Right now proximity sensors will only register themselves on the global list if there's not already an entry for that vessel on that channel. Furthermore, as you've noticed, the position used for this is the vessel's CoM, not the CoM of the proximity sensor. I think it's possible to get the position of an individual part, but I'll have to look into it.

Honestly, I don't think I want to make the mainline release work this way, since it likely wouldn't be quite as... user friendly, but it may be an interesting challenge to make. I honestly can't promise anything, but I'll see what I can do.

Thank you for having an interest in this. The users will not be the standard ones, but the increasing number of mechanical & electrical (would be) engineers. The lack of ways in KSP to use sensory information for switching action groups, has become a huge barrier between us and a lot of awesome ways of constructing things. You'll see magic once we have it, far more interesting and elaborate than the stuff that's been done with Infernal Robotics and kOS. The last one isn't user friendly nor intuitive, IR lacks features.

There are still a lot of firsts to be done in KSP, and we'll see a gradual increase in uses beyond replicating F15's and Saturn V's or building yet another space station, because the main strength is NOT the fact you have newtonian flight and orbital mechanics. It's the editor.

Share this post


Link to post
Share on other sites

Hi,

I found a compatibility bug with Action Groups Extended.

This image explains it well:

Fuel_Sensor_BUG.png

It only happens with Fuel Sensor.

Share this post


Link to post
Share on other sites

@slotter: Can you try closing and reopening the right-click part menu?

The menu is supposed to auto-refresh but if it isn't reopening it manually will also refresh it.

I'll be able to look into this tomorrow morning to see if I can figure out what is going on.

(I'm the AGX dev.)

D.

Share this post


Link to post
Share on other sites

is there any way to change the trigger scale for some of these parts. ?

I am trying to use the prox sensor to trigger when 2 m from surface. The lowest number I can set is 25 meters.

I appreciate any help with this.

Thanks and cheers.

Share this post


Link to post
Share on other sites
@slotter: Can you try closing and reopening the right-click part menu?

I tried and it didn't solve. Tried to close it with several menu setups to see if any triggered the refresh with no success.

I also tried to reinstall both Smart Parts and AGE.

Share this post


Link to post
Share on other sites

@slotter: Can you try this version of the SmartParts.dll file please?

I've made a tweak that will hopefully resolve the issue you are seeing.

This is just the .dll file that replaces the GameData\SmartParts\PlugIn\SmartParts.dll file, you have to leave everything else from the .zip file installed.

D.

Share this post


Link to post
Share on other sites

Good to hear. I'll talk to Firov and get this straightened out.

D.

Share this post


Link to post
Share on other sites

Amazing plugin! But I was wondering... how can I set the altimeter to activate (and stage) at, for example, 5 km? Because by using meters I can set it up to 1 km, and by using kilometers I can only choose 25km or more. Is there a wait to use it to safely trigger your chutes?

Thanks in advance.

EDIT: I'm dumb. I just got it.

Edited by Alpha188

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.