Jump to content

[1.12] KIFA Kerbal Inventory for All - adds stock inventory to mod containers, put all mod parts in stock containers!


Atlas Gaming

Recommended Posts

6 minutes ago, Superfluous J said:

YAY. Does this mean we will be able to move command chairs around in the next update?

Sorry, to be 100000% clear - I was talking about the Ranger modules for the MKS mod which I am moving to the stock inventory system. zero to do with the stock game.

Link to comment
Share on other sites

One thing I noticed (and I may be way off base here) is that stock probe cores excluding the rover body were assigned an inventory size of 0. Even though they can't carry anything, because they are parts with inventories, they cannot themselves be stored in an inventory, so my strategy of bringing small size parts, including probe cores, and assembling small relay satellites by hand in orbit no longer works.

That, or I managed to screw something else up with my install :/

Link to comment
Share on other sites

Latest version (1.0) of the Mod should have fixed that... can you check that you're running latest version from CKAN  and if still issues can you provide a list of which probe cores you are seeing that with?

Definitely the intent is to be able to carry probe cores.

Link to comment
Share on other sites

11 hours ago, Atlas Gaming said:

Latest version (1.0) of the Mod should have fixed that

Oh... found the problem.. will push 1.1 up today on ckan. Some parts like  RC-L01 are designed by Squad to NOT be able to be deposited in Inventory. I leave thous parts as intended by Squad. Smaller Remote Guidance and Probe cores should all work. Also most moded probe cores should work - unless author manually disabled.

EDIT: update 1.1 is up

Edited by Atlas Gaming
Link to comment
Share on other sites

What is the intended relationship of KIFA to KIS?  Are they meant to be together?  Does one supersede the other?  I ask because I have both KIFA and KIS installed, and I have two independent inventories for e.g., a KIS container: one from KIS, another in the stock style, from KIFA.

Link to comment
Share on other sites

On 1/1/2021 at 11:30 AM, samwiseiam said:

Hooray! Installed the update, will check to ensure it’s working as intended when I have time later today :)

Checked and it seems like i can stick probe cores back into stock inventories again! :) Thanks!

Link to comment
Share on other sites

22 hours ago, MalneyKerman said:

What is the intended relationship of KIFA to KIS?  Are they meant to be together?  Does one supersede the other?  I ask because I have both KIFA and KIS installed, and I have two independent inventories for e.g., a KIS container: one from KIS, another in the stock style, from KIFA.

The only relationship is that KIFA uses KIS inventory physical containers and adds stock container space to them based on KIS definitions. You  can still use both. One is not a replacement for the other. KIFA is really a mod to use while other authors transition to stock inventory and will eventually not be needed. On the KIS board it seems like KIS will be rewritten to use stock inventory (and extend it - whatever that entails) but may not be out for a while.

 

Link to comment
Share on other sites

I’m not sure if this is stock or intended behavior since I installed KIFA as soon as I updated to 1.11, but I just noticed that command seats can’t be stored in inventories, I think because they have 2 inventory spaces. Is this intentional, or how the game works stock, and if not is there a way around it? I was going to try to build a single Kerbal rover out of parts when I reached Minmus, but I realized I have no way to store or attach a command seat since the engineers can’t manipulate them.

Link to comment
Share on other sites

1 hour ago, samwiseiam said:

I’m not sure if this is stock or intended behavior since I installed KIFA as soon as I updated to 1.11, but I just noticed that command seats can’t be stored in inventories, I think because they have 2 inventory spaces. Is this intentional, or how the game works stock, and if not is there a way around it? I was going to try to build a single Kerbal rover out of parts when I reached Minmus, but I realized I have no way to store or attach a command seat since the engineers can’t manipulate them.

The command seat should be an inventory part, not a part with inventory.  I looked at the config for it and that is how it is setup in stock. 

