Jump to content

[WIP] Infernal Robotics - Next


Rudolf Meier

Recommended Posts

I do have an "unofficial KJR release" that is working with IR Next... for those who are interested...

KJR v3.4.0 (works with 1.3.1 and 1.4)

I've been told that ferram (developer of KJR) is very against unofficial releases, but... sorry, I tryed to contact him, had no luck for the last 2 weeks and I didn't want to wait for such a long time... and I guess those interested in IR Next also don't want to wait

now with that working, I can finally create the joint configuration with the correct spring values and forces

Link to comment
Share on other sites

On ‎06‎.‎03‎.‎2018 at 11:30 PM, AccidentalDisassembly said:

... TweakScale ...

I just wanted to tell you, that we are considering to add values to the cfg file or do other changes that will allow it to controll those values that must be controllable for part-builders... it's just that it's not yet clear which ones that are. It might be mass and electric consumption and maybe also the torque values. It's not that I didn't appreciate or did ignore your tests with scaling...

Link to comment
Share on other sites

1 hour ago, Rudolf Meier said:

I do have an "unofficial KJR release" that is working with IR Next... for those who are interested...

KJR v3.4.0 (works with 1.3.1 and 1.4)

I've been told that ferram (developer of KJR) is very against unofficial releases, but... sorry, I tryed to contact him, had no luck for the last 2 weeks and I didn't want to wait for such a long time... and I guess those interested in IR Next also don't want to wait

now with that working, I can finally create the joint configuration with the correct spring values and forces

Might be a good idea to give it different name, like KJR continued or KJR extended or similar, so people don't get confused what they need/want to download. Later on if changes were adopted in original mod, you might no longer need to maintain it. Or if Ferram does not accept changes, you can continue to develop your own version.

Perhaps other moders and player would also want to try and use your version with improvements ASAP too. Just make sure that you redistribute your version under same lincence as original KJR. It will be a lot of mess until all of mods are re-checked and recompiled for KSP 1.4.

Link to comment
Share on other sites

1 hour ago, Rudolf Meier said:

I just wanted to tell you, that we are considering to add values to the cfg file or do other changes that will allow it to controll those values that must be controllable for part-builders... it's just that it's not yet clear which ones that are. It might be mass and electric consumption and maybe also the torque values. It's not that I didn't appreciate or did ignore your tests with scaling...

No worries! Thank you for the info - that sounds very reasonable, I imagine it will depend on exactly how things end up with the code!

Link to comment
Share on other sites

... those linear limits are still a problem. I cannot set them correctly. That's why I'm still working on it... I do know angular limits pretty well (I worked with them for a long time) but... the idea "linear limits must work like angular limits" ... :P ... forget that... doesn't work... or... I also have the same problem over and over again... it might be, that some link-orders don't work as expected... but I didn't find any documents telling me that this is impossible... :huh: well, that's informatics... but there are not that many possibilities... I try all and find the best... I think I'm working against a rule of unity that I don't know of or that I don't fully understand... I could imagine what it is though

sometimes I make the mistake, that I'm setting a value to 0 and expect that 0 is less than 1e-30, but in fact it's "don't use this value" and therefor enormously strong and things like that... I'm not used to those values

And spring values for x-axis... seem to make everything weak. Means, the piston then starts flexing in y and z axis... I didn't expect that. Either it is that I'm using wrong values... or... if that's normal, I'd have to think about other solutions... *hmm*

oh no... :rolleyes: I know what it is... *haha* ... the joint is moving in x-direction only, but the part where it's attached to is bending... that's why it looks as if the piston is outside the base part of the extendatron... the only thing I dont understand is, why the base isn't rotated then... :) very interesting stuff is going on here...

Edited by Rudolf Meier
Link to comment
Share on other sites

for those using my KJR version...

I wanted to inform you, that there is still a bug (when decouplers are close to IR parts) ... I've fixed it and will upload it soon... just in case you had those problems...

and I'm planing to insert the idea that came up here with removing KJR joints before IR starts moving and reattach them after it stopped... but first I want to test those springs in the joints (unfortunatelly KJR locked them down... that's why I had to investigate this first)

 

Link to comment
Share on other sites

still one problem... the joint is acting too much like a spring, even when locked :P ... with huge load... like 3 orange tanks...

I know why... but I'd need to simulate some KJR effects here... because reinforcing doesn't help much... we don't have parts to connect to, because they must be free to move

sorry... I know, doesn't make much sense for many who are reading this... :P ... and all you want is the next release... me t... also :D 

ups... now the joint was ultra strong... it blew up the launch pad... maybe that's the solution now... it was like a pogo stick with 3 orange tanks... jumping around and blowing up everything... pretty funny

Edited by Rudolf Meier
Link to comment
Share on other sites

There is two different cases with KJR and IR parts. One when you use free moving parts and other when you use only powered IR parts.
In case of powered IR parts, it is desireable to disable KJR on starting to move IR part and enable KJR reinforcements after powered movement is stoped.

However, in case taht you have free moving parts it is more tricky to handle. You can only allow autostruts or KJR reinforcements on parts that are inside of nodes between free moving IR parts.
Let say that parts in bold is reinforced with KJR before you torn on power on powered IR part.

Fixed craft part <-> free IR part <-> some structural part <-> some structural part <-> free IR part <-> some structural part <-> some structural part <-> powered IR <-> rest of craft

After you turn power it should look like this:

Fixed craft part <-> free IR part <-> some structural part <-> some structural part <-> free IR part <-> some structural part <-> some structural part <-> powered IR <-> rest of craft

However, it might be tricky to find out what are branches and parts that are allowed to be reinforced and what not.

That wing folding mechanizm that I send you might not be the best possible case, as some of joints should be limited how much it is allowed to move in one direction. Whole thing need some more tweaking with proper angles and distances before it can be useful for craft. So, it would be best to use just extendratron and hang some weight on it to determine right values for torque and spirng/damper joints. Having no spring/damper values at all, or being set to zero or something is fine for powered extendratron, currently they got reasonable oscilation when you want to use it as shock absorber (with some tweaking of values).

There is one other possible issues regarding KJR and landing legs from Roverdudes USI MKS mod. There is saome landing legs in his mod that have option to attach craft to ground (thetered on/off on part menu in flight). It can be used only when craft is landed and legs are extended. Quite useful option, to prevent craft sliding whem you land on sloped terain. But it might cause issues similar as you found with launch clamps. Have yet to test this in game to see if there is issue with i tor not.

Meanwhile, there is small issue with symmetry regarding free rotatrons. When I set 90 degree on original part I need to set -90 on mirrored part to have them both in desired direction.
Pivotron on the other hand performs much better than in old IR plugin, when I set them to 90 degree or other angle, on mirrored part those rotate in proper direction with same +90 degree.

And another small bug when IR parts right click menu stops to be responsive on user input in flight scene, similar like it was in SPH/VAB in previous IR plugin version.

Link to comment
Share on other sites

29 minutes ago, kcs123 said:

However, it might be tricky to find out what are branches and parts that are allowed to be reinforced and what not.

That's true... that's why I added the IKJRaware interface and I think I will add a callback interface that parts can use to inform KJR about the start of a movement. But... that's just an idea for the moment... I think it works well enough for now.

5 minutes ago I was thinking about starting a new mod that could replace KJR completely. I don't know if it can work, but I will try it now for IR-joints and in case it works, then I only need a name for it... :P

29 minutes ago, kcs123 said:

Meanwhile, there is small issue with symmetry regarding free rotatrons. When I set 90 degree on original part I need to set -90 on mirrored part to have them both in desired direction.
Pivotron on the other hand performs much better than in old IR plugin, when I set them to 90 degree or other angle, on mirrored part those rotate in proper direction with same +90 degree.

*hmm* ... I never tryed to mirror a part :rolleyes: I guess there are some bugs... I will try those you mentioned

29 minutes ago, kcs123 said:

And another small bug when IR parts right click menu stops to be responsive on user input in flight scene, similar like it was in SPH/VAB in previous IR plugin version.

That's interesting... is it with specific values or with all? ... oh, I see... when you go to 0 for speed and torque... yes, that's a bug...

Edited by Rudolf Meier
Link to comment
Share on other sites

1 hour ago, Rudolf Meier said:

5 minutes ago I was thinking about starting a new mod that could replace KJR completely. I don't know if it can work, but I will try it now for IR-joints and in case it works, then I only need a name for it... :P

First tests show promising results... it could work. And I've found 2 possible names "Relative struts to nowhere (RSTN)" or "The magenta mass points (TMMP)" :D ... no, just kidding... but I will continue this project and see if it will be a solution to the limits we still don't have in IR... that's why I don't have a new release... everything is so... weak, strange, spring-like... or enormously rigid... that's all not really useful

... I think the next version will be ready NET next monday...

oh and, the gui bug is fixed (min values lower than 0.05 are not a good idea in KSP... that crashes those gui parts... obviousely... I did put them to 0.05 now) ... will be in the next release.

But I didn't check out which joints are wrongly inverted...

Link to comment
Share on other sites

13 hours ago, Rudolf Meier said:

First tests show promising results... it could work. And I've found 2 possible names "Relative struts to nowhere (RSTN)" or "The magenta mass points (TMMP)" :D ... no, just kidding... but I will continue this project and see if it will be a solution to the limits we still don't have in IR... that's why I don't have a new release... everything is so... weak, strange, spring-like... or enormously rigid... that's all not really useful

Hmm. How about adding per part on right click menu to disable KJR on that part ? like you can enable/disable stock autostrut option ? That and ability to visualise KJR autostrut or reinforcment joint whatever it is called like it is possible to visualise stock autostrut might help people with this. So, only in special case scenario where someone use free moving parts or something similar where it is not desired to have autostrut user can disable it. In all other cases it can be enabled KJR on parts by default.

That would also simplify usage when you disable/enable KJR autostruts before powered IR movement and enabling again after powered IR movement is finished.

Well, no rush with anything. Do you already have some close to be good values for torque/spring forces that I can try to tweak further for myself ? I can try to mess with it as long as it does not require plugin rebuild/change to try finding out what would behave reasonable enough in game.

Link to comment
Share on other sites

3 hours ago, kcs123 said:

That would also simplify usage when you disable/enable KJR autostruts before powered IR movement and enabling again after powered IR movement is finished.

Maybe I didn't post this in this forum, but I think this problem can be solved with the next version of the new callback interface I added. The thing I'm investigating currently is more how reinforcement works internally and how we can do it in a much easier way than KJR does it. Disabling and reenabling the reinforcement ist pretty difficult if we stay with KJRs solution and after all KJR is quite performance demanding. I might have an other solution for that. The idea came from a possible solution I'm developing for the IR joint limits.

3 hours ago, kcs123 said:

Do you already have some close to be good values for torque/spring forces that I can try to tweak further for myself ?

Unfortunatelly not. I'm currently still evaluating different systems. The numbers come later...

Link to comment
Share on other sites

I have now a joint with strong limitations... at least I think I have... I'm now testing it... when it's ok, then I will put it online, so that you can try it (but it's only ment for a special limit test, other stuff might not work anymore... there's a lot of experimental code in this one... it's some kind of "pathfinder")

ok... tested... was better than I thought

http://meiru.square7.ch/reg554ui9wert/InfernalRobotics_limittest.zip

I did this: hang 1-3 orange tanks on an extendatron, then... watch :) ... after that report and discuss :P

oh, what was the goal? the goal was, that an extendatron cannot be pulled or pushed to positions outside it's limitations (0 - 2.4)

and I think, it's also a proof of concept, that my joint reinforcements work... I still need to verify things, that's clear... maybe I do have problems I didn't see now... but currently I think, it may work

Edited by Rudolf Meier
Link to comment
Share on other sites

Description of link say that file name should be "InfernalRobotics_limittest.zip", but in true link is "KerbalJointReinforcement_special.zip". dll file inside are for KJR, not IR. Shouldn't that be IR plugin ?

Anyhow, I developed sligtly better mechanizm for folding wings, almost finished with whole plane to test it. Works quite promissing even with weak joints.

 

Link to comment
Share on other sites

2 minutes ago, kcs123 said:

Description of link say that file name should be "InfernalRobotics_limittest.zip", but in true link is "KerbalJointReinforcement_special.zip". dll file inside are for KJR, not IR. Shouldn't that be IR plugin ?

ups... no, that's wrong... the link is correct now

Link to comment
Share on other sites

All right. Now I just discovered that I have two plugins with same name but in different folders and with different time stamp.

"KerbalJointReinforcement_Redist.dll" is inside KJR folers plugin, but also in MagicSmokeIndustries plugin folder. I assume that at least one is missplaced, but I didn't noticed too much misbehaviour due to duplicates. Have yet to test latest IR test version plugin.

Edited by kcs123
Link to comment
Share on other sites

3 minutes ago, kcs123 said:

"KerbalJointReinforcement_Redist.dll" is inside KJR folers plugin, but also in MagicSmokeIndustries plugin folder. I assume that at least one is missplaced, but I didn't noticed too much misbehaviour due to duplicates. Have yet to test latest IR test version plugin.

no, that's correct... those are not plugins but dependencies of the plugin-dlls

Link to comment
Share on other sites

13 minutes ago, Rudolf Meier said:

no, that's correct... those are not plugins but dependencies of the plugin-dlls

Ah, OK then. Nothing was broken so I have left them in place.

2 hours ago, Rudolf Meier said:

I did this: hang 1-3 orange tanks on an extendatron, then... watch :) ... after that report and discuss :P

I'm not good with numbers, so I hang 5 orange tanks. Just slight oscilations, but returned quickly to exact limit. With some more reasonable weight it stops on exact spot where it need to be.

And another observations from SPH, when you tweakscale extendratron joints jumps all over the place, can't attach properly rescaled parts. Just something to consider when you going to pack another full version. Otherwise, you are really on something.

Link to comment
Share on other sites

4 minutes ago, kcs123 said:

I'm not good with numbers, so I hang 5 orange tanks. Just slight oscilations, but returned quickly to exact limit. With some more reasonable weight it stops on exact spot where it need to be.

Yes, but it's not the joint that is overshooting... it's the joint that connects your tank with the extendatron! :) ... unfortunatelly I don't know if we can use this solution. I found another problem that could be a little bit a show stopper here...

5 minutes ago, kcs123 said:

And another observations from SPH, when you tweakscale extendratron joints jumps all over the place, can't attach properly rescaled parts.

That's interesting... maybe I should reset the scale to default when they are detached... or... maybe there's other options...

Link to comment
Share on other sites

*hmm* ... everything is locked in space when I use my new solutions... that's... not really nice :-) need to find out what's wrong here... some bugs are still in this mod... I can lock down a rocket by adding a part with the weight of almost nothing... :) ... I hate when this happens... :mad:

Edited by Rudolf Meier
Link to comment
Share on other sites

8 hours ago, Rudolf Meier said:

That's interesting... maybe I should reset the scale to default when they are detached... or... maybe there's other options...

Previous "working" version of IR next worked properly, I only noticed issue with this experimental test version. So, probably not big deal, but something to check out before compiling final build.

Link to comment
Share on other sites

9 hours ago, kcs123 said:

Previous "working" version of IR next worked properly, I only noticed issue with this experimental test version. So, probably not big deal, but something to check out before compiling final build.

I will check that out... my test also showed, that it often works with scales parts... I will try to find the reason for the problem

... other thing... joints and it's strength. I'm currently reading something about it and doing more experiments. I will report when I have found something useful for IR.

But as far as I can see... there isn't much we can do to "help" the unity solver... KJRs solution seems to be the only one that works. "borrowing the mass from other parts" is the only way that seems to work... but this doesn't work so well for movable joints... at least not with modifications.

In case that I will agree with the fact, that the only mass usable is the mass of the parts (takes a while until I stop searching other options)... then I will work on a solution based on this... at least I seem to understand the algorithms now (and, KSP 1.4 seems to offer more options here... that's something I already found out)

Edited by Rudolf Meier
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...