Jump to content

[1.8.1 - 1.12.5] Interstellar Fuel Switch (IFS) 3.29.5


FreeThinker

Recommended Posts

4 minutes ago, FreeThinker said:

Sorry, IFS does not have any message saying "The error is "FSFuelSwitch Mass Discrepancy detected in part xxxx" . But from xperiece I can tell you this message is most likely  associated with tweakscale which also alters a part mass. WHat might be happening is that Firespitter is expecting the part to have a specific mass but was altered by tweaskcaling, generating this message. IFS has integrated tweakscale while Firespiter relies on tweakscale configs

Gah! thanks - Damn message not being specific enough. I figured 'FS' stood for InterstellerFuelSwitch and didn't occur to me it would be FireSpitter. No prob and thanks for the info.

Edited by wile1411
Link to comment
Share on other sites

CC46CFB92CB179BFB1ACB4C5F443882FA0D84D17

I've bumped into an issue with localization strings in the latest version.  Image on Steam:
https://steamcommunity.com/sharedfiles/filedetails/?id=1166422322
 

On 10/9/2017 at 12:23 AM, MjrLeeObvious said:

Are there any mods required to get all of the tanks to show up, I am only able to transfer fuel types, and do not have access to any of the tanks that come with the mod.

To get the fancy tanks included install the full Interstellar Fuel Switch mod, not just the interstellar core mod.  The core mod is just the library it uses, for use with other mods or module manager scripts.

You might also need Community Resource pack.

Link to comment
Share on other sites

Small issue with the new localization - the localized names for LOC_IFS_TextureSwitch_TextureName and LOC_IFS_MeshSwitch_MeshName, and probably others, overwrite any user defined strings for those fields. So even though I have "switcherDescription = Stealth mode" in a texture switch module, it only shows as 'Texturename' in-game:

6rgfj0g.png

Link to comment
Share on other sites

On 10/13/2017 at 4:15 AM, FreeThinker said:

I have fixed the CKAN config file, please reinstall IFS by CKAN

It's the IFS core plugin, not the main IFS package.  It doesn't let me "reinstall" due to dependency hell.

You probably should update the version if you change the files to make this easier for everyone.  If you keep the index file version number the same CKAN presumes it's unchanged without looking at it.

I recommend simply adding "ckan1" at the end of the version if it's a CKAN specific patch.  This is adopted off of Linux distribution specific versions of packages where they are add a modification name and then a patchset number.  It will coax CKAN into seeing it as a new version, even though it's only the index file that's new.

 

Link to comment
Share on other sites

Version 2.10.1 for Kerbal Space Program 1.3.1 can be downloaded from here

Released on 2017-10-15

  • Fixed issue where switcherDescription field would not functioning
  • Fixed ability of inline inflatable liquid tank to switch between resources
Edited by FreeThinker
Link to comment
Share on other sites

Hello 
After installing this last version of this mod I start to get a lot of errors in the KSP Log, Like this :

[ERR 00:49:31.045] Cannot find a PartModule of typename 'ModuleStorageCryostat'

KSP Log: https://drive.google.com/open?id=0BwOktgRlclqKNFM0NTNoNHFBRms
 

Did I do anything wrong or is this a problem?:blush:

Edited by PmThay
Link to comment
Share on other sites

  • 3 weeks later...
On 11/2/2017 at 9:28 PM, emerald said:

The integration patches should exclude all parts with WBIConvertibleStorage module installed, so !MODULE[WBIConvertibleStorage] is missing in the list.

 

so im tryin to get this into my ifs, ive already pulled out the core that ckan install and put in the actual mod, but is there any that @FreeThinker could make this exclusion part of the core IFS, so if the part has the wbi module IFS dosent touch it?

Link to comment
Share on other sites

  • 2 weeks later...

@FreeThinker

I need to be able to change the available configs for some parts (see the post above), and have tried to do it by creating a new class and having it inherit from IFS using the following code:

public class IFI_IFS : InterstellarFuelSwitch.InterstellarFuelSwitch
{
	[KSPField]
	public string IFIResourceGui;

	void Start()
	{
		//stuff here
	}
}

I added the IFS as a reference and it compiles cleanly.

This is for KSP 1.3.1, I am using the latest version downloaded from Spacedock.

