Jump to content

[1.1.2] Kerbal Inventory System (KIS) 1.2.12


KospY

Recommended Posts

Is there a way for kerbals to carry KIS containers on their backs like the KAS ones? I'd like my kerbals to be able to pick up a container from a supply ship and move it onto the other end of a station if necessary.

Or move a container from it's spot on a rover to a worksite.

Also, EPL REALLY has some issues with KIS, lol.

I got this after I tried dropping the stakes down after I grabbed them using the KIS system. Tried putting one back using the KAS system and still broken, going to try *explosions while typing* Okay, two of them that I left on the ground exploded, I think I'll just grab a fresh set.

What I was trying to do is use EPL to build a small storage structure along with the tools in one of the containers (hopefully that works with EPL) rather than send a supply drone with the tools.

screenshot7_zpsxoiyjger.png

Edited by smjjames
Link to comment
Share on other sites

Congrats on release. I'm a big fan of KAS and now KIS too it seems. I've been following the development of KIS for quite some time and now I can't wait to finally try it!

Link to comment
Share on other sites

@Raptor831,

For containers only, try something like this (with a 40 KAS units = 1 cubic meter of KIS volume), I haven't tested it yet (I'm working on mount points) and it probably needs balancing.

Do it only if you don't have any KAS containers on active ships.

Latest MM config here

Edited by EthanKerbman
MM config correction
Link to comment
Share on other sites

I'm looking forward to portable KIS science devices and the like, the scientist Kerbals' analogue to the engineers' tools in this first release.

I suggested something like that here: http://forum.kerbalspaceprogram.com/threads/77669-wip-0-23-5-A-E-V-A-%28Actual-Extra-vehicle-Activity%29?p=1114876#post1114876

Thermometers, pH meters (for ocean use), weather stations, theodolites, telescopes and binoculars (possibly with IVA!), sample storage boxes (I believe there's a mod for that already), seismometers, rock drills and hammers....

I'm also thinking about stuff like climbing gear, rope/pitons/crampons etc...and it's guaranteed someone will do a fishing rod. One-use decals could be fun.

Link to comment
Share on other sites

@Raptor831,

For containers only, try something like this (with a 40 KAS units = 1 cubic meter of KIS volume), I haven't tested it yet (I'm working on mount points) and it probably needs balancing.

Do it only if you don't have any KAS containers on active ships.


// Modify all parts with a KAS container, after everything
@PART
[*]:HAS[KASModuleContainer]:FINAL {
@MODULE[KASModuleContainer] {
// Create KIS maxVolume and set it to the container's KAS capacity
maxVolume = #$/MODULE[KASModuleContainer]/maxSize$
// Converts the volume to KIS cubic meters, change that to better balance
maxVolume /= 40
// Removes the KAS capacity
!maxSize = dummy
// Removes a KAS only parameter
!maxOpenDistance = dummy
// Sets KIS default behaviours
externalAccess = true
internalAccess = false
slotsX = 6
slotsY = 4
slotSize = 50
itemIconResolution = 128
selfIconResolution = 128
// Replace sounds, there is probably a cleaner way to proceed
openSndPath = #$/MODULE[KASModuleContainer]/sndOpenPath$
!sndOpenPath = dummy
closeSndPath = #$/MODULE[KASModuleContainer]/sndClosePath$
!sndClosePath = dummy
defaultMoveSndPath = #$/MODULE[KASModuleContainer]/sndStorePath$
!sndStorePath = dummy
!bipWrongSndPath = dummy
// Change the module called
@name = ModuleKISInventory
}
}

What about ships with parts that have KAS storage capability? Like all of the MKS/OKS modules for example, how will we transition those?

Link to comment
Share on other sites

Detach bug:

1. Attach a part somewhere.

2. Move cursor over the attached part.

3. Hold G (detach key).

4. You will see the grab icon instead of the detach icon. http://i.imgur.com/ZNuvBZ7.jpg

5. Click on it, and you cannot detach.

Workaround 1 (make sure the cursor is not over the part when you press G):

1. Attach a part somewhere.

2. Hold G (detach key).

3. Move cursor over the attached part.

4. You will see the detach icon, which is expected. http://i.imgur.com/dBZpuuo.jpg

5. Click on it, and you can detach.

Workaround 2 (press the G twice)

1. Attach a part somewhere.

2. Move cursor over the attached part.

3. Press G (detach key) twice.

4. You will see the detach icon, which is expected. http://i.imgur.com/dBZpuuo.jpg

5. Click on it, and you can detach.

If it matters I have KAS installed and I configured KAS grab key to P.

