Jump to content

[1.3.1, 1.4, 1.5, 1.6, 1.7] Procedural Parts - Tidal Stream Branch


Tidal Stream

Recommended Posts

4 hours ago, Alioth81 said:

Does anyone know a workaround how procedural parts can be used despite the bug with the vanishing/moving nodes?

e.g. does it only happen when certain parts are attached or certain shapes are selected?

I looked around the subject a little. I think that after the parts are saved, there is a bigger problem.
Mostly the lower nodes move. I use the NodeHelper mod. I don't say it's perfect, but it's better than nothing.

Link to comment
Share on other sites

On 6/20/2019 at 11:06 PM, Alioth81 said:

Does anyone know a workaround how procedural parts can be used despite the bug with the vanishing/moving nodes?

e.g. does it only happen when certain parts are attached or certain shapes are selected?

Hello! I've done some tests and my experience is that even in version 1.7.0 this problem does not occur. I think it's worth switching back to this.

Link to comment
Share on other sites

when i re root a part placed on a producel tank or at least a docking port in rss ro my game crashes i think someone on github had a similar problem to just curious are you planning on fixing this bug?

Link to comment
Share on other sites

Hey @Tidal Stream have you looked at all into the issue of attach nodes moving on reload?  I've seen several people mention it over the last couple of pages but I haven't seen any response to it yet.  It's been itching my brain for a while and didn't seem to be bothering me too much for a bit, but now it seems I can hardly make any procedural part without it getting wrecked the next time it loads in the editor.  Reverting back to 1.7.0 does seem to calm it a bit, but 1.7.2 is unusable in the current state.  I think I was running 1.7.1 with mixed results for a while. 

I picked at this a little tonight to try and see if recompiling the dll against the assemblies in 1.7.2 would help, but it didn't seem to make a difference at all.  I can reliably replicate the issue by loading up a sandbox game, selecting a Hecs probe core as my root part, slapping a proc liquid tank on top, and adjusting the length of the tank.  Save, leave the VAB, re-enter VAB, and lift the proc tank off.  The nodes will either be on the rim or on the side, and inspecting the nodes with Node Helper shows the orientation is wonky.  

While I mention Node Helper, that is by no means a required mod to see the error here.  I'm testing right now in a clean install with only Proc Parts installed, and still get the issue.  This is also by no means the ONLY way to replicate it, but I've been able to replicate it on every attempt.  Changing the diameter by itself does not always trigger the issue, but moving the length up or down does every time.  

Link to comment
Share on other sites

15 hours ago, Tidal Stream said:

@steddyj I have not responded because there is nothing I can do as I don't play KSP any more. If someone manages to fix this, either fork the repository or submit a pull request, it is open source.

Gotcha.  I thought that might be the case, which is why I tagged you in my comment.  Thanks for taking the time to reply.

Link to comment
Share on other sites

Hey @Tidal Stream - here's the PR that should fix re-rooting bug: 
https://github.com/Tidal-Stream/ProceduralParts/pull/19

 

@Bloodbunny, @Jim123 and everyone - here's the fixed DLL as a temporary fix until proper release (download and replace old DLL in `GameData/ProceduralParts/Plugins` with this one):

https://github.com/whale2/ProceduralParts/blob/reroot-surface-attach-fix/GameData/ProceduralParts/Plugins/ProceduralParts.dll

Edited by whale_2
Link to comment
Share on other sites

2 hours ago, whale_2 said:

Hey @Tidal Stream - here's the PR that should fix re-rooting bug: 
https://github.com/Tidal-Stream/ProceduralParts/pull/19

 

@Bloodbunny, @Jim123 and everyone - here's the fixed DLL as a temporary fix until proper release (download and replace old DLL in `GameData/ProceduralParts/Plugins` with this one):

https://github.com/whale2/ProceduralParts/blob/reroot-surface-attach-fix/GameData/ProceduralParts/Plugins/ProceduralParts.dll

Holy cow! Thanks:0.0:

Link to comment
Share on other sites