I'm getting an error when trying to run:

ADDON BINDER: Cannot resolve assembly: InterstellarFuelSwitch, Culture=neutral, PublicKeyToken=null
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

ADDON BINDER: Cannot resolve assembly: InterstellarFuelSwitch, Culture=neutral, PublicKeyToken=null
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

AssemblyLoader: Exception loading 'IFILifeSupport': System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
  at (wrapper managed-to-native) System.Reflection.Assembly:GetTypes (bool)
  at System.Reflection.Assembly.GetTypes () [0x00000] in <filename unknown>:0 
  at AssemblyLoader.LoadAssemblies () [0x00000] in <filename unknown>:0 

Additional information about this exception:

 System.IO.FileNotFoundException: Could not load file or assembly 'InterstellarFuelSwitch, Version=2.10.1.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
File name: 'InterstellarFuelSwitch, Version=2.10.1.0, Culture=neutral, PublicKeyToken=null'

 

This normally indicates that the version of .Net was wrong, on one side or the other, but I've verified that I am compiling for .Net 3.5, and was also able to verify that IFS was also compiled against .Net 3.5.

So I tried adding the other DLL as a reference (Scale_Redist.dll), but no change.

If I remove my code which references IFS, everything loads and works, but if I reference the IFS, then I get the error.

All I can figure is that for some reason, IFS has another dependency which I'm not aware of, and that doesn't make sense since it works.

Do you have any idea what is going on?

Thanks

Link to comment
Share on other sites

On 10-11-2017 at 8:41 PM, linuxgurugamer said:

I'm having a bit of a problem.  I'm working some life support tanks, and the text is wrapping in a very ugly way, see these pictures to see what I"m talking about:

sUAZId6.png

mgICuK3.png

kDZTg6l.png

vl4mhAv.png

What can be done to fix this?

Thanks in advance

Yes its extremely annoying but I don't know how to fix it. The best solution I can offer is to use shorter names in the switch, this can be achieved by specifying SwitchNames

In this example, I only display the  Symbol for a resource

MODULE
{
    name = InterstellarFuelSwitch
    massExponent = 3
    volumeExponent = 3
    resourcesFormat = 0.0000
	tankSwitchNames = Ar; CO2; H; Kr; Ne; N; O; X; Life; Not
    resourceGui = Argon;CarbonDioxide;Hydrogen;Krypton;Neon;Nitrogen;Oxygen;Xenon;LifeSupport;Nothing
	resourceNames = ArgonGas;CarbonDioxide;Hydrogen;KryptonGas;NeonGas;Nitrogen;Oxygen;XenonGas;Oxygen,CarbonDioxide;Structural
	resourceAmounts = 224000;224000;224000;224000;224000;224000;224000;44800;112000,112000;0
	basePartMass = 0.1
	tankMass = 0;0;0;0;0;0;0.1;0;0;0.5
	baseResourceMassDivider = 9.1
	displayCurrentTankCost = false
	hasGUI = true
	availableInFlight = true
	availableInEditor = true
	inEditorSwitchingTechReq = fuelSystems
	inFlightSwitchingTechReq = specializedFuelStorage
	showInfo = true
}

 

2 hours ago, linuxgurugamer said:

If I remove my code which references IFS, everything loads and works, but if I reference the IFS, then I get the error.

All I can figure is that for some reason, IFS has another dependency which I'm not aware of, and that doesn't make sense since it works.

Do you have any idea what is going on?

Thanks

 

Yes there are a few dependencies, this is the project file dependencies list

  <ItemGroup>
    <Reference Include="Assembly-CSharp">
      <HintPath>C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_Data\Managed\Assembly-CSharp.dll</HintPath>
    </Reference>
    <Reference Include="Assembly-CSharp-firstpass, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_Data\Managed\Assembly-CSharp-firstpass.dll</HintPath>
    </Reference>
    <Reference Include="Scale_Redist">
      <HintPath>C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\GameData\TweakScale\plugins\Scale_Redist.dll</HintPath>
    </Reference>
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="System.Data" />
    <Reference Include="System.Xml" />
    <Reference Include="UnityEngine">
      <HintPath>C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_Data\Managed\UnityEngine.dll</HintPath>
    </Reference>
    <Reference Include="UnityEngine.UI">
      <HintPath>C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_Data\Managed\UnityEngine.UI.dll</HintPath>
    </Reference>
  </ItemGroup>