Link to comment
Share on other sites

Yeah, I thought from the filename that it would have it's own folder, but then I opened it and saw that it does go into the KIS folder and deleted that part of my post because I was like 'nvm then'.

Edit: First bug (though seems harmless) found through exception detector on entering VAB (I think, maybe it was earlier), though it only appeared that first time I entered VAB.

I'll also post an issue on github

NullReferenceException: Object reference not set to an instance of an object

at KIS.KISAddonPickup.Awake () [0x00000] in <filename unknown>:0

UnityEngine.GameObject:Internal_AddComponentWithType(Type)

UnityEngine.GameObject:AddComponent(Type)

AddonLoader:StartAddon(LoadedAssembly, Type, KSPAddon, Startup)

AddonLoader:StartAddons(Startup)

AddonLoader:OnLevelWasLoaded(Int32)

http://img.photobucket.com/albums/v214/smjjames/screenshot4_zpsigcj1ugy.png

This error can be ignored. Anyway, I fixed this for the next version.

KospY: it would be very much more flexible to check the experience effect rather than the trait. There are modders (myself included) that plan on adding more traits (one that comes to mind: medic), and they will be left out in the cold. Effects are almost as easy to check. Better yet, Effects are very easy to create: I have done so for Extraplanetary Launchpads (ExConstructionSkill). Currently only engineers get the skill, but there's no reason someone couldn't give it to any other profession (trait).

If you like, I can do the work and send a PR.

I'm checking the experienceTrait.title of protocrewmembers to restrict the use of an item (ex : screwdriver need trait "engineer").

If a new trait is created, you just need to put the item restiction to "medic" in the config file no ?

But may be I didn't understand what you want exactly...

Sure you can send me a PR if needed, i'm open to any suggestion to improve compatibility with other mods :)

Did you read the OP? It's standalone, no KAS (or module manager apparently, but MM is needed for other mods) required. It does have a slight conflict with the grab keybind in KAS, but they'll fix that in the next KAS update and besides, you can change the keybind, takes less than a minute to do so.

KospY: I would suggest that you disable window clickthrough when the inventory editor window is open because you can accidentially do something to something behind the window that you don't want to do.

Edit: The ingame manual book reader (which is a neat feature btw) needs a zoom function because the text is kind of small for me to read.

Added to my todo list.

Hm, I had a crash that appears to be related to KIS (crash folder) http://sta.sh/01d3byrnjfwz

I'm not exactly sure how it happened, but it happened while I was putting things into a command pod inventory. Some of the steps were that I accidentially removed and then deleted something while putting things into the inventory, undid that (which also removed stuff from inventory), started getting a strange exception coming from Extraplanetary Launchpads, then a short time later, crash.

Sorry but can you be more precise ? We can't "delete" item in the inventory so I don't understand what you did.

I think he/she meant preserving the science samples while they're in inventory, which you can't do with KAS when you store something with science samples in it.

There is no problem about storing science part in container.

The "state" of part is preserved in the container. If you recover a container with science part in it, the experiments (and part cost) will be recovered.

(It also worked in the last version of KAS)

Also, an idea, while we can view the volume of something that is in an inventory, we can't for things that are outside inventory (ie. the VAB/SPH). So, maybe it's something planned, but how about a way to view the volume of things while in VAB? Theres going to be some parts (such as the two track parts I mentioned in an earlier post) that are light enough, but are too big volume wise and might not be obvious that they don't fit.

If you put a part that do not fit in the container, a message with the volume of the part will be displayed.

Sure that will be nice to see the volume from the editor tooltip, but I didn't find a way to do that (yet).

While KIS is a standalone, you need both if you want KAS parts (pipes, struts, winches, etc.). It's also unclear to me how exactly KAS's KASModuleGrab (the module added to parts to allow you to grab them) coexists with KIS. From looking at the OP and the Wiki, it seems like parts no longer need a "grab module" to allow Kerbals to grab/attach/manipulate the parts but I haven't played with the mod yet. It's also not clear what happens with parts with the KASModuleGrab already, i.e., do they function independently (no KIS mass, volume, trait limitations) or does KIS override the KAS functionality.

Grabmodule is no more needed. As I say on the first post, KIS is standalone, so it work independently of KAS.

Too avoid confusion, I also recommend to remove "MM_Science.cfg" and "MM_Squad.cfg" (ModuleManager patch file) from the KAS folder after migrating from KAS container to KIS container.

This way the grab module will not be activated on stock parts. I will add this to the main thread.

