Jump to content

[1.1.2] Kerbal Inventory System (KIS) 1.2.12


KospY

Recommended Posts

6 minutes ago, IgorZ said:

Similar bug was fixed during 1.1 migration. Are you sure your version of KIS is 1.2.7.6? If your build is 5 then the bug you see is the one that was fixed :) If the version is right then it may be an issue with the model's renderer. Please, let me know what mod introduces the container on the screenshot.

The KIS version file which lies in the "Plugins" folder reads:

{
    "KSP_VERSION": {
        "MAJOR": 1, 
        "MINOR": 1, 
        "PATCH": 0
    }, 
    "NAME": "KIS", 
    "URL": "https://raw.githubusercontent.com/KospY/KIS/master/kis.version", 
    "VERSION": {
        "BUILD": 6, 
        "MAJOR": 1, 
        "MINOR": 2, 
        "PATCH": 7
    }
}

It's not a model issue, you can see the stock Station Hub in the post above also doesn't show its nodes.

Edited by Enceos
Link to comment
Share on other sites

6 minutes ago, Enceos said:

@IgorZ Also this issue with flipped "front" and "back" nodes. It has been with KIS since the node attachment feature appeared.

This one looks weird. KIS only changes node when "change symmetry" key is pressed. Are you on a laptop or some "unusual" desktop? Try changing "change symmetry" key binding to something different from "R" and check if the problem is still there. Do you have any other mods installed? Have you tried on a clean KSP setup?

Link to comment
Share on other sites

4 minutes ago, IgorZ said:

The error says that there were issues loading sound file. I remember people reporting this issue but that time it was wrong installation path. Could you please check if your folder `GameData\KIS\Sounds\` has all the files? What is your OS? Please, also give a list of all of your mods. For now we knoe two conflicting mods: KSS and Deadly Reentry. Also, as far as I can tell the kerbal model is not from the stock game. Is that true or my eyes lie to me?


I don't use any mods that modify Kerbanauts' models (as far as I know). Well, here's Jeb:

Spoiler

W5mJLKk.jpg


My mod list as reported by KSP-AVC (there's also the OS and KSP build info of course):

Spoiler

KSP: 1.1 (Win64) - Unity: 5.2.4f1 - OS: Windows 7 Service Pack 1 (6.1.7601) 64bit
USI Tools - 0.7.1
Chatterer - 0.9.8.1230
Community Resource Pack - 0.5
Contract Configurator - 1.10.4
Contract Pack: Bases and Stations - 3.2.1
Contract Pack: RemoteTech - 2.0.2
Crowd Sourced Science - 3.0.2
Deadly Reentry - 7.4
DMagic Orbital Science - 1.2.3
CapCom Mission Control On The Go - 1.0.2.1
Ferram Aerospace Research - 0.15.6.1
Firespitter - 7.2.1
Interstellar Fuel Switch - 1.22
Kerbal Attachment System - 0.5.6.7
Kerbal Engineer Redux - 1.1.0.2
Kerbal Joint Reinforcement - 3.1.5
Kerbal Inventory System - 1.2.7.6
Historian (Extended) - 1.2.0.39
KSP-AVC Plugin - 1.1.6.1
Modular Rocket Systems - 1.12.6
ModularFlightIntegrator - 1.1.3
Docking Port Alignment Indicator - 6.3
NearFutureConstruction - 0.6
NearFuturePropulsion - 0.7
NearFutureSolar - 0.6
RCS Sounds - 5.0
RealChute - 1.4
RealPlume - Stock - 0.10.6
SCANsat - 1.1.6
ShipManifest - 5.0.9
SpaceY Lifters - 1.12.1
StageRecovery - 1.6.4.1
Kerbal Alarm Clock - 3.6
TweakScale - 2.2.6.1
USI Core - 0.2.1
Asteroid Recycling Tech - 0.8.1
Freight Transport Tech - 0.5.1
Karbonite - 0.7.1
Karbonite Plus - 0.6.1
Karibou - 0.2.1
Kolonization Core - 0.2.1
USI-LS - 0.4.2
UKS - 0.40.1.1
Universal Storage - 1.1.0.11
Unmanned before Manned - 1.0.8
KSP Interstellar Extended - 1.8.9
[x] Science! - 4.15


The GameData\KIS\Sounds directory contains:

 

Spoiler

attach.ogg
attachPart.ogg
attachScrewdriver.ogg
attachStatic.ogg
attachWrench.ogg
bipwrong.ogg
bookClose.ogg
bookOpen.ogg
bookPage.ogg
click.ogg
containerClose.ogg
containerMount.ogg
containerOpen.ogg
detach.ogg
detachPart.ogg
detachScrewdriver.ogg
detachStatic.ogg
detachWrench.ogg
drop.ogg
foodBurp.ogg
foodDrink.ogg
foodEat.ogg
helmetOff.ogg
helmetOn.ogg
inventoryClose.ogg
inventoryOpen.ogg
itemEquip.ogg
itemMove.ogg
itemMoveBottle.ogg
refuelEva.ogg
timeBombEnd.ogg
timeBombLoop.ogg
timeBombStart.ogg

 

Link to comment
Share on other sites

17 minutes ago, Enceos said:

The KIS version file which lies in the "Plugins" folder reads:


{
    "KSP_VERSION": {
        "MAJOR": 1, 
        "MINOR": 1, 
        "PATCH": 0
    }, 
    "NAME": "KIS", 
    "URL": "https://raw.githubusercontent.com/KospY/KIS/master/kis.version", 
    "VERSION": {
        "BUILD": 6, 
        "MAJOR": 1, 
        "MINOR": 2, 
        "PATCH": 7
    }
}

It's not a model issue, you can see the stock Station Hub in the post above also doesn't show its nodes.

I'm not convinced the other bug is related to your issue. Do you see the bug on the other parts?

EDIT: Actually, tried several parts and found the same issue. It doesn't happen with any parts so, after all, it's a model issue. Though, stock models are affected (e.g. medium port).

Edited by IgorZ
Link to comment
Share on other sites

2 minutes ago, IgorZ said:

I'm not convinced the other bug is related to your issue. Do you see the bug on the other parts?

I downloaded from curseforge and installed the lastest KIS into a virgin KSP copy. Both issues: disappearing nodes and flipped "front/back" nodes confirmed.

Link to comment
Share on other sites

6 minutes ago, Enceos said:

I downloaded from curseforge and installed the lastest KIS into a virgin KSP copy. Both issues: disappearing nodes and flipped "front/back" nodes confirmed.

Let's clarify something. By "flipping" do you mean the attach mode intermittently changes from "front" to "back"? Or you mean that in "front" and "back" attach modes the KIS pointer is "flipping"?

Link to comment
Share on other sites

33 minutes ago, IgorZ said:

Let's clarify something. By "flipping" do you mean the attach mode intermittently changes from "front" to "back"? Or you mean that in "front" and "back" attach modes the KIS pointer is "flipping"?

The grabbed part orientation is wrong on those nodes, it clips inside the part I'm trying to attach it to. I usually have to fix this by rotating the part in my hand by 180°.

 

c7Y2zcM.png

 

P.S.There are only 2 stock parts with the "front" and "back" nodes: the Station Hub and the Micronode.

Edited by Enceos
Link to comment
Share on other sites

Hey @IgorZ! Sorry for being intrusive but I have a strong feeling that my reply has drowned in newer posts as I pressed Submit after a few posts have already been published so you may have missed it. If I'm right then my post is a few scrolls up. :) 

Link to comment
Share on other sites

45 minutes ago, atomontage said:

Hey @IgorZ! Sorry for being intrusive but I have a strong feeling that my reply has drowned in newer posts as I pressed Submit after a few posts have already been published so you may have missed it. If I'm right then my post is a few scrolls up. :) 

Dear Atomontage, if you want your issue resolved faster, please help the developers to find a conflicting mod.

To do this you need to:

  1. move away half of the mods
  2. start a new sandbox save and check if the problem is still present.
    • If yes - then move away more mods and check your game until the problem disappears.
    • If no, then start adding mods at small bunches until you find the culprit.
  3. Report the conflicting mod to the authors so they can implement a fix. (Usually it is done by the author of the conflicting mod)

This is the usual way to go when you have so many mods installed. I once found this way a trio of mods who introduce a problem only when all 3 are present, it would take ages for the authors to find this. And the issue was resolved in a couple of days.

VeselMover and HyperEdit mods can help to setup the testing environment much faster.

Edited by Enceos
Link to comment
Share on other sites

On 4/24/2016 at 7:59 PM, TrooperCooper said:

 

Confirming the Kerbal cloning bug.

To reproduce, my GameData folder looks as follows:

 

KIS

KerbalKrashSystem

Squad

 

Spawn a crewed MK1 pod on the launchpad, have the Kerbal EVA and let him get back into the pod. Kerbal moves inside but remains as a clone outside as well.

 

Output log is beeing spammed with:

 

(Filename:  Line: -1)

FileNotFoundException: Could not load file or assembly 'KIS, Version=1.2.5.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.

 

Not sure if thats the thing. Hope this helps...

 

I have the same problem!

I mean no clones but the same error being spammed and I also use KerbalKrashSystem but I'm pretty sure I had that very same error a few times before I installed KKS

Link to comment
Share on other sites

1 hour ago, Enceos said:

Dear Atomontage, if you want your issue resolved faster, please help the developers to find a conflicting mod.

To do this you need to:

  1. move away half of the mods
  2. start a new sandbox save and check if the problem is still present.
    • If yes - then move away more mods and check your game until the problem disappears.
    • If no, then start adding mods at small bunches until you find the culprit.
  3. Report the conflicting mod to the authors so they can implement a fix. (Usually it is done by the author of the conflicting mod)

This is the usual way to go when you have so many mods installed. I once found this way a trio of mods who introduce a problem only when all 3 are present, it would take ages for the authors to find this. And the issue was resolved in a couple of days.

VeselMover and HyperEdit mods can help to setup the testing environment much faster.

Dear @Enceos! I'm in no way willing to make a complaint or to require quick fixes! I'm quite thankful for these mods and I think mod developers are great dudes who contribute their free time to make things happen. FOR FREE! Its a huge work and all we can do is to help them or at least say thanks. Seriously, I thought my post could have simply been missed because of the reason that it appeared before 3 or 4 posts that have been published later. Thats why I wrote that.

Now to the topic. I couldn't test it out earlier. Now I am. Yeah I know how to test such things out - at least as a 'customer'. Many days before the release of 1.1 I have been trying to figure out what mod causes huge FPS drop coz my 100-parts base lagged as hell and by hell I mean 2 (!) fps. And on core i7 it gave 5 fps. So I spent a few hours restarting KSP and removing extra mods.

The good part is that equipping the screwdriver works with the new clean shiny KSP install. Now I'm gonna add a few mods over and over until I find the conflicting one.

Thanks!

Edited by atomontage
Link to comment
Share on other sites

Yeah so.. The conflicting mod is Deadly Reentry as you guys mentioned above its one of the conflicting ones. Now what are my next steps - should I report it in the DRE thread?

In case you need it, the log is:

 

Spoiler

[LOG 15:51:36.648] [F: 6870]: [00:00:00]: Bill Kerman from Untitled Space Craft went on EVA.
[LOG 15:51:36.650] Items transfer | source mk1pod (Untitled Space Craft) (0)
[LOG 15:51:36.651] Items transfer | destination: kerbalEVA (Bill Kerman)
[EXC 15:51:36.673] NullReferenceException: Object reference not set to an instance of an object
    DeadlyReentry.ModuleAeroReentry.ProcessDamage ()
    DeadlyReentry.ModuleAeroReentry.OnStart (StartState state)
    Part.ModulesOnStart ()
    Part+<Start>c__Iterator25.MoveNext ()
[LOG 15:51:36.740] [FLIGHT GLOBALS]: Switching To Vessel Bill Kerman ---------------------- 
 

Happens when I try to equip the screwdriver.

upd: Ah crap, I think it all was in vain at least for me. People in the DRE thread already reported that DRE breaks kis/kas. Sorry for taking your time guys! Should've checked the DRE forum first. :|

Edited by atomontage
Link to comment
Share on other sites

Hi , I have some nullreference when docking , it only happen with KJR and KIS installed and if in the craft you are docking at , there is a capsule, I have uploaded the files in the KJR thread

 

Edited by brusura
Link to comment
Share on other sites

7 hours ago, atomontage said:

Hey @IgorZ! Sorry for being intrusive but I have a strong feeling that my reply has drowned in newer posts as I pressed Submit after a few posts have already been published so you may have missed it. If I'm right then my post is a few scrolls up. :) 

Hey, your reply wasn't missed. I just switched to the other problem (the two bug reported by Enceos) assuming you need some time to play with mods in your KSP. And turned out it was a right approach - you've figured out the evil mod! :)

25 minutes ago, brusura said:

Hi , I have some nullreference when docking , it only happen with KJR and KIS installed and if in the craft you are docking at , there is a capsule, I have uploaded the files in the KJR thread

Looks like it's an issue on KJR side. KIS/KAS are not affecting docking procedure. By a chance, do you have logs? Stack trace could help understanding which mod is actually throwing the exception.

Edited by IgorZ
Link to comment
Share on other sites

33 minutes ago, brusura said:

Hi @IgorZ

do you mean output_log.txt ? It is in the .zip ( KJR thread )

Yes, this one. Thanks. This error can be KIS related. I've seen in the logs errors saying that none of the joints provided were valid when attaching some parts. While it wasn't an issue for KIS it could be an issue for the joint related mods. Will try your craft to see if the error stably reproduces (the KIS one, not the KJR). In the past I failed to find reproducible conditions to catch this error.

Link to comment
Share on other sites

I have also found some others issue with KIS and FAR this time there are some NullReference as I launch the craft and then FAR spam the log as I surface attach a solar panel:

is it something related to KIS then?

 

Edited by brusura
Link to comment
Share on other sites

Anyone having the FileNotFoundException, if you know how you can fix it by recompiling the mod yourself using something like monodevelop. Set the references to the .dlls in your install, also set the reference to the KSPDev_Utils.dll to the .dll in your GameData/KIS/Plugins folder.

Link to comment
Share on other sites

31 minutes ago, frencrs said:

Anyone having the FileNotFoundException, if you know how you can fix it by recompiling the mod yourself using something like monodevelop. Set the references to the .dlls in your install, also set the reference to the KSPDev_Utils.dll to the .dll in your GameData/KIS/Plugins folder.

Afaik, KKS is the only mod that was throwing this error, and they have fixed it already. As for `KSPDev_Utils.dll` reference you should not need it unless you use its functionality.

Edited by IgorZ
Link to comment
Share on other sites

@IgorZ: Absolutely not a bug, but I'm hoping you can shed some light on how I could accomplish this: I have an inflatable part that starts off in the editor with 0 crew capacity. From what I can see, KIS decides to not add the personal inventory part module to the part because it has 0 crew capacity. Quite sensible. :) When I take said part out into the field and inflate it, then its crew capacity increases to where it should be (say, 2 crew for our purposes). Of course there is no personal inventory part modules because KIS didn't add them. What I'm wondering is if there is a method I could call in KIS to tell it to add the personal inventory part modules. If not, is there a config node that I could use to add them to the part before it loads? Sure it would look weird to have personal inventories when the part is deflated, but at least then I could stop the situation where the part is deflated in the editor, but seats are available to crew the part. My current workaround is to have the part deflated but add crew capacity, but then the VAB/SPH gives me crew spots when there actually shouldn't be any.

For reference, this is what I found in github:

Spoiler
for (int i = ; i < avPart.partPrefab.CrewCapacity; i++)
{
try
{
ModuleKISInventory moduleInventory = avPart.partPrefab.AddModule("ModuleKISInventory") as ModuleKISInventory;
SetInventoryConfig(nodeEvaInventory, moduleInventory);
moduleInventory.podSeat = i;
moduleInventory.invType = ModuleKISInventory.InventoryType.Pod;
Logger.logInfo(
"Pod inventory module(s) for seat {0} loaded successfully", i);
}
catch
{
Logger.logWarning(
"Pod inventory module(s) for seat {0} can't be loaded!", i);
}
}
 

 

I'm wondering if I can do something like:

MODULE
{
name = ModuleKISInventory
podSeat = 1
invType = 1 //Appears Pod is InventoryType 1
}

 

I might need to add some fields to the MODULE node from stuff like this:

Spoiler
if (node.HasValue("inventoryKey")) moduleInventory.evaInventoryKey = node.GetValue("inventoryKey");
if (node.HasValue("rightHandKey")) moduleInventory.evaRightHandKey = node.GetValue("rightHandKey");
if (node.HasValue("helmetKey")) moduleInventory.evaHelmetKey = node.GetValue("helmetKey");
if (node.HasValue("slotsX")) moduleInventory.slotsX = int.Parse(node.GetValue("slotsX"));
if (node.HasValue("slotsY")) moduleInventory.slotsY = int.Parse(node.GetValue("slotsY"));
if (node.HasValue("slotSize")) moduleInventory.slotSize = int.Parse(node.GetValue("slotSize"));
if (node.HasValue("itemIconResolution")) moduleInventory.itemIconResolution = int.Parse(node.GetValue("itemIconResolution"));
if (node.HasValue("selfIconResolution")) moduleInventory.selfIconResolution = int.Parse(node.GetValue("selfIconResolution"));
if (node.HasValue("maxVolume")) moduleInventory.maxVolume = float.Parse(node.GetValue("maxVolume"));
if (node.HasValue("openSndPath")) moduleInventory.openSndPath = node.GetValue("openSndPath");
if (node.HasValue("closeSndPath")) moduleInventory.closeSndPath = node.GetValue("closeSndPath");

Thanks for your input and for keeping KIS going! :)

Edited by Angel-125
Link to comment
Share on other sites

2 hours ago, Angel-125 said:

@IgorZ: Absolutely not a bug, but I'm hoping you can shed some light on how I could accomplish this: I have an inflatable part that starts off in the editor with 0 crew capacity. From what I can see, KIS decides to not add the personal inventory part module to the part because it has 0 crew capacity. Quite sensible. :) When I take said part out into the field and inflate it, then its crew capacity increases to where it should be (say, 2 crew for our purposes). Of course there is no personal inventory part modules because KIS didn't add them. What I'm wondering is if there is a method I could call in KIS to tell it to add the personal inventory part modules. If not, is there a config node that I could use to add them to the part before it loads? Sure it would look weird to have personal inventories when the part is deflated, but at least then I could stop the situation where the part is deflated in the editor, but seats are available to crew the part. My current workaround is to have the part deflated but add crew capacity, but then the VAB/SPH gives me crew spots when there actually shouldn't be any.

For reference, this is what I found in github:

  Reveal hidden contents
for (int i = ; i < avPart.partPrefab.CrewCapacity; i++)
{
try
{
ModuleKISInventory moduleInventory = avPart.partPrefab.AddModule("ModuleKISInventory") as ModuleKISInventory;
SetInventoryConfig(nodeEvaInventory, moduleInventory);
moduleInventory.podSeat = i;
moduleInventory.invType = ModuleKISInventory.InventoryType.Pod;
Logger.logInfo(
"Pod inventory module(s) for seat {0} loaded successfully", i);
}
catch
{
Logger.logWarning(
"Pod inventory module(s) for seat {0} can't be loaded!", i);
}
}
 

 

I'm wondering if I can do something like:

MODULE
{
name = ModuleKISInventory
podSeat = 1
invType = 1 //Appears Pod is InventoryType 1
}

 

I might need to add some fields to the MODULE node from stuff like this:

  Reveal hidden contents
if (node.HasValue("inventoryKey")) moduleInventory.evaInventoryKey = node.GetValue("inventoryKey");
if (node.HasValue("rightHandKey")) moduleInventory.evaRightHandKey = node.GetValue("rightHandKey");
if (node.HasValue("helmetKey")) moduleInventory.evaHelmetKey = node.GetValue("helmetKey");
if (node.HasValue("slotsX")) moduleInventory.slotsX = int.Parse(node.GetValue("slotsX"));
if (node.HasValue("slotsY")) moduleInventory.slotsY = int.Parse(node.GetValue("slotsY"));
if (node.HasValue("slotSize")) moduleInventory.slotSize = int.Parse(node.GetValue("slotSize"));
if (node.HasValue("itemIconResolution")) moduleInventory.itemIconResolution = int.Parse(node.GetValue("itemIconResolution"));
if (node.HasValue("selfIconResolution")) moduleInventory.selfIconResolution = int.Parse(node.GetValue("selfIconResolution"));
if (node.HasValue("maxVolume")) moduleInventory.maxVolume = float.Parse(node.GetValue("maxVolume"));
if (node.HasValue("openSndPath")) moduleInventory.openSndPath = node.GetValue("openSndPath");
if (node.HasValue("closeSndPath")) moduleInventory.closeSndPath = node.GetValue("closeSndPath");

Thanks for your input and for keeping KIS going! :)

Well, I bet there can be a workaround developed but... let's take a look at the situation from the real world's perspective? Let's think "physically". If deflated module doesn't have enough space to accommodate crew how can it have space for the seats' inventory? The main point of being deflated is saving SPACE, and the seats just don't exist in this state! On the other hand, if developers of the inflatable module designed the things properly then they added an inventory which is not affected by the inflate state. And they did it by adding `ModuleKISInventory` module to the part :)

That said I'd suggest you adding the following code in your part's config:

@PART[-YOUR_PART_NAME-]:FOR[-YOUR_MOD_NAMESPACE-]:NEEDS[KIS]
{
    MODULE
	{
		name = ModuleKISInventory
        ...add settings for the inventory...
	}
}

For the reference consider inspecting KerbalPlanetaryBaseSystems. Those guys use KIS in a very advanced way. And they do have modules with a variable number for seats.

EDIT: Forgot to mention. For this to work your mod will need `ModuleManger`.

Edited by IgorZ
Link to comment
Share on other sites

10 hours ago, IgorZ said:

Well, I bet there can be a workaround developed...

Thanks for the info. :) Based on your response I set up some basic inventories in the part config and then set them up as seat inventories at runtime in the part prefab. Then I disable the inventories when loading in the editor so you can't add items to the deflated part. It took a combo of a config node and some custom code, but it works. No more crew seats in the VAB/SPH for deflated part modules. :)

The other way to do this would be to expose podSeat and invType as KSPField objects in ModuleKISInventory, but that would require a code change in KIS.

Thanks again. :)

Edited by Angel-125
Link to comment
Share on other sites

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