hab136

[1.7.3] GPOSpeedFuelPump continued v1.8.19

Recommended Posts

On 15/9/2016 at 10:19 PM, hab136 said:

GPOSpeedFuelPump pre-release for KSP 1.2 pre-release: https://github.com/henrybauer/GPOSpeedPump/releases/tag/v1.8.4

Surprisingly I didn't need any code changes.  Note that you'll need a newer version of Module Manager for KSP 1.2, which is not updated yet.  I used an unofficial one for testing.

BTW, it looks like I can indeed get the new stock fuel flow priority number with part.GetResourcePriority(), which ranges from -9 to +9.  I'm trying to decide whether it would be good to use that instead of GPO's "pump level" number.  The benefits are less clutter on the screen, smaller save files, less memory, possibly less user confusion.  The downsides are transitioning from the current system, and.. ??  Does anyone have a case where they would want the engines to pull fuel in a different way than GPO would pump it?

As stated by me in a discussion about the newest "fuel flow priority" done by Squad (resembling to me an half baked, automated copy of GPOFuelPump), the best change should be a way that GPOFuelPump override the "automatic priority" set by Squad, in next releases, to have back the more usable/user friendly general behaviour like it was up to KSP 1.1.3 (allowing tanks to share fuel only IF GPOFuelPump options - "PUMP" and/or "BALANCE" - are active)

Basically, in your mod, you could use the newest Resource Priority, but disabling the weird " automatic crossfeed capability" until the added "PUMP" and/or "BALANCE" button are pressed, like it always was using GPO

(Basically, rather having the game select to pump to other tanks/engines any fuel automatically, if it set weird priority, even without fuelpipes or going thru disabled crossfeed parts, it needed by the player to use the function from your mantained mod)

Share this post


Link to post
Share on other sites
3 hours ago, Araym said:

Basically, in your mod, you could use the newest Resource Priority, but disabling the weird " automatic crossfeed capability" until the added "PUMP" and/or "BALANCE" button are pressed, like it always was using GPO

(Basically, rather having the game select to pump to other tanks/engines any fuel automatically, if it set weird priority, even without fuelpipes or going thru disabled crossfeed parts, it needed by the player to use the function from your mantained mod)

Stock doesn't move fuel from one tank to another, but instead the engine picks a tank to drain based on the priority numbers.  I don't think I can modify the internal workings of the engines.  I can look though.  From the thread, it sounds like NathanKell already found a fix.

Something that might help is some sort of visualization to display the priority number in the editor (even when the right-click menu is closed).  Then at least you'd see which tanks were set to be pulled from the engines and can catch that before flight.  That might make more sense as its own little mod than part of GPO.

While I've got my dev environment set up for 1.2, I'm still actually playing 1.1.3.  I'm sure that once I start playing 1.2 I'll encounter more of these issues myself and will have a better grasp on them.

Share this post


Link to post
Share on other sites

I was glad to find this mod working under 1.2 - there's quite a lot that stock fuel flow doesn't cover.  

Is it possible to write a tech tree config for this mod?  Such that it's disabled until Advanced Fuel Systems is researched, for instance.  

Share this post


Link to post
Share on other sites
20 hours ago, fourfa said:

Is it possible to write a tech tree config for this mod?  Such that it's disabled until Advanced Fuel Systems is researched, for instance.  

I can test if you've researched a node before enabling, yes.

I worry about users not seeing anything because they haven't researched the right node, and then complaining that it's not working.  I suppose I could replace the normal pump controls with a message in the right-click menu ("GPOSpeedFuelPump: tech not researched"), but that's ugly.  I'm open to other ideas.

Mods can tie into the difficulty options now, so this could be made an option (since some people will want it available at the start).

Share this post


Link to post
Share on other sites
2 hours ago, hab136 said:

I worry about users not seeing anything because they haven't researched the right node, and then complaining that it's not working.  I suppose I could replace the normal pump controls with a message in the right-click menu ("GPOSpeedFuelPump: tech not researched"), but that's ugly.  I'm open to other ideas.

That doesn't seem ugly to me.  I think that's pretty much what Mechjeb does?

Share this post


Link to post
Share on other sites

v1.8.6 for KSP 1.2.1 is out: https://github.com/henrybauer/GPOSpeedPump/releases/latest

No changes, just recompile.  I've been working slowly on the rewrite to controller/slave model, but unfortunately that's not something that can be released incrementally, so it's been proceeding in another branch.

Also check out Docking Fuel Pump which is like a simplified version of GPO - it just pumps all resources from tanks on one side of a docking port to the other side.

Share this post


Link to post
Share on other sites

Having an issue getting this to work in 1.2.1   Simply put, the mod shows no signs of being present despite being with all the other mods in the Gaemdata folder.  I am probably doing something incredibly dense, would appreciate any assistance.

Share this post


Link to post
Share on other sites
8 hours ago, EvermoreAlpaca said:

Having an issue getting this to work in 1.2.1   Simply put, the mod shows no signs of being present despite being with all the other mods in the Gaemdata folder.  I am probably doing something incredibly dense, would appreciate any assistance.

Do you have ModuleManager installed?  It's required.  Make sure you only have one copy of it; current version is 2.7.4.

Share this post


Link to post
Share on other sites

Hello sir. I ran into a very peculiar NaN bug this morning while streaming Kerbal. My vessel would delete itself when I tried changing the pump level on a Karibou VTOL engine while in fight.

The Karibou VTOL has an ability to create Mono propellant while it is active. As far as I can figure this mod sees that resource in the engine even though it does not have storage for it. This can be confirmed when looking at the pump options sub menu. If you turn off the Mono balancing for this part while in flight the same error occurs. If it is off prior to launch it appears to correct the problem. 

Like I said, a particular kind of bug.

Love the mod. I look forward to it being updated for future versions of the game. 

Edited by IM_AM_SVEN

Share this post


Link to post
Share on other sites
4 hours ago, IM_AM_SVEN said:

Hello sir. I ran into a very peculiar NaN bug this morning while streaming Kerbal. My vessel would delete itself when I tried changing the pump level on a Karibou VTOL engine while in fight.

The Karibou VTOL has an ability to create Mono propellant while it is active. As far as I can figure this mod sees that resource in the engine even though it does not have storage for it. This can be confirmed when looking at the pump options sub menu. If you turn off the Mono balancing for this part while in flight the same error occurs. If it is off prior to launch it appears to correct the problem. 

Like I said, a particular kind of bug.

Love the mod. I look forward to it being updated for future versions of the game. 

Thanks for the heads up, I'll try and figure out what's going on there.

Share this post


Link to post
Share on other sites

I have used this mode before [before 1.2.2] and I was curious what I might have done wrong?  When I click on the tanks, I only see a "manage tanks" button.  I know there should be a pump on button, a balance button, etc.

Share this post


Link to post
Share on other sites
4 hours ago, gamerscircle said:

I have used this mode before [before 1.2.2] and I was curious what I might have done wrong?  When I click on the tanks, I only see a "manage tanks" button.  I know there should be a pump on button, a balance button, etc.

Do you have the latest version of ModuleManager installed? (currently 2.7.5) It's required.

If you do, then please gather the KSP.log and put it on Dropbox or something.  Instructions are here

Share this post


Link to post
Share on other sites
5 hours ago, hab136 said:

Do you have the latest version of ModuleManager installed? (currently 2.7.5) It's required.

If you do, then please gather the KSP.log and put it on Dropbox or something.  Instructions are here

Hi @hab136, I did just verify that I am using the most recent version of the ModuleManger here is that log , hope it help:
https://drive.google.com/file/d/0B8bgPP0DpwZeWkFVUXREMlkyb0U/view?usp=sharing

 

Share this post


Link to post
Share on other sites
5 hours ago, gamerscircle said:

Hi @hab136, I did just verify that I am using the most recent version of the ModuleManger here is that log , hope it help:
https://drive.google.com/file/d/0B8bgPP0DpwZeWkFVUXREMlkyb0U/view?usp=sharing

 

You have Configurable Containers installed, which GPOSpeedFuelPump is probably not compatible with.

The few parts not affected by Configurable Containers (mostly UKS tanks from the logs) should still show it.  There are lines like:

[ModuleManager] Applying node GPOSpeedFuelPump/Patches/defaultPumpLevel/@PART[*]:HAS[@MODULE[GPOSpeedPump]]:AFTER[GPOSpeedFuelPump] to Squad/Parts/Engine/Size2LFB/part/Size2LFB

This is for the "LFB KR-1x2 "Twin-Boar" Liquid Fuel Engine".  Check that part in-game.

GPOSpeedFuelPump would probably work if a proper ModuleManager config was written to target those parts affected by it.   I don't have time to test it now, but try saving the following text as "GameData\GPOSpeedFuelPump\Patches\ConfigurableContainers.cfg"

@PART[*]:HAS[@MODULE[ModuleTankManager],!MODULE[GPOSpeedPump]]:FOR[GPOSpeedFuelPump]:FINAL
{
        MODULE
        {
                name = GPOSpeedPump
        }
}

 

Share this post


Link to post
Share on other sites
1 hour ago, hab136 said:

You have Configurable Containers installed, which GPOSpeedFuelPump is probably not compatible with.

The few parts not affected by Configurable Containers (mostly UKS tanks from the logs) should still show it.  There are lines like:


[ModuleManager] Applying node GPOSpeedFuelPump/Patches/defaultPumpLevel/@PART[*]:HAS[@MODULE[GPOSpeedPump]]:AFTER[GPOSpeedFuelPump] to Squad/Parts/Engine/Size2LFB/part/Size2LFB

This is for the "LFB KR-1x2 "Twin-Boar" Liquid Fuel Engine".  Check that part in-game.

GPOSpeedFuelPump would probably work if a proper ModuleManager config was written to target those parts affected by it.   I don't have time to test it now, but try saving the following text as "GameData\GPOSpeedFuelPump\Patches\ConfigurableContainers.cfg"


@PART[*]:HAS[@MODULE[ModuleTankManager],!MODULE[GPOSpeedPump]]:FOR[GPOSpeedFuelPump]:FINAL
{
        MODULE
        {
                name = GPOSpeedPump
        }
}

 

oh.. okay.. .so, I have a mod conflict.. okay.. thank you.. going to see if the author of Ground Construction might be able to help.. really really appreciate your help.

Share this post


Link to post
Share on other sites
1 hour ago, hab136 said:

You have Configurable Containers installed, which GPOSpeedFuelPump is probably not compatible with.

GPOSpeedFuelPump would probably work if a proper ModuleManager config was written to target those parts affected by it.   I don't have time to test it now, but try saving the following text as "GameData\GPOSpeedFuelPump\Patches\ConfigurableContainers.cfg"

This should work. To have full coverage you would also want to check for ModuleSwitchableTank:

@PART[*]:HAS[@MODULE[ModuleTankManager|ModuleSwitchableTank],!MODULE[GPOSpeedPump]]:FOR[GPOSpeedFuelPump]:FINAL
{
        MODULE
        {
                name = GPOSpeedPump
        }
}

@gamerscircle, could you please check this? You're already using the SpeedPump so it'll be easier for you to evaluate if it works correctly with CC-patched tanks.

Share this post


Link to post
Share on other sites
23 minutes ago, allista said:

This should work. To have full coverage you would also want to check for ModuleSwitchableTank:


@PART[*]:HAS[@MODULE[ModuleTankManager|ModuleSwitchableTank],!MODULE[GPOSpeedPump]]:FOR[GPOSpeedFuelPump]:FINAL
{
        MODULE
        {
                name = GPOSpeedPump
        }
}

@gamerscircle, could you please check this? You're already using the SpeedPump so it'll be easier for you to evaluate if it works correctly with CC-patched tanks.

I would be more than happy, I am going to take the above text and add it to : GameData\GPOSpeedFuelPump\Patches\ConfigurableContainers.cfg , is that correct?

Share this post


Link to post
Share on other sites
1 minute ago, gamerscircle said:

I would be more than happy, I am going to take the above text and add it to : GameData\GPOSpeedFuelPump\Patches\ConfigurableContainers.cfg , is that correct?

Indeed. Then check if the SpeedPump is present where it should and works in-flight as expected. If not, we'll move to figuring out how to make the mods compatible.

Share this post


Link to post
Share on other sites
10 minutes ago, allista said:

Indeed. Then check if the SpeedPump is present where it should and works in-flight as expected. If not, we'll move to figuring out how to make the mods compatible.

That was a pretty easy test, I did add:

@PART[*]:HAS[@MODULE[ModuleTankManager|ModuleSwitchableTank],!MODULE[GPOSpeedPump]]:FOR[GPOSpeedFuelPump]:FINAL
{
        MODULE
        {
                name = GPOSpeedPump
        }
}

To a new text file in ....\GameData\GPOSpeedFuelPump\Patches and renamed it to ConfigurableContainers.cfg , I then launched KSP and used the tracking station to get to a station and ship that were docked together and each has a fuel tank.  When I left alt key + right mouse button on each time.. I only new button that appears is the "manage tanks" button.

Sorry, it would seem that either I did something wrong or it doesn't appear to work?

Edited by gamerscircle

Share this post


Link to post
Share on other sites
8 hours ago, gamerscircle said:

That was a pretty easy test, I did add:

@PART[*]:HAS[@MODULE[ModuleTankManager|ModuleSwitchableTank],!MODULE[GPOSpeedPump]]:FOR[GPOSpeedFuelPump]:FINAL
{
        MODULE
        {
                name = GPOSpeedPump
        }
}

To a new text file in ....\GameData\GPOSpeedFuelPump\Patches and renamed it to ConfigurableContainers.cfg , I then launched KSP and used the tracking station to get to a station and ship that were docked together and each has a fuel tank.  When I left alt key + right mouse button on each time.. I only new button that appears is the "manage tanks" button.

Sorry, it would seem that either I did something wrong or it doesn't appear to work?

OK, I'll try to figure out what happens here myself and report back.

Share this post


Link to post
Share on other sites

On that note, here`s a patch for WildBlue which also uses their own tank configuration...

WildBlueIndustries.cfg

WBIConvertibleStorage

@PART[*]:HAS[@MODULE[WBIConvertibleStorage],!MODULE[GPOSpeedPump]]:FOR[GPOSpeedFuelPump]:AFTER[zzz_CryoTanks]:FINAL
{
	MODULE
	{
		name = GPOSpeedPump
	}
}

 

Share this post


Link to post
Share on other sites

Great work on the patches. I'll roll them into the next release.

Share this post


Link to post
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.