Just tried to use one of the explosives to explode one of the KSC buildings and nope, doesn't work, aw.... That's only ONE explosive though.....

Not even 9 of them, and yes I have indestructible buildings off. They will chain react though, which is cool.

Edit: How do I get the kerbals to carry one of the containers like in KAS?

Carrying container on back is removed. You can only move them around with drag & drop.

With the bigger containers coming next, it will be completly weird to do that. Also, it give purpose to rovers for moving containers.

So.. attachment via the green nodes? (not surface attachment)

ZOMG, I need this so much. In my career I have a whole bunch of ships using LV-909, because I haven't researched the LV-N yet (playing with Kerbal Construction Time so science is slow). Instead of mulching the ship into RocketParts and building it again, I'd much rather just swap the engine.

Is this anywhere near close, or just a wishlist idea at this point? I have 73 Kerbal days... :D

Stack snap attach is attachment via the green nodes yes. I'm pretty close to finish it, but I can't give any ETA.

I also need to update KAS before adding new feature to KIS (because if not, KAS will never be updated :) )

A way for Kerbals to carry the KIS containers would be good though, provided that they aren't too heavy of course. I can't seem to get them into Kerbal inventory.

Edit: Apparently EPL doesn't like it when a stake is in a kerbals inventory, it fires one of these every time I switch over to the base from the kerbal.

NullReferenceException: Object reference not set to an instance of an object

at ExtraplanetaryLaunchpads.ExSurveyTracker+SurveySite+<GetEnumerator>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0

at ExtraplanetaryLaunchpads.ExSurveyStation.Highlight (Boolean on) [0x00000] in <filename unknown>:0

at ExtraplanetaryLaunchpads.ExBuildWindow.UpdateGUIState () [0x00000] in <filename unknown>:0

at ExtraplanetaryLaunchpads.ExBuildWindow.Select_Pad (ExtraplanetaryLaunchpads.ExBuildControl selected_pad) [0x00000] in <filename unknown>:0

at ExtraplanetaryLaunchpads.ExBuildWindow.BuildPadList (.Vessel v) [0x00000] in <filename unknown>:0

at ExtraplanetaryLaunchpads.ExBuildWindow.onVesselChange (.Vessel v) [0x00000] in <filename unknown>:0