PART
{
	name = seatExternalCmd
	module = Part
	author = NovaSilisko
	mesh = model.mu
	rescaleFactor = 1
	node_attach = 0.0, 0.0, 0.2, 0.0, 0.0, -1.0
	TechRequired = fieldScience
	entryCost = 8100
	cost = 200
	category = Pods
	subcategory = 0
	title = #autoLOC_500292 //#autoLOC_500292 = EAS-1 External Command Seat
	manufacturer = #autoLOC_501630 //#autoLOC_501630 = Kerlington Model Rockets and Paper Products Inc
	description = #autoLOC_500293 //#autoLOC_500293 = The EAS-1 External Command Seat provides all the controls needed to fully operate a spacecraft, just like a command pod, but without such needless frivolities as "pressurized interiors", or "seat belts". It's bare-bones, pedal-to-the-metal efficiency at its finest.
	attachRules = 0,1,0,1,0
	mass = 0.05
	dragModelType = default
	maximum_drag = 0.05
	minimum_drag = 0.05
	angularDrag = 1
	crashTolerance = 6
	breakingForce = 20
	breakingTorque = 20
	maxTemp = 1200 // = 2900
	vesselType = Rover
	CrewCapacity = 1
	applyKerbalMassModification = false		//This part never had a kerbal in the seat by default
	bulkheadProfiles = srf
	tags = #autoLOC_500294 //#autoLOC_500294 = chair control kerbal rover
	MODULE
	{
		name = KerbalSeat
		seatPivotName = seatPivot
		ejectDirection = 0.0, 0.1, 0.1
		ejectionForceMax = 100.0
		ejectionForcePercentage = 0.0
		ejectionForceDirection = 0.0, 1.0, 0.0
	}
	MODULE
	{
		name = ModuleCargoPart
		packedVolume = 70
	}
}

Loading into the game I see it as having 2 inventory slots also, so something is chanigning it.  My module manager config looks like this.  

UrlConfig
{
	parentUrl = Squad/Parts/Command/externalCommandSeat/externalCommandSeat.cfg
	PART
	{
		name = seatExternalCmd
		module = Part
		author = NovaSilisko
		mesh = model.mu
		rescaleFactor = 1
		node_attach = 0.0, 0.0, 0.2, 0.0, 0.0, -1.0
		TechRequired = fieldScience
		entryCost = 8100
		cost = 200
		category = Pods
		subcategory = 0
		title = EAS-1 External Command Seat
		manufacturer = Kerlington Model Rockets and Paper Products Inc
		description = The EAS-1 External Command Seat provides all the controls needed to fully operate a spacecraft, just like a command pod, but without such needless frivolities as "pressurized interiors", or "seat belts". It's bare-bones, pedal-to-the-metal efficiency at its finest.
		attachRules = 0,1,0,1,0
		mass = 0.05
		dragModelType = default
		maximum_drag = 0.05
		minimum_drag = 0.05
		angularDrag = 1
		crashTolerance = 6
		breakingForce = 20
		breakingTorque = 20
		maxTemp = 1200
		vesselType = Rover
		CrewCapacity = 1
		applyKerbalMassModification = false
		bulkheadProfiles = srf
		tags = chair control kerbal rover
		MODULE
		{
			name = KerbalSeat
			seatPivotName = seatPivot
			ejectDirection = 0.0, 0.1, 0.1
			ejectionForceMax = 100.0
			ejectionForcePercentage = 0.0
			ejectionForceDirection = 0.0, 1.0, 0.0
		}
		MODULE
		{
			name = ModuleCargoPart
			packedVolume = 70
		}
		MODULE
		{
			name = ModuleInventoryPart
			InventorySlots = 2
			packedVolumeLimit = 75
		}
		MODULE
		{
			name = USI_ModuleRecycleablePart
			Menu = Disassemble Part
			ResourceName = MaterialKits
			Efficiency = .5
		}
		MODULE
		{
			name = HotSpotModule
		}
	}
}

 

Link to comment
Share on other sites

Yup... I did not explicitly remove the seats from having inventory added... If there is an inventory the game will not let it be put into another inventory. 

 I will do that in the next version... thanks for the catch!

 

Edited by Atlas Gaming
Link to comment
Share on other sites

Hi @Atlas Gaming

Something in this mod is causing the ModuleCargoPart module to be removed from certain MKS parts in the USI Constellation Pre-Release. The result is that the "MKS 'Ranger' Habitation Module" part (and many others) can't be placed into inventories. 

In the pre-release the configs for some parts is updated to include the module:

	MODULE
	{
		name = ModuleCargoPart
		packedVolume = 1000
	}	

But this is either being removed somehow when KIFA does it's thing. 