Most of them are KSP libraries except Scale_Redist.dll. My guess is if you include this it should work

2 hours ago, linuxgurugamer said:

I need to be able to change the available configs for some parts (see the post above),

 

Exactly what functionality would you like to add. Perhaps it would be a useful addition to other as well.

Edited by FreeThinker
Link to comment
Share on other sites

21 minutes ago, FreeThinker said:

Exactly what functionality would you like to add. Perhaps it would be a useful addition to other as well.

I am working on IFI Life support.  It now has three levels of difficulty (unrelated to the KSP settings), basic, intermediate, and advanced.

The basic level only has the resource:  LifeSupport

The intermediate level has the resources:  LifeSupport and OrganicSlurry

The advanced level has the resources:  LifeSupport, OrganicSlurry and Sludge

The code I wrote works as follows:

  1. The 4 resource strings are renamed, with IFI in front of each
  2. Each string is split into an array
  3. Then, depending on the level, the available resource sets are added to the IFS strings

and in the cfg, I reference my module and renamed the resource strings

Link to comment
Share on other sites

3 hours ago, linuxgurugamer said:

I am working on IFI Life support.  It now has three levels of difficulty (unrelated to the KSP settings), basic, intermediate, and advanced.

The basic level only has the resource:  LifeSupport

The intermediate level has the resources:  LifeSupport and OrganicSlurry

The advanced level has the resources:  LifeSupport, OrganicSlurry and Sludge

The code I wrote works as follows:

  1. The 4 resource strings are renamed, with IFI in front of each
  2. Each string is split into an array
  3. Then, depending on the level, the available resource sets are added to the IFS strings

and in the cfg, I reference my module and renamed the resource strings

IFS actually already have something like this, which is tech level tank configuration unlocking, is can be configured using tankTechReq

MODULE
{
    name = InterstellarFuelSwitch
    massExponent = 3
    volumeExponent = 3
    resourcesFormat = 0.0000
	tankSwitchNames = Ar; CO2; H; Kr; Ne; N; O; X; Life; Not
    resourceGui = Argon;CarbonDioxide;Hydrogen;Krypton;Neon;Nitrogen;Oxygen;Xenon;LifeSupport;Nothing
	resourceNames = ArgonGas;CarbonDioxide;Hydrogen;KryptonGas;NeonGas;Nitrogen;Oxygen;XenonGas;Oxygen,CarbonDioxide;Structural
	resourceAmounts = 224000;224000;224000;224000;224000;224000;224000;44800;112000,112000;0
	tankTechReq = start;basicRocketry;engineering101;survivability;stability;generalRocketry
	basePartMass = 0.1
	tankMass = 0;0;0;0;0;0;0.1;0;0;0.5
	baseResourceMassDivider = 9.1
	displayCurrentTankCost = false
	hasGUI = true
	availableInFlight = true
	availableInEditor = true
	inEditorSwitchingTechReq = fuelSystems
	inFlightSwitchingTechReq = specializedFuelStorage
	showInfo = true
}

 

Edited by FreeThinker
Link to comment
Share on other sites

Sorry if this has been asked before, but is there a way to make this mod apply to all tanks in game without adding all of the KSPISE resources/tanks on top?

I just want to fuel switch stock parts, and Airplane Plus parts, not add a whole lot of stuff I won't use in my current game :P

Link to comment
Share on other sites

If I have Interstellar fuel switch installed but not interstellar extended, and am having lots of errors like this on LOG (really a lot):

[ERR 18:33:42.363] Cannot find a PartModule of typename 'ModuleStorageCryostat'

and some like this:

[ERR 18:33:56.587] Cannot find a PartModule of typename 'FNModuleCryostat'

also some like :

[ERR 18:33:42.747] Cannot find a PartModule of typename 'ModuleElementRadioactiveDecay'

It shouldn't, right?

LOG: https://www.dropbox.com/s/w9wra8pejf1aew9/KSP log 1.3.1.rar?dl=0

gamedata folder:

UHsLKG6.png

Edited by Agustin
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...