I`m getting floating part nodes, any idea why? I've read a few people having problems with attachment nodes in this post but I'm not sure if they are having the same problem as me.

 

https://imgur.com/a/ERMfiFW

Error in logs:
 

[ERR 15:57:09.016] Exception handling event onPartAttach in class ProceduralPart:System.NullReferenceException: Object reference not set to an instance of an object
  at ProceduralParts.ProceduralPart.PartParentChanged (.Part newParent) [0x00000] in <filename unknown>:0 
  at ProceduralParts.ProceduralPart.OnPartAttach (HostTargetAction`2 data) [0x00000] in <filename unknown>:0 
  at EventData`1[GameEvents+HostTargetAction`2[Part,Part]].Fire (HostTargetAction`2 data) [0x00000] in <filename unknown>:0 

[EXC 15:57:09.016] NullReferenceException: Object reference not set to an instance of an object
	ProceduralParts.ProceduralPart.PartParentChanged (.Part newParent)
	ProceduralParts.ProceduralPart.OnPartAttach (HostTargetAction`2 data)
	EventData`1[GameEvents+HostTargetAction`2[Part,Part]].Fire (HostTargetAction`2 data)
	UnityEngine.Debug:LogException(Exception)
	EventData`1:Fire(HostTargetAction`2)
	Part:setParent(Part)
	EditorLogic:attachPart(Part, Attachment)
	EditorLogic:<SetupFSM>m__27()
	KerbalFSM:RunEvent(KFSMEvent)
	KerbalFSM:updateFSM(KFSMUpdateMode)
	KerbalFSM:UpdateFSM()
	EditorLogic:Update()

 

Edited by russ0133
Link to comment
Share on other sites

@whale_2 I checked to see if your update would fix the node issue that myself and several others reported.  Unfortunately it does not.  In my testing I also found an additional bug that your version seems to introduce.  If you modify the dimensions of a part, the position of the part remains the same relative to its center point.  The nodes do update, if you detach and reattach the part it snaps to the right position.  But if you'll need to do this any time you change any of the values.  Any chance you could take a poke at this, and perhaps the other node issue?

@russ0133 that looks like the same issue the rest of us are experiencing.  If you detach that floating tank you will likely find the attachment node is on the edge of the tank rather than in the center, and that it wont connect to anything.  The node is actually pointed in the wrong direction.  Roll back to 1.7.0 or stop using procedural parts until a fix is posted. 

Link to comment
Share on other sites

7 hours ago, steddyj said:

@whale_2 I checked to see if your update would fix the node issue that myself and several others reported.  Unfortunately it does not.  In my testing I also found an additional bug that your version seems to introduce.  If you modify the dimensions of a part, the position of the part remains the same relative to its center point.  The nodes do update, if you detach and reattach the part it snaps to the right position.  But if you'll need to do this any time you change any of the values.  Any chance you could take a poke at this, and perhaps the other node issue?

 

Hmm, tried to fiddle with editor - it seems unclear to me what is desired behavior. I mean, the radially attached part indeed remains at the same position relative to the center point of procedural part, but why shouldn't it?

I'd fix it if I know what has to be fixed.

As of "mode issue" - I'm not sure how to reproduce it. In my 1.6.1 setup I don't see any major issues. Maybe I finally need to build something, lately I was only fixing bugs here and there... 

Link to comment
Share on other sites

2 minutes ago, whale_2 said:

 

Hmm, tried to fiddle with editor - it seems unclear to me what is desired behavior. I mean, the radially attached part indeed remains at the same position relative to the center point of procedural part, but why shouldn't it?

I'd fix it if I know what has to be fixed.

As of "mode issue" - I'm not sure how to reproduce it. In my 1.6.1 setup I don't see any major issues. Maybe I finally need to build something, lately I was only fixing bugs here and there... 

Could you try updating it to work on 1.7.3/x?

Link to comment
Share on other sites

1 minute ago, whale_2 said:

 

Hmm, tried to fiddle with editor - it seems unclear to me what is desired behavior. I mean, the radially attached part indeed remains at the same position relative to the center point of procedural part, but why shouldn't it?

I'd fix it if I know what has to be fixed.

As of "mode issue" - I'm not sure how to reproduce it. In my 1.6.1 setup I don't see any major issues. Maybe I finally need to build something, lately I was only fixing bugs here and there... 

If you're testing in 1.6.1, that may be why you don't see either issue.  The Node issue appears in 1.7.1 and 1.7.2, but rarely if ever in 1.7.0 and earlier.  I've not personally tested earlier versions, but I've heard mentions that it has come up in previous versions, but 1.7.1 broke it entirely.  I listed replication steps in this post above. 

The issue I reported to you was also tested in 1.7.2, I did not try any earlier versions so it may not appear in 1.6.1.  To reiterate, what I'm seeing is if you attach a procedural part - a liquid tank, for instance - to any other part.  Then change the dimensions of that part.  The part stays physically in the same position, its center of mass relative to its parent part.  If you reduce the length, you will see a gap form between it and its parent.  If you increase the length, it swallows the parent.  This can be fixed if you detach the part and reattach, however the normal and expected behavior is that the part updates and moves its attached points as necessary.

Link to comment
Share on other sites

8 hours ago, steddyj said:

If you're testing in 1.6.1, that may be why you don't see either issue.  The Node issue appears in 1.7.1 and 1.7.2, but rarely if ever in 1.7.0 and earlier.  I've not personally tested earlier versions, but I've heard mentions that it has come up in previous versions, but 1.7.1 broke it entirely.  I listed replication steps in this post above. 

The issue I reported to you was also tested in 1.7.2, I did not try any earlier versions so it may not appear in 1.6.1.  To reiterate, what I'm seeing is if you attach a procedural part - a liquid tank, for instance - to any other part.  Then change the dimensions of that part.  The part stays physically in the same position, its center of mass relative to its parent part.  If you reduce the length, you will see a gap form between it and its parent.  If you increase the length, it swallows the parent.  This can be fixed if you detach the part and reattach, however the normal and expected behavior is that the part updates and moves its attached points as necessary.

Ok, got it - I mean I was able to reproduce it in both 1.7.2 and 1.6.1. It should not be related to my fix - there I only touched re-rooting with surface attachment, I didn't even look into the code that handles resize. Gonna look into that now nevertheless.

Link to comment
Share on other sites

11 minutes ago, whale_2 said:

Ok, got it - I mean I was able to reproduce it in both 1.7.2 and 1.6.1. It should not be related to my fix - there I only touched re-rooting with surface attachment, I didn't even look into the code that handles resize. Gonna look into that now nevertheless.

Or maybe I'm wrong. Will fix anyway.

Link to comment
Share on other sites

1 hour ago, whale_2 said:

Appears to be working, though I don't like they way I made it.

Yup, this appears to work when resizing.  The misplaced node issue on reload is still there in 1.7.2, but again that existed before you did anything.  I did notice that it did change the behavior of that issue slightly, however.  Previously when you reloaded the craft and the nodes were shifted, both went to the same side of the part.  With your latest update they go to opposite ends.  Likely nothing, but curious.

I should probably also mention that I hadn't purposely replicated the re-root issue that you were attempting to fix.  However it does occur to me that this is exactly the cause of the crash I had a few days ago which led me to a complete redesign of some small comms probes I was building. That said I did just test re-rooting to a part surface attached to a procedural tank and can confirm that works correctly as well. 

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