Affected parts end up with an "Inventory Part" module with zero slots, so my guess is that the following is causing it:

@PART[*]:HAS[#CrewCapacity,!MODULE[ModuleInventoryPart]] :LAST
{
	MODULE
	{
		name = ModuleInventoryPart
		InventorySlots = #$../CrewCapacity$
		@InventorySlots *= 2
		packedVolumeLimit = #$../CrewCapacity$
		@packedVolumeLimit *= 75
	}
}

In the MKS Ranger Habitation Module config file the crew capacity is listed as zero (which increases when the part is 'deployed'), so it's probably trying to attach a zero-sized ModuleInventoryPart to it. I'm not sure why this would remove the ModuleCargoPart - perhaps both modules can't exist in the same part? Maybe I'm barking up the completely wrong tree but any help would be appreciated. 

 

EDIT: Whoops, my fault for using an outdated version. Looks like it was fixed in 1.0. Thanks!

Edited by Kielm
Link to comment
Share on other sites

13 hours ago, Kielm said:

EDIT: Whoops, my fault for using an outdated version. Looks like it was fixed in 1.0. Thanks!

LOL - glad its working... it sounded like something I had already fixed... 

I was running USI for a while but have removed all of them until the next release comes out. I found a number of inconsistencies (not major but some) and took it out for now to focus on running the new Near Future/Far Future mods.

Link to comment
Share on other sites

  • 3 weeks later...

Hey! I'm very glad I came across this mod! Sadly, it was when I almost finished doing a patch like this to myself, but at least saved me some time dealing with command modules. However, there is a problem and it is that some mods bring support to KIS with patches that requires KIS to be applicated. One example of this is Universal Storage II, that adds two pieces with KIS support only if KIS is installed. However, I found two solutions to this.

  • One is changing the name of the mod folder from KerbalInventoryForAll to KIS, so the mod itself trigger the :NEED[KIS] condition on all the patches.
  • The second one, who I'm currently using, is have a dummy mod on a KIS folder, that only contains an empty cfg file. You can even put the dummy mod on CKAN, and mark it as a dependency.

MCN2vuq.png

Link to comment
Share on other sites

17 hours ago, GonDragon said:

there is a problem and it is that some mods bring support to KIS with patches that requires KIS to be applicated. One example of this is Universal Storage II, that adds two pieces with KIS support only if KIS is installed.

Umm... I may be missing exactly what KIFA needs, but I'm not clear on why IS pasrt *shouldnt* NEED IS to be installed? vOv

17 hours ago, GonDragon said:

However, I found two solutions to this.

As to this, PLEASE mae sure your changes NEVER get publicly distributed. That may be a couple ways to do it, but those will really mess up someones install if they do have/try to install KIS. Also, not sure if adding empty .cfg files freezes/crashes the game anymoar. I know it used to... vOv

17 hours ago, GonDragon said:

One is changing the name of the mod folder from KerbalInventoryForAll to KIS, so the mod itself trigger the :NEED[KIS] condition on all the patches.

Your over thinking it. To address this, (and this is for each user's install, ONLY when KIS is NOT installed, and ONLY for *personal* use (shouldnt be distributed)),
is to just change any :NEEDS[KIS] in any patches, to :FOR[KIS]
This basically tells MM to *assume* the KIS folder is there...w/o it really being there...
Doing this, will also negate the need for your 2nd option.

AGAIN, :FOR[] usage in patches should ONLY be distributed within the specific mod it is targeting, and only by the official dev/maintainer of said mod.
If used improperly, distributed :FOR patches can really brea/screw up people's installs, and cause unecessary headeaches for mod devs, when peoplpe go to them looing for support.

Edited by Stone Blue
Link to comment
Share on other sites

  • 2 weeks later...

@Atlas Gaming InventoryforAll.cfg misses [ in several places in  :HAS#something

Also patches that I use:

// stock inventory patches 
// 2021-02-08
// @flart

// rounds up slots amount to be a multiple of 3
@PART[*]:HAS[@MODULE[ModuleInventoryPart]:HAS[#InventorySlots]]
{
    @MODULE[ModuleInventoryPart]
    {
        @InventorySlots += 2
        @InventorySlots /= 3
        @InventorySlots = #$InventorySlots[0,.]$
        @InventorySlots *= 3
    }
}

// all parts are manupulatable in EVA construction mode
// except probably the parts with the ModuleInventoryPart, because ModuleCargoPart needs to be before ModuleInventoryPart
@PART[*]:HAS[!MODULE[ModuleCargoPart]]
{
    MODULE
    {
        name = ModuleCargoPart

        // If this is set to < 0 then the part can be manipulated 
        // in EVA construction mode but cannot be placed inside inventory containers.
        packedVolume = -1
    }
}

 

On 1/30/2021 at 6:52 PM, Stone Blue said:

Umm... I may be missing exactly what KIFA needs, but I'm not clear

KIFA use ModuleKISInventory for getting values from it, but other mods add ModuleKISInventory as patches with :NEEDS[KIS], so only if there KIS is found.

forceKIS.cfg probably is ok (if it will not be deleted because it is empty)
@PART[mk1pod_v2]:FOR[KIS] {}

Edited by flart
Link to comment
Share on other sites

On 12/23/2020 at 1:13 AM, Atlas Gaming said:

So I noticed that KIS sort of disables itself... latest KIS includes code to not allow any part which fits into a stock container, to be put in a KIS inventory.  Since part of what my mod does is allow all modded parts to fit inside the stock inventory, KIS then refuses to allow the items in. It's unfortunate as I'd like to have the choice :)

There are currently issues with KIS and stock inventory.  I'm  sure it's  being worked on

Link to comment
Share on other sites

On 1/29/2021 at 4:19 PM, GonDragon said:

Hey! I'm very glad I came across this mod! Sadly, it was when I almost finished doing a patch like this to myself, but at least saved me some time dealing with command modules. However, there is a problem and it is that some mods bring support to KIS with patches that requires KIS to be applicated. One example of this is Universal Storage II, that adds two pieces with KIS support only if KIS is installed. However, I found two solutions to this.

  • One is changing the name of the mod folder from KerbalInventoryForAll to KIS, so the mod itself trigger the :NEED[KIS] condition on all the patches.
  • The second one, who I'm currently using, is have a dummy mod on a KIS folder, that only contains an empty cfg file. You can even put the dummy mod on CKAN, and mark it as a dependency.

MCN2vuq.png

As of KIFA 1.2 Universal Storage was not listed as 1.11 compatible. So no testing was done with it. This mod is ONLY intended for use with other mods compatible with 1.11.

On 2/8/2021 at 7:21 AM, flart said:

 InventoryforAll.cfg misses [ in several places in  :HAS#something

Hmm.. ok I'll go take a look and fix as needed. Seems to work fine with the [] though.

On 2/8/2021 at 8:53 AM, linuxgurugamer said:

There are currently issues with KIS and stock inventory.  I'm  sure it's  being worked on

I've been away for a month or so on another project, but yes, as KIS itself is updated, it may break some KIFA functionality. KIFA was based on KIS as of Dec 2020. I'll update as necessary, but KIS developer was going to be re-writing it for native support of 1.11 inventory at some point.

Link to comment
Share on other sites

  • 4 weeks later...
  • 2 weeks later...

@Atlas Gaming

I about to release a mod which will calculate volumes and add a ModuleCargoPart to all parts which don't have it.  This will be based on actual volume calculations, along with some adjustments as defined in a config.

Could you add the following to your file:  AllowModPartsInStock.cfg:

@PART[*]:HAS[!MODULE[ModuleCargoPart],#mass]:NEEDS[!KSP_PartVolume]

and let me know when it's been released?

This way both mods can work together

Link to comment
Share on other sites

  • 1 month later...
On 3/30/2021 at 8:39 AM, linuxgurugamer said:

@Atlas Gaming

I about to release a mod which will calculate volumes and add a ModuleCargoPart to all parts which don't have it.  This will be based on actual volume calculations, along with some adjustments as defined in a config.

Could you add the following to your file:  AllowModPartsInStock.cfg:


@PART[*]:HAS[!MODULE[ModuleCargoPart],#mass]:NEEDS[!KSP_PartVolume]

and let me know when it's been released?

This way both mods can work together

OK - it is updated with above... although I'm not sure its worth updating further if yours does the same thing but better? I can just deprecate

Link to comment
Share on other sites

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