at EventData`1[Vessel].Fire (.Vessel data) [0x00000] in <filename unknown>:0

at FlightGlobals.setActiveVessel (.Vessel v, Boolean force) [0x00000] in <filename unknown>:0

at FlightGlobals.ForceSetActiveVessel (.Vessel v) [0x00000] in <filename unknown>:0

at VesselSwitching.Update () [0x00000] in <filename unknown>:0

Well, I didn't check the mod with ExtraplanetaryLaunchpads, I will try to take a look.

Edited by KospY
Link to comment
Share on other sites

Should work the same, as long as it uses a KASModuleContainer, it should be converted, I'll be trying it myself shortly, and maybe post MM configs for dedicated bays (CactEye, UniversalStorage, BoxSat and USI's mods) if it works.

Keep in mind, only convert if you have no active ship with parts inside a KAS container, the results might range from losing your stored parts (guaranteed) to kraken attacks (probably not, but not entirely impossible I guess).

Link to comment
Share on other sites

So this will be incorporated into KAS? Can you grab mod parts too? Or will this be a separate mod to replace KAS?

You can grab ANY part.

Restriction are only mass (you need multiple kerbals to move heavy parts) and volume (part need to fit in the container / inventory)

Link to comment
Share on other sites

This is looking rather good indeed; I think I'll give the next version a shot once these few bugs are gone :)

T

Carrying container on back is removed. You can only move them around with drag & drop.

With the bigger containers coming next, it will be completly weird to do that. Also, it give purpose to rovers for moving containers.

However, moving containers around "manually" in space is not so far-fetched, and it's something I've made use of building stations by dragging a container over to a section of station & attaching stuff to a segment to turn it into a temporary craft. Having to keep going back & forwards to the other side of a station would be fairly horrid, and building an entire container craft with a KAS anchor is a bit much for a few parts :P maybe just make them too heavy to cart around on a surface?

Link to comment
Share on other sites

quote:Originally Posted by smjjames viewpost-right.png Hm, I had a crash that appears to be related to KIS (crash folder) http://sta.sh/01d3byrnjfwz

I'm not exactly sure how it happened, but it happened while I was putting things into a command pod inventory. Some of the steps were that I accidentially removed and then deleted something while putting things into the inventory, undid that (which also removed stuff from inventory), started getting a strange exception coming from Extraplanetary Launchpads, then a short time later, crash.

quote

Sorry but can you be more precise ? We can't "delete" item in the inventory so I don't understand what you did.

I guess I should have been clearer, sorry. What I meant was that I accidentially grabbed a part of the ship which was behind the inventory window, decided to just delete that part (which actually also had the container as a child part) and pressed ctrl+z to undo it. I've also gotten that odd exception message later on without crashes.

Well, I didn't check the mod with ExtraplanetaryLaunchpads, I will try to take a look.

I've already posted on the EPL thread about it. Also, for the one with EPL seeming to completely break, a reload fixed it and I had also been hit by the unable-to-return-toKSC-or-switch-distant-vessels bug without realizing it, which might have been what broke EPL rather than KIS.

Should work the same, as long as it uses a KASModuleContainer, it should be converted, I'll be trying it myself shortly, and maybe post MM configs for dedicated bays (CactEye, UniversalStorage, BoxSat and USI's mods) if it works.

Keep in mind, only convert if you have no active ship with parts inside a KAS container, the results might range from losing your stored parts (guaranteed) to kraken attacks (probably not, but not entirely impossible I guess).

What do you mean by active ship? One that is in focus or one that is 'out on the worldmap'? Because entire bases and stations made with MKS/OKS.

Edited by smjjames
Link to comment
Share on other sites

This is looking rather good indeed; I think I'll give the next version a shot once these few bugs are gone :)

However, moving containers around "manually" in space is not so far-fetched, and it's something I've made use of building stations by dragging a container over to a section of station & attaching stuff to a segment to turn it into a temporary craft. Having to keep going back & forwards to the other side of a station would be fairly horrid, and building an entire container craft with a KAS anchor is a bit much for a few parts :P maybe just make them too heavy to cart around on a surface?

Well, "Inside" storage are planned for the next major version. This way you will be able to move items/parts directly between vessel parts by opening both storage inventory and using drag & drop.

What do you think?

- - - Updated - - -

Detach bug:

1. Attach a part somewhere.

2. Move cursor over the attached part.

3. Hold G (detach key).

4. You will see the grab icon instead of the detach icon. http://i.imgur.com/ZNuvBZ7.jpg

5. Click on it, and you cannot detach.

Workaround 1 (make sure the cursor is not over the part when you press G):

1. Attach a part somewhere.

2. Hold G (detach key).

3. Move cursor over the attached part.

4. You will see the detach icon, which is expected. http://i.imgur.com/dBZpuuo.jpg

5. Click on it, and you can detach.

Workaround 2 (press the G twice)

1. Attach a part somewhere.

2. Move cursor over the attached part.

3. Press G (detach key) twice.

4. You will see the detach icon, which is expected. http://i.imgur.com/dBZpuuo.jpg

5. Click on it, and you can detach.

If it matters I have KAS installed and I configured KAS grab key to P.

Nice report :)

I will take a look.

Thanks.

Link to comment
Share on other sites

Well, "Inside" storage are planned for the next major version. This way you will be able to move items/parts directly between vessel parts by opening both storage inventory and using drag & drop.

What do you think?

Ah, yes, building maintenance parts into station sections would suit me fine - I would have MM'd a KAS container into a fixed part to do that already but at that point I might as well have just attached the parts to the section directly...

Link to comment
Share on other sites

Great stuff KospY, have some more rep. Transitioning the containers to KIS should help clean up the KAS code base and make bug chasing there easier too. With tools and inventory, I expect someone will make a super fun contract pack - lots of interesting possibilities.

Link to comment
Share on other sites

Ah, yes, building maintenance parts into station sections would suit me fine - I would have MM'd a KAS container into a fixed part to do that already but at that point I might as well have just attached the parts to the section directly...

Actually, what we really need here is a tool that can carry small crates, that is, a hand truck, sometimes called a 'dolly' or 'trolley'.

Or a tiny little rover that is designed for such purposes.

Edit: Or maybe something more like this: http://en.wikipedia.org/wiki/Flatbed_trolley , but I think you get the idea I'm making.

Edited by smjjames
Link to comment
Share on other sites

By active I mean out there in the world, unfortunately, but since my MM config doesn't seem to work anyway...

A temporary solution might be using a MM config that adds a KIS inventory in addition to the KAS container, transfer the parts manually for all ships and then remove the KAS container.

Link to comment
Share on other sites

@Raptor831,

For containers only, try something like this (with a 40 KAS units = 1 cubic meter of KIS volume), I haven't tested it yet (I'm working on mount points) and it probably needs balancing.

Do it only if you don't have any KAS containers on active ships.

..snip..

Thanks, exactly what I was looking for. What exactly is the slotSize for? Judging by it's position in the config, I'm assuming something to do with the slot display?

EDIT: Ninja'd... What seems to break with the config?

What about ships with parts that have KAS storage capability? Like all of the MKS/OKS modules for example, how will we transition those?

The MM config won't work on any launched ships, but it'll work on new builds for any part with the old container module. Though, I think the sound replacement part will break if there are no current sounds. Possibly. I'll have to check.

Edited by Raptor831
Ninja'd
Link to comment
Share on other sites

Here's a version that actually works (keep in mind, it only work if you have both KAS and KIS installed, otherwise KAS MM configs will be skipped and there won't be any KIS conversion happening) :

// Modify all parts with a KAS container, after everything
@PART
[*]:NEEDS[KAS&KIS]:HAS[@MODULE[KASModuleContainer]]:FOR[KIS]:FINAL {
@MODULE[KASModuleContainer] {
// Create KIS maxVolume and set it to the container's KAS capacity
maxVolume = #$/MODULE[KASModuleContainer]/maxSize$
// Converts the volume to KIS cubic meters, change that to better balance
@maxVolume /= 40
// Removes the KAS capacity
!maxSize = dummy
// Removes a KAS only parameter
!maxOpenDistance = dummy
// Sets KIS default behaviours
externalAccess = true
internalAccess = false
slotsX = 6
slotsY = 4
slotSize = 50
itemIconResolution = 128
selfIconResolution = 128
// Replace sounds, there is probably a cleaner way to proceed
openSndPath = #$/MODULE[KASModuleContainer]/sndOpenPath$
!sndOpenPath = dummy
closeSndPath = #$/MODULE[KASModuleContainer]/sndClosePath$
!sndClosePath = dummy
defaultMoveSndPath = #$/MODULE[KASModuleContainer]/sndStorePath$
!sndStorePath = dummy
!bipWrongSndPath = dummy
// Change the module called
@name = ModuleKISInventory
}
}

Or for those who have launched ships and want to transfer their stored parts first (provided I didn't let rookie mistakes slip by again) :


// Modify all parts with a KAS container, after everything
@PART
[*]:NEEDS[KAS&KIS]:HAS[@MODULE[KASModuleContainer]]:FOR[KIS]:FINAL {
MODULE[ModuleKISInventory] {
// Create KIS maxVolume and set it to the container's KAS capacity
maxVolume = #$/MODULE[KASModuleContainer]/maxSize$
// Converts the volume to KIS cubic meters, change that to better balance
@maxVolume /= 40
// Sets KIS default behaviours
externalAccess = true
internalAccess = false
slotsX = 6
slotsY = 4
slotSize = 50
itemIconResolution = 128
selfIconResolution = 128
// Add sounds
openSndPath = #$/MODULE[KASModuleContainer]/sndOpenPath$
closeSndPath = #$/MODULE[KASModuleContainer]/sndClosePath$
defaultMoveSndPath = #$/MODULE[KASModuleContainer]/sndStorePath$
}
}

Edited by EthanKerbman
Volume calculation correction
Link to comment
Share on other sites

Actually, what we really need here is a tool that can carry small crates, that is, a hand truck, sometimes called a 'dolly' or 'trolley'. Or a tiny little rover that is designed for such purposes.

I'm already thinking about concept about part manipulation during unmaned mission ;)

I also made a model of an eva tether but we didn't included it for the first release as it wasn't ready yet. We're thinking about possibilites for this item though.

Link to comment
Share on other sites

Looks very awesome! Scott Manley should do a video about it...

- - - Updated - - -

So.... this means it will replace KAS?

Should i port over my KAS parts to KIS? (if they still work like they should in KAS).

Link to comment
Share on other sites

Looks very awesome! Scott Manley should do a video about it...

- - - Updated - - -

So.... this means it will replace KAS?

Should i port over my KAS parts to KIS? (if they still work like they should in KAS).

Like the OP says, this does not replace KAS. It does not replace the KAS bits that have to do with attachment, it replaces the containers. And like the OP says you will have to move things from KAS containers to KIS containers before the next KAS update or bad things will happen.

Link to comment
Share on other sites

I dunno if this is a bug, a issue or something that is being worked on: when i drop a part on the ground and want to store it in my inventory, it doesn't store the item (if i remember correctly it's a simple drag and drop into the inventory GUI to store the part)

Nevermind... found the issue you need to hold G and hold left mouse click and drag the part to store it)

Edited by MK3424
Link to comment
Share on other sites

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