Jump to content

[1.4+] BETA: Kerbal Attachment System (KAS) v1.0 Release Candidate 1


IgorZ

Recommended Posts

@Burning Kan I use TAC Fuel Balancer to transfer resources and I haven't had problems transferring over a RTS-1 connected while docked. I've only used the KAS GUI undocked since that's the only way to transfer resources undocked.

@IgorZ Autostruts are my problem. I have a base on Minmus. I deployed it for a contract before I had some of the tech nodes unlocked that I would have preferred, so it's underpowered for night time. I sent up a mining rover for a later mining contract that has a nuclear reactor on board that can power everything through the night for decades. So, I figure I'll just connect up the RTS-1 between the base and rover and that will solve my power problems. This is when I ran into docked mode locking the two vessels together. This was also the first time I'd tried using the RTS-1 in docked mode, so I thought it just behaved this way which prompted my previous post, my apologies for not realizing it was supposed to behave differently. 

1st Screenshot in UNDOCKED mode: Autostruts shown from the debug menu. Squad has wheels set to Autostrut to Heaviest Part and it's locked so the user can't change it. Those are the only autostruts in use on any of the parts.

18vop5E.png

2nd Screenshot in DOCKED Mode:  The autostruts have shifted to link the wheels of my rover to the base and that's my problem, not the RTS-1. To test this further I set up the light pole to the far left. It was not attached to the surface and the RTS-1 was set to docked so it has power running to it. I was able to kick it around like a soccer ball with a Kerbal and the RTS-1 accommodated the motion like you said it should and the lights stayed on. To me this is a problem with the default game behavior and not anything specific to the KAS parts. 

The other case where I've run into the KAS parts appearing to lock positions was in zero-g. Occasionally I'll send a ship out to retrieve spent boosters that still have some LFO in them and bring those back to the space station and transfer the fuel to the station. I intentionally use autostruts frequently on booster stages and on the space station, so I think the autostruts are jumping across the vessels when I switched to docked mode to use TAC Fuel Balancer to transfer resources. I still need to test this the next time I do go retrieve a fuel tank. 

IjUwx1X.png

Link to comment
Share on other sites

17 hours ago, Burning Kan said:

but not the lf/ox in docked Mode of course Maybe that the reason for the GUI

In the docked mode the RTS features are disabled. Whatever you do in the docked mode, you do it via the stock interface. Sure enough, the fuel mixtures are not supported there. Sorry, but RTS is not designed to move resources between the parts, it's designed to move them between the vessels. I'd love to improve the resource transfer between the parts too, but at this moment I don't see how it can be done :(

17 hours ago, Burning Kan said:

Maybe u can think about ec need for the screwdriver too (just when attach/detach), i know it would be a Kind of micromanagement

Indeed, it would be a micromanagement. Let's admit the truth - we play for fun :)  If the feature is not fun, then it's a bad feature. Kerbals don't have EC resource naturally, so inventing one and introducing it only for the screwdriver seems to be not a cool feature.

15 hours ago, Tonka Crash said:

To me this is a problem with the default game behavior and not anything specific to the KAS parts.

There are good and bad news here. Good: since it's stock, I can investigate it - thanks for your input! Bad: many stock things just cannot be fixed due to how they are implemented :(

And here are some of my RTS-1 experiments. Did you know you can refuel a vessel in the flight?

jtKvTQf.jpg

Link to comment
Share on other sites

@Tonka Crash thx for the tip,I tryed few times and think its more for people who Play with the rss ressources,and 2th i like to Player with little mods as possible (witch is very Hard with so many Incredible good mods like this)

@IgorZof course ksp is for fun and orbital mechanic education, 

5 hours ago, IgorZ said:

Kerbals don't have EC resource naturally

Yes sadly ,would like when squad add EC to Eva kerbals with the New suit and the helmetlight or fuelpumps,cabinlights needs EC too

And i meant not the kerbal should have EC the electricscrewdriver should

But that just my opinion,and I total understand that other players Play different

Just Info, i belive that EC is the most important ressource for the next decades  so in my World nothing should Run without it like in real life,for this reason i create Emblem mod*witch adds EC to kerbals and screwdriver.

Maybe i can do a mm Patch for my needs,witch would say that moduleKisitemattachtool needs ec and when no ec allowpartattach is disabled or enabled,but think the Module is not made for it,sadly.

And as always thanks for your answer and the wonderfuel must have mods

BK

*https://forum.kerbalspaceprogram.com/index.php?/topic/174462-emblemevamagnetic-boots-light-eva-mechjeb-evastuffprealpha/

 

 

Link to comment
Share on other sites

@IgorZ I did some testing in zero-g. I went to retrieve an adrift fuel tank from an old booster.  I sent an engineer out and stripped all the parts from the tank, so I was only dealing with the one part.

The tank had autostrut grandparent set from when it was launched. The ship with the RTS-1 had no autostruts enabled anywhere. When I connected the RTS-1 and turned the connection to docked, the autostrut jumped to the RTS-1 and the tank was rigidly fixed relative to my ship. Rotating my ship rotated the tank with it. Turning autostruts off on the tank and I could maneuver relative to the tank and the RTS-1 changed length as needed.

I know the Dock Rotate mod does something to turn off autostruts across docking ports when its rotation mode is enabled on a docking port. My thought is the RTS-1 should do something similar when it's connected.

Link to comment
Share on other sites

13 hours ago, Tonka Crash said:

@IgorZ I did some testing in zero-g. I went to retrieve an adrift fuel tank from an old booster.  I sent an engineer out and stripped all the parts from the tank, so I was only dealing with the one part.

The tank had autostrut grandparent set from when it was launched. The ship with the RTS-1 had no autostruts enabled anywhere. When I connected the RTS-1 and turned the connection to docked, the autostrut jumped to the RTS-1 and the tank was rigidly fixed relative to my ship. Rotating my ship rotated the tank with it. Turning autostruts off on the tank and I could maneuver relative to the tank and the RTS-1 changed length as needed.

I know the Dock Rotate mod does something to turn off autostruts across docking ports when its rotation mode is enabled on a docking port. My thought is the RTS-1 should do something similar when it's connected.

Thanks for the testing. I've created an issue to track the bug. I'm now trying to reproduce this issue on the launchpad, using the pristine game and KAS. I'd appreciate if you could help here. Once the issue is reproduced, it can be fixed in 99.9% of times.

UPD: Nevermind. I had it reproduced. Thanks a lot for your patience and the help in testing! This issue will be fixed in RC2.

Edited by IgorZ
Link to comment
Share on other sites

@IgorZ Thanks for looking into this. 

I do have a feature request. Could the legacy ground pylon migrate to this KAS 1.0? I don't think it needs any changes, but I would hate to lose it as a part when the legacy items go away. Currently it's the only legacy part I use. Mainly as a distribution point to extend the reach of RTS-1 connections around bases. The KIS concrete base could replace it in a pinch, but the KAS part is better looking when you don't have parts stacked on it. 

Link to comment
Share on other sites

On 8/12/2018 at 7:33 AM, IgorZ said:

Can you reproduce it on a presstine game (not other mods except KAS)? I'd try to debug a savegame.

The physics in the game is sometimes very unpredictable. I can imagine it happens. However, to debug it, I need a reproducible case. Can you make one using the pristine game?

I tried to remove everything from GameData, but that broke my game. How do I create a pristine game?

As for exploding, I was able to reproduce it with a docking port: I grab it and then drop it in the default position. Most of the times, it falls down a little bit (after a couple of seconds of delay which I have every time doing something in KAS - is that normal?), then it blows up. If I turn it around and lift it up a little before dropping it, it doesn't explode.  I think it has to do with the fact that docking ports go a little bit inside the vessel they're attached to. The same is true for the MKS "Ranger" parts that keep exploding. "Entirely solid" parts seem much more stable.

As for jumping up, it always happens when I place a part over some Kerbals standing around in order to carry it. I had a big ore tank with 2 radiators attached to it. In the default position for dropping, it laid on its side. When turning it, it was halfway underground, and it was not possible to lift it up high enough. But after pressing R in order to select the top or bottom node before dropping, it did not jump, or only a little bit.

On 8/12/2018 at 7:33 AM, IgorZ said:

"Attaching parts" in 99% of times is a KIS responsibility. The KAS legacy hooks are indeed broken in RC1(I'm glad you've reported it, I though I'm the only one who have noticed). However, the side mods are not expected to be affected, since they are not aware of the KAS 1.0 RC1 :) They simply cannot use the new functionalitylity.

Again, this usually happens with small "Ranger" parts from MKS which only have 1 attachment point (e.g. attaching a Ranger Agriculture module to one of the Duna modules). KAS seems to invert the direction of the attachment point when the part only has a single one.

Link to comment
Share on other sites

@infinite_monkey You need to leave the Squad and Squad Expansion (if you have the Making History DLC) directories for the basic game. These contain all the stock game assets. Next you'll need to keep any mods required to test your problem.  I usually strip GameData down to just the Squad directories and use CKAN to add back in the mods causing problems to make sure I capture any dependencies.

Link to comment
Share on other sites

3 hours ago, infinite_monkey said:

I tried to remove everything from GameData, but that broke my game. How do I create a pristine game?

Yeah, don't do that :/.  As @Tonka Crashsaid, that destroys the game.  If you ever need to start fresh clear out everything except those two directories.

If you got the game from Steam, re-download the game into a new directory.  Alternatively, get it to validate/verify the game folder contents; it'll download what it needs to rebuild.  Immediately copy that directory on your machine so you always have a pristine, local install, and modify and play only the copy.  This is legal to do.

If you got the game from somewhere else, I'm sure the process is similar, but Steam is what I know.

Link to comment
Share on other sites

14 hours ago, Tonka Crash said:

@IgorZ Thanks for looking into this. 

I do have a feature request. Could the legacy ground pylon migrate to this KAS 1.0? I don't think it needs any changes, but I would hate to lose it as a part when the legacy items go away. Currently it's the only legacy part I use. Mainly as a distribution point to extend the reach of RTS-1 connections around bases. The KIS concrete base could replace it in a pinch, but the KAS part is better looking when you don't have parts stacked on it. 

Good point! Being focused on the active parts, I've completely forgot about the pylon. It will be included into RC2. I've created a tracking issue.

11 hours ago, infinite_monkey said:

I tried to remove everything from GameData, but that broke my game. How do I create a pristine game?

You should not remove all the stuff from this folder. Only remove the extra mods folders. If you're unsure how to do it, simply drop the whole folder an use the Steam's option "Verify Integrity" feature - it will restore the stock files. What I do, is keeping a backup of the original folder for the tests. So when I need to revert to a pristine game, I simply rename the folders.

11 hours ago, infinite_monkey said:

As for exploding, I was able to reproduce it with a docking port: I grab it and then drop it in the default position. Most of the times, it falls down a little bit (after a couple of seconds of delay which I have every time doing something in KAS - is that normal?), then it blows up. If I turn it around and lift it up a little before dropping it, it doesn't explode.  I think it has to do with the fact that docking ports go a little bit inside the vessel they're attached to. The same is true for the MKS "Ranger" parts that keep exploding. "Entirely solid" parts seem much more stable.

As for jumping up, it always happens when I place a part over some Kerbals standing around in order to carry it. I had a big ore tank with 2 radiators attached to it. In the default position for dropping, it laid on its side. When turning it, it was halfway underground, and it was not possible to lift it up high enough. But after pressing R in order to select the top or bottom node before dropping, it did not jump, or only a little bit.

These are the KIS issues. Let's move this discussion into the appropriate thread? The other people may have the same issues as you do, and it would be beneficial for everyone to have the conversation in one place.

Link to comment
Share on other sites

10 hours ago, IgorZ said:

These are the KIS issues. Let's move this discussion into the appropriate thread? The other people may have the same issues as you do, and it would be beneficial for everyone to have the conversation in one place.

OK, no problem. Should I repost there?

I thought KIS is only for inventory, whereas the "A" in KAS means attachment...

Link to comment
Share on other sites

On 8/27/2018 at 7:44 AM, infinite_monkey said:

OK, no problem. Should I repost there?

Yes, repost it there, please. And, afaik, the exploding thing was discussed there couple of times already.

On 8/27/2018 at 7:44 AM, infinite_monkey said:

I thought KIS is only for inventory, whereas the "A" in KAS means attachment...

KAS deals with vessels attachments, and KIS deals with the parts assemblies. While they both "attach" something, they do it completely different and for the different purposes.

Link to comment
Share on other sites

On 8/26/2018 at 9:28 PM, IgorZ said:
On 8/26/2018 at 7:07 AM, Tonka Crash said:

@IgorZ Thanks for looking into this. 

I do have a feature request. Could the legacy ground pylon migrate to this KAS 1.0? I don't think it needs any changes, but I would hate to lose it as a part when the legacy items go away. Currently it's the only legacy part I use. Mainly as a distribution point to extend the reach of RTS-1 connections around bases. The KIS concrete base could replace it in a pinch, but the KAS part is better looking when you don't have parts stacked on it. 

Good point! Being focused on the active parts, I've completely forgot about the pylon. It will be included into RC2. I've created a tracking issue.

Well, after some thoughts and closer investigations, I figured out the design of this part (pylon) is not really good. First of all, it's not physical - its volume is overridden to 150L, but its real size is approximately 1000L. Not being physical is big red sign "STOP" for the parts design in the new KAS. Second, this doesn't give much benefits other than offering yet another structural element. FWIW, KIS offers a concrete base which looks differently, but other than that gives the same abilities.

So, I started thinking on an advanced design of a part for the pylon. Ideas:

  1. Add small reserve of electricity (a battery, that is) inside the pylon + a very basic control module which can work in the hibernate mode. This would allow attaching winches that will be controllable via a remote UI (it only works with the parts on a controllable vessels).
  2. Make a model with 4 JS-1 ports integrated into the pylon. After all, the pylon is usually used to extend the pipes, so we can reduce the parts count a bit.
  3. Add 4 stack attach nodes at the top to make stronger connections.
  4. The volume override will be removed altogether. Indeed, it will result in inability to carry the part in the kerbal's backpack, but we can make it carriable. The size of the model will need to be reduced, though. In the end, we may have several variations of different sizes (portable & carriable vs large and static).

While I'm working on these ideas and trying designs, you may offer your own ideas.

Edited by IgorZ
Link to comment
Share on other sites

Being able to stuff it in the Kerbal's backpack isn't a big problem, I don't think I've ever tried. Slung on his back like a SC-62 container would be just as good to me. I usually just leapfrog it along the ground to where I want to place it. I do like the idea of integrated JS-1 ports. 

Link to comment
Share on other sites

I like the idea with both 4 ports in the bottom, being able to attach and control winches plus a top stack node to build upwards. Perhans for adding large solarpanel array on a iron girder.

I usually scatter some of mks light-in-a-box as they light up really good and look nice too.

Edit, i'll make some images tonight of my usual designs.

 

Edit2: Image of concrete base with ports, lights and RTS.

https://imgur.com/FSvPdSz

 

I also have some scattered around where i build the DIY kits from GC2, to drag them away from the factory.

I use a tiny rover with claw, attached to a winch on the back secured to a concretebase.

 

 

I also used the bases as anchors for the cable-braces when i need to stand something long/heavy up from laying on the side.

Pulling with a crane from the other side.

Edit3; Anchor the payload to stand up; https://imgur.com/XMVILfw

Access the port and connector: https://imgur.com/pGsf84E

Anchor the rover and stand back while winchin the tower to it's feets... https://imgur.com/hAIS2EO

Edited by mrstoned
Link to comment
Share on other sites

  • 2 weeks later...

I think I found a bug. I had a carrier with 2 airplanes on it, the first 1 was connected to the carrier with a W-50 winch+socket. When I flew away with the second plane,  after getting outside of the physics range (2.5 km) NullReferenceExceptions started popping up in the log (https://www.dropbox.com/s/wunvpaa6ajwpsq5/KSP.log?dl=0):

NullReferenceException
    UnityEngine.Transform.get_position ()
    KAS.KASLinkSourcePhysical.OnSave (.ConfigNode node)
    PartModule.Save (.ConfigNode node)
    ProtoPartModuleSnapshot..ctor (.PartModule module)
    ProtoPartSnapshot..ctor (.Part PartRef, .ProtoVessel protoVessel)
    ProtoVessel..ctor (.Vessel VesselRef)
    Vessel.Unload ()
    Vessel.Update ()

F5 stopped working at this point which is very strange.

I reloaded and disconnected the first plane from the carrier, then I could flew away with the second one without the errors and I could F5 too.

I only have KAS and ModuleManager installed.

 

Link to comment
Share on other sites

Just wanted to share this...

I'm just starting to use KAS+KIS. I tried them out a few weeks ago. However, last week, after downloading the latest versions of KAS and KIS, I noticed that I can no longer stack the sockets and hooks in both current and legacy parts.

After much time searching, I found out that KIS allows other mods to override its stackable item logic. So I changed GameData\KAS\Patches\MM-KIS.cfg to add the section in bold below to force KIS to allow stacking of the affected parts. I didn't bother adding the legacy parts because they're deprecated.

KAS already defines the stackable items in the @StackableModule portion. However, KIS has its own checks that ignored that. Hence, the need to override those checks.

@KISConfig:AFTER[KIS]:NEEDS[KAS]
{
    @StackableModule
    {
        moduleName = KASLinkTargetBase
    }
    @StackableItemOverride
    {
        partName = KAS.CH1
        partName = KAS.JS1
    }

}

 

Link to comment
Share on other sites

On 9/11/2018 at 2:00 PM, _TG_ said:

I think I found a bug. I had a carrier with 2 airplanes on it, the first 1 was connected to the carrier with a W-50 winch+socket. When I flew away with the second plane,  after getting outside of the physics range (2.5 km) NullReferenceExceptions started popping up in the log (https://www.dropbox.com/s/wunvpaa6ajwpsq5/KSP.log?dl=0):


NullReferenceException
    UnityEngine.Transform.get_position ()
    KAS.KASLinkSourcePhysical.OnSave (.ConfigNode node)
    PartModule.Save (.ConfigNode node)
    ProtoPartModuleSnapshot..ctor (.PartModule module)
    ProtoPartSnapshot..ctor (.Part PartRef, .ProtoVessel protoVessel)
    ProtoVessel..ctor (.Vessel VesselRef)
    Vessel.Unload ()
    Vessel.Update ()

F5 stopped working at this point which is very strange.

I reloaded and disconnected the first plane from the carrier, then I could flew away with the second one without the errors and I could F5 too.

I only have KAS and ModuleManager installed.

 

Could you please help me reproducing this bug? How can I reproduce it without making carriers and all the stuff? Tried to play with different things but was unable to reproduce it. For the code, I see a way how it can happen. However, I don't see the circumstances.

On 9/11/2018 at 2:53 PM, bcqJC said:

Just wanted to share this...

I'm just starting to use KAS+KIS. I tried them out a few weeks ago. However, last week, after downloading the latest versions of KAS and KIS, I noticed that I can no longer stack the sockets and hooks in both current and legacy parts.

After much time searching, I found out that KIS allows other mods to override its stackable item logic. So I changed GameData\KAS\Patches\MM-KIS.cfg to add the section in bold below to force KIS to allow stacking of the affected parts. I didn't bother adding the legacy parts because they're deprecated.

KAS already defines the stackable items in the @StackableModule portion. However, KIS has its own checks that ignored that. Hence, the need to override those checks.

@KISConfig:AFTER[KIS]:NEEDS[KAS]
{
    @StackableModule
    {
        moduleName = KASLinkTargetBase
    }
    @StackableItemOverride
    {
        partName = KAS.CH1
        partName = KAS.JS1
    }

}

KAS.JS1 is stackable. If it's not in your game, it means some other mod is adding an incompatible module to this part (e.g. kOS).

A new pylon. It has only one port (technical limitation). However, it has battery inside and a limited control module!

2Ky6ZG4.jpg

Link to comment
Share on other sites

On 9/15/2018 at 12:16 AM, IgorZ said:

KAS.JS1 is stackable. If it's not in your game, it means some other mod is adding an incompatible module to this part (e.g. kOS).

My apologies mate, for sending you on a wild goose chase. To make up for it, I tracked down the offending mod. It was FMRS. The MM patch for FMRS was adding module FMRS_PM to all parts...

@PART[*]
{
    MODULE
    {
        name = FMRS_PM
        parent_vessel = 0
    }
}

And KIS doesn't like that somehow. So I placed the override in the FMRS MM patch instead.

Thanks.

 

Link to comment
Share on other sites

On 9/15/2018 at 9:16 AM, IgorZ said:

Could you please help me reproducing this bug? How can I reproduce it without making carriers and all the stuff? Tried to play with different things but was unable to reproduce it. For the code, I see a way how it can happen. However, I don't see the circumstances.

 

Sorry, here is a clean save file where I reproduced the issue:

https://www.dropbox.com/s/zst5llyb79r4y8f/KAS Test.zip?dl=0

Just fly away with the plane and after passing 2.5 km from the two connected base parts, the issue happens (at least for me)

Link to comment
Share on other sites

10 hours ago, _TG_ said:

Sorry, here is a clean save file where I reproduced the issue:

https://www.dropbox.com/s/zst5llyb79r4y8f/KAS Test.zip?dl=0

Just fly away with the plane and after passing 2.5 km from the two connected base parts, the issue happens (at least for me)

Thanks a lot! I was able to reproduce the bug. Indeed, we won't go into production with such a severe issue.

Link to comment
Share on other sites

14 hours ago, IgorZ said:

Thanks a lot! I was able to reproduce the bug. Indeed, we won't go into production with such a severe issue.

Cool, thanks for looking into it. I'm happy I don't need to rebuild my carrier :) 
There is another strange thing I noticed, when I connect 2 ships with RTS-1 in undocked mode,  and open the transfer GUI, it can't see fuel tanks past non-crossfeedable parts.

Examples:

-if the RTS-1 is on an i-beam, it won't see any fuel tanks on the source ship

-if there are any fuel tanks on the target ship which are connected to the rest of the ships with panels or ibeams, the transfer gui will not see them.

Is this expected, or it should work similar to stock fuel transfer and ignore non-crossfeed parts?

Example save file: https://www.dropbox.com/s/uowkrj7yiutslxm/KAS Fuel Test.zip?dl=0

Related topic,  the 20 max transfer limit in the GUI is a little bit slow for big ships, are there any plans to increase it?

 

Link to comment
Share on other sites

7 hours ago, _TG_ said:

Is this expected, or it should work similar to stock fuel transfer and ignore non-crossfeed parts?

In terms of transferring fuel, RTS-1 part is fully relying on the stock game core. When GUI is rendered, the part asks its parent part  for the available fuel sources, and they are presented in the dialog. However, it's interesting question how the game implements the "obey crossfeed rules" setting. My expectation was that the game does it "out the box", but may be it's the other way around, and the violating fuel sources are added above the main logic. As a side note, in many of my tests I wa sable to do the resources transfer between the restricted stock parts even though the "obey crossfeed" setting was ON. What is the mode of your game?

Link to comment
Share on other sites

11 hours ago, IgorZ said:

In terms of transferring fuel, RTS-1 part is fully relying on the stock game core. When GUI is rendered, the part asks its parent part  for the available fuel sources, and they are presented in the dialog. However, it's interesting question how the game implements the "obey crossfeed rules" setting. My expectation was that the game does it "out the box", but may be it's the other way around, and the violating fuel sources are added above the main logic. As a side note, in many of my tests I wa sable to do the resources transfer between the restricted stock parts even though the "obey crossfeed" setting was ON. What is the mode of your game?

"obey crossfeed" was OFF for me, (i totally forgot about this option :))

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...