Jump to content

[1.12] Extraplanetary Launchpads v6.99.3


taniwha

Recommended Posts

7 hours ago, pmoffitt said:

Transfer seems a bit slow.  I am so tempted to increase the max transfer rate by say an order of magnitude. Can this be done by resource or is it global?  I haven't looked at the cfgs for this yet.

It's currently hard-coded, but I think it's the same as stock transfers (I need to double check the actual rate, but it is based on the volume of the transfer). Transfers being too fast (which, admittedly, they are when finalizing and releasing a build) can mess with KSP's physics.

7 hours ago, pmoffitt said:

I was looking at the dev branch on gethub.  How is the update going?

Nicely. I can't give an ETA as there's still a lot of work to do before its releasable:

  • Improvements to KodeUI's style/skin system (KodeUI is a code-based UI system that @sarbian started and I pushed through the gate. It too needs a lot of work before an independent release, but not enough to hold up a compiled-in release).
  • Clean up the layout for the resource manager.
  • Styling tweaks in genera.
  • Get parts on the table to behave nicely.
  • Sort out icons for the category list
  • Tool-tips (particularly for the unlabeled buttons and toggles)
  • An obscene amount of usability testing (I might leave the bulk of this to you guys)

However, the UI rewrite itself is essentially done. The new feature is functional (but incomplete, thus the holdup). I think I've recovered from the burnout I was suffering this week (111 commits to EL over the last four weeks, 86 to KodeUI over the last seven, and 13 to Debug Stuff in that time frame). I crossed off a pile of issues yesterday.

8 hours ago, pmoffitt said:

I still haven't figured out how to convert all the OSE Recipes over to use RocketParts yet.  The last thing I tried actually seemed to cause KSP to break.  Any good ideas on how to do that other than just going in and directly changing the cfg files for Workshop (seems like it might be easier than using Module Manager)?

OSE recipes are essentially EL recipes (down to minor bugs that have since been fixed): the code was lifted directly from EL (I do seem to remember giving permission (license incompatibility would require it)) and the serial numbers filed off (EL changed to OSE). If tweaking them via MM caused KSP to break, that's a tad concerning to me as the system was designed with MM in mind. For personal stuff, there's no harm in editing the config files directly other than you would need to protect your edits from updates to the owning package (OSE in this case). It's possible your MM constraints weren't sufficient (I'm no expert).

Link to comment
Share on other sites

3 hours ago, taniwha said:

[snip]

OSE recipes are essentially EL recipes (down to minor bugs that have since been fixed): the code was lifted directly from EL (I do seem to remember giving permission (license incompatibility would require it)) and the serial numbers filed off (EL changed to OSE). If tweaking them via MM caused KSP to break, that's a tad concerning to me as the system was designed with MM in mind. For personal stuff, there's no harm in editing the config files directly other than you would need to protect your edits from updates to the owning package (OSE in this case). It's possible your MM constraints weren't sufficient (I'm no expert).

I attempted to replace MaterialKits with RocketPart in the Default recipe and also for every part that had MaterialKits in their recipe.  I went to my base and opened the GUI for the OSE Workstation, none of the parts that use to require MaterialKits were there. If I tried to switch back to the Space Center or Tracking Station nothing would happen when I clicked on the buttons (after hitting esc). Then when I tried to exit the game it would just hang.  Lots of null pointer exceptions in the logs  I just really don't want to have to build both Material Kits and Rocket Parts.  I only have the Workshop mod installed as there seem to be issues if I install some of the others or they get rid of features in EL that I want.

This is the config I tried:

// Modify OSE to use Rocketparts

@OSE_DefaultRecipe:NEEDS[Workshop,ExtraplanetaryLaunchpads]:Final
{
	@RESOURCES:HAS[#MaterialKits]
	{
		Rocketparts = 1
		-MaterialKits
	}
}

@PART[*]:HAS[@OSE_PartRecipe]:NEEDS[Workshop,ExtraplanetaryLaunchpads]:Final
{
	@OSE_PartRecipe:HAS[#MaterialKits]
	{
		Rocketparts = #$MaterialKits$
		-MaterialKits
	}
}

 

Link to comment
Share on other sites

Ah, I think your deletion code is not valid syntax. You need something like:

-Materials = x

This reason for this is to ensure ConfigNode sees Materials as a value (as opposed to a node or ConfigNode just giving up). I'm pretty sure that when deleting, the value on the right of the equals sign doesn't matter. (I could be mistaken in that ConfigNode defaults to value, but...)

Link to comment
Share on other sites

12 hours ago, taniwha said:

Ah, I think your deletion code is not valid syntax. You need something like:





-Materials = x

This reason for this is to ensure ConfigNode sees Materials as a value (as opposed to a node or ConfigNode just giving up). I'm pretty sure that when deleting, the value on the right of the equals sign doesn't matter. (I could be mistaken in that ConfigNode defaults to value, but...)

@taniwhaEasy enough to test that out.  Not the real issue however, may still be a problem.  The issue is that Resources are case sensitive.  It is RocketParts not Rocketparts.  My latest test didn't delete the MaterialKits and it appears to be putting the value of MaterialKits from the previous node into RocketParts for the current node.  Oh, it is working fine.  There appear to be 2.5 times as many MaterialKits as RocketParts.  That is because MaterialKits have a density of 0.001 and RocketParts have a density of 0.025. 

If your code doesn't already, ensure that it checks that the Resource being added to a Recipe is valid and throw a meaningful error if not (or something).  The Object not set to an instance of an Object errors cause bad things to happen if one puts an invalid Resource into a Recipe.

@PART[*]:HAS[@OSE_PartRecipe]:NEEDS[Workshop,ExtraplanetaryLaunchpads]:Final
{
	@OSE_PartRecipe:HAS[#MaterialKits] //[1]]
	{
		RocketParts = #$MaterialKits$ //1
		-MaterialKits //= 1
	}
//	@OSE_PartRecipe:HAS[#MaterialKits[2]]
//	{
//		RocketParts = 2
//		-MaterialKits = 2
//	}
}

Given that this cfg didn't delete the MaterialKits, I think your statement that it needs a value so that MM recognizes MaterialKits as a value instead of a node is correct.  BTW, the commented out version of the cfg seemed to work fine but I am trying to be more generic incase the OSE Recipes ever change to use MaterialKits values other than just 1 or 2.

More testing.... Seems to be working.  Final cfg:

// Modify OSE to use RocketParts
//  I tried using #$MaterialKits$ to change set the vaule of RocketParts
//  Currently this appears to pull the wrong value from MaterialKits - works fine density difference between MaterialKits and RocketParts
@OSE_DefaultRecipe:NEEDS[Workshop,ExtraplanetaryLaunchpads]:Final
{
	@RESOURCES:HAS[#MaterialKits[*]]
	{
		RocketParts = #$MaterialKits$
		-MaterialKits = #$MaterialKits$
	}
}

@PART[*]:HAS[@OSE_PartRecipe]:NEEDS[Workshop,ExtraplanetaryLaunchpads]:Final
{
	@OSE_PartRecipe:HAS[#MaterialKits[*]]
	{
		RocketParts = #$MaterialKits$
		-MaterialKits = #$MaterialKits$
	}
}

 

Edited by pmoffitt
Link to comment
Share on other sites

Ok, soo... when i load up the game, there is not an EL button, or any modules for the workshops that allow building...
I have Tac life support installed, im not sure if that affects things, but it hasnt replaced the containers, so it likely doesnt effect EL.
https://drive.google.com/file/d/1zXI1AW3J5lBkCJ_eXG9BoyRzhVY9jYCM/view?usp=sharing
I have Extraplanetary Launchpads version 6.8.2 Running on ksp 1.10.1
dPKz8hu.png
I have the latest versions i could find of each of these... Im not sure if it is a mod conflict or it is something i might have missed

Edited by JcoolTheShipbuilder
Link to comment
Share on other sites

@JcoolTheShipbuilder I'm going to assume that you're on an OS where permissions matter: it turns out the dll in the zip file does NOT have execute permission set (no idea why, when the 6.8.1 zip does). I thought to check only just now because on Linux (well, Debian), execution permissions do not matter for dll files, so even if I had installed from zip (I don't, I install from source), I would not have noticed.

Anyway, assuming it's relevant, check that you have execute permission on ExtraplanetaryLaunchpads/Plugins/Launchpad.dll

Link to comment
Share on other sites

2 hours ago, taniwha said:

@JcoolTheShipbuilder I'm going to assume that you're on an OS where permissions matter: it turns out the dll in the zip file does NOT have execute permission set (no idea why, when the 6.8.1 zip does). I thought to check only just now because on Linux (well, Debian), execution permissions do not matter for dll files, so even if I had installed from zip (I don't, I install from source), I would not have noticed.

Anyway, assuming it's relevant, check that you have execute permission on ExtraplanetaryLaunchpads/Plugins/Launchpad.dll

Im on windoes 7? ok ill check anyways

Ok, im looking for the file and...... hang on a second.... where IS it?! ok turns out, somehow, i literally dont have the Plugins folder at all. Hmmm....... ok.... weird... im looking around in the downloads, ok found it...
On the top Left, is the extraplanetary launchpads folder thats in my modded 1.10 install. The top right is of the mod, but its a different version and in 1.9.1, with EL v6.7.0
lFYR99F.png
Bottom is two picture of the same 6.8.2 EL, but the left is just in the zip folder, the right is in that gamedata that is in the window on the bottom left. I tried it both ways, but the left broke entirely.
also... when i searched for "Launchpad.dll" with the search, it... was not there?!
Ok..... wot

Edited by JcoolTheShipbuilder
Link to comment
Share on other sites

46 minutes ago, JcoolTheShipbuilder said:

Im on windoes 7? ok ill check anyways

Ok, im looking for the file and...... hang on a second.... where IS it?! ok turns out, somehow, i literally dont have the Plugins folder at all. Hmmm....... ok.... weird... im looking around in the downloads, ok found it...
On the top Left, is the extraplanetary launchpads folder thats in my modded 1.10 install. The top right is of the mod, but its a different version and in 1.9.1, with EL v6.7.0
lFYR99F.png
Bottom is two picture of the same 6.8.2 EL, but the left is just in the zip folder, the right is in that gamedata that is in the window on the bottom left. I tried it both ways, but the left broke entirely.
also... when i searched for "Launchpad.dll" with the search, it... was not there?!
Ok..... wot

Looks like you downloaded the source from github, not the actual release zip file.

Link to comment
Share on other sites

  • 2 weeks later...
On 10/26/2020 at 9:36 AM, JcoolTheShipbuilder said:

Im on windoes 7? ok ill check anyways

Ok, im looking for the file and...... hang on a second.... where IS it?! ok turns out, somehow, i literally dont have the Plugins folder at all. Hmmm....... ok.... weird... im looking around in the downloads, ok found it...
On the top Left, is the extraplanetary launchpads folder thats in my modded 1.10 install. The top right is of the mod, but its a different version and in 1.9.1, with EL v6.7.0
lFYR99F.png
Bottom is two picture of the same 6.8.2 EL, but the left is just in the zip folder, the right is in that gamedata that is in the window on the bottom left. I tried it both ways, but the left broke entirely.
also... when i searched for "Launchpad.dll" with the search, it... was not there?!
Ok..... wot

Bruh u on windows 7?! 

Also wouldnt it be cool if you could build the ships instead of having it to be pre made and saved

Link to comment
Share on other sites

36 minutes ago, Souptime said:

you could build the ships instead of having it to be pre made and saved

OSE Workshop gets you covered, can be fed with RocketParts btw. Some rover and base mods support construction with KIS in that way. I use it in conjunction with EL, that's great.

Link to comment
Share on other sites

  • 4 weeks later...

I didn't realise until after I finalised a build, that I needed to re-root the craft I was building when using the Disposable Pad. Now I've got two massive station sections overlapping, which took several launches to provide the parts for, over 3 real time evenings. Is there some way I can save my station? Edit my persistent.sfs maybe? I don't have the spare rocketparts storage to teardown the build, and besides I already finalised it, because I had no idea this would happen (I assumed it'd work the same as the Dock, with the end of the constructed craft connecting to the end of the construction area).

Link to comment
Share on other sites

@Snoman314 find a backup save from before you finalized, because otherwise you are out of luck (with many parts, you are in for a world of pain trying to edit your persistence file because you need to fix all the part rotations and positions). And then, TURN ON CRAFT HULLS!!! That's what they're there for (but people complained about them being ugly (and, at the time legitimately, buggy: they're not buggy now).

Hmm, actually... If it was the dock... you *might* be able to get away with releasing while warping, and then keep warping until your two ships separate enough. 'm surprised you were able to finalize without everything exploding.

I would like to see a screenshot of the situation, though. That would help me, as there might be a bug with using surface attach nodes.

Edited by taniwha
Link to comment
Share on other sites

I will go look for craft hulls. I've never heard of them until now.

Looks like I didn't save the screenshot I took, sorry. Basically the root part of the craft I was building was roughly in the centre of the craft. Once finalised, that part was centered at the same location as the disposable pad, which meant that half the new craft overlapped the existing craft.

Fortunately the new craft's parts were all at the end of the vessel in my persistence file, and I spent about 30 minutes adding 10 meters to the y coordinate for every part, clearing the existing vessel and allowing it to be released.

Link to comment
Share on other sites

Hi Taniwha,

 

is there any way to change the Inputs of the Smelters from Liquid Fuel / Oxidizer to a different Fuel Type? I have already found this in your Recipes config:

    Input {
        efficiency = 1
        // Even though the reduction consumes 9.6MJ, the burning of LFO
        // still produces 5.2MJ. The two will balance out to a net consumption.
        // See below for LFO heat explanation.
        LFOMix = 864.49048 -5186.94288    // 6MJ/kg of LFO, 0.86449048kg of LFO
        MetalOre = 1596.882

 

I just don't dare touching it because I am afraid it might cause issues that won't be obvious at first. :D Can you point me in the right direction how to do something like that? I would love if EL Smelters would either use Heat generated from my KSP-IE reactors or Megajoules/Electric Charge. Then I wouldn't need to use the stock LOX system at all but go exclusively with Interstellar Fuels.

Thanks in advance!

Edited by ntony
Link to comment
Share on other sites

@Snoman314 I'm glad you got something sorted out. As for craft hulls: EL config, space center scene.

@ntony Initially, your best bet is to check the EL manual in the recipes section (pdf in EL's gamedata directory, or linked in the OP) If KSP-IE's heat is an actual resource, you should even be able to convert it to actual heat. Technically, you want a supply of carbon, but I think there may be pure heat methods of smelting. Anyway, the LFO requirements are carefully balanced against chemistry, heat, and a few assumptions (nature of MetalOre, just what LFO is,  and how much heat you can get out of it (probably a fair bit lower per kg that what's realistic, but it's balanced against the engines: justifications in the manual).

If the manual doesn't help, get back to me :)

Link to comment
Share on other sites

@taniwha I will try to find out something, thanks. I have never myself modified any files except for increasing or decreasing values. What could possibly go wrong :D

I think I read somewhere that electric charge doesn't work because it has no mass and at some point the calculations would divide by zero, is that still true and is there any workaround? Megajoules and Wasteheat have no mass in KSP-IE afaik.

Link to comment
Share on other sites

There is, actually, an EC based recipe for smelters (if it's  not in the zip, though it should be, it is at least on github). So long as there is some mass in the recipe, massless ingredients should not be a problem.

Link to comment
Share on other sites

7 hours ago, taniwha said:

There is, actually, an EC based recipe for smelters (if it's  not in the zip, though it should be, it is at least on github). So long as there is some mass in the recipe, massless ingredients should not be a problem.

Yeah it's in the ECSmelter.cfg file, in the Resources folder. It uses EC with Liquid fuel as a reducing agent.

I tried to make hydrogen recipe (Ore + hydrogen => metal + water) so that I could then electrolyse the water and recycle the hydrogen, and vent the surplus oxygen if I needed to. Unfortunately I could never figure out any of the units in the recipes.

Link to comment
Share on other sites

6 hours ago, Snoman314 said:

Unfortunately I could never figure out any of the units in the recipes

This is where reading the manual might help. They're not actually units, they're mass ratios (I think they're just direct resource units for massless resources). It seems I used grams for the LFO smelter, but that' s just to make the ratios easier (since they all come from the molecular weights of the ingredients). The actual mass rate is determined by the Rate field in the ELConverter module node and the current efficiency.. However it seems to be kg/s for the efficiency with the smallest mass flow (0 mass recipes are skipped for this as all efficiencies' masses are divided by the smallest).

I found the relevant code:

                if (ingredient.Density > 0) {
                    r.Ratio = ingredient.ratio / ingredient.Density;
                    r.Ratio /= 1000;    // convert from kg/s to t/s
                } else {
                    r.Ratio = ingredient.ratio;
                }

r is the stock converter ratio, which works in units/second instead of mass/second (resource densities are t/u, thus the /1000)

Link to comment
Share on other sites

@taniwha @Snoman314

Thanks a bunch for pointing me in the right direction. My Smelters now use KSP-IEs Megajoules resource. Gonna have to see what I will replace the Liquid Fuel in the Recipe with. Then I won't have to mine the stock "Ore" anymore but rely exclusively on KSP-IEs resources and ELs "Metal Ore".

If I manage to pull of something useful I will let you know. As mentioned before I never tampered with config files except for exchanging simple values.

Link to comment
Share on other sites

On 12/3/2020 at 9:16 AM, ntony said:

@taniwha @Snoman314

Thanks a bunch for pointing me in the right direction. My Smelters now use KSP-IEs Megajoules resource. Gonna have to see what I will replace the Liquid Fuel in the Recipe with. Then I won't have to mine the stock "Ore" anymore but rely exclusively on KSP-IEs resources and ELs "Metal Ore".

If I manage to pull of something useful I will let you know. As mentioned before I never tampered with config files except for exchanging simple values.

If you create a new mod part cfg file in your own folder (ZZZZMymods or something) using module manager commands to copy the existing smelters, give them a different name (add EC in front) and then replace the converter recipes with the ones from the ecsmelter.cfg file @taniwhamentioned then your mods won't get stomped on (as much) when you install updates.  I think I will mess with that cause I like the option of using EC instead of LFO.  But, I still need LFO to lunch rockets.

Here is the MM cfg for creating Electric Smelters per @Snoman314's suggestions.  I haven't really used it yet but it looks correct when looking at the parts it created.  Interesting that the ECHeated recipes still use some LFO.

// Create ECSmelters from standard ExtraplanetaryLaunchpads Smelters
+PART[ELSmelter|ELSmallSmelter|ELTinySmelter]:Needs[ExtraplanetaryLaunchpads]
{
	@name = #$name$-EC
	@title = #$title$ Electric
	@author = #$author$ Modified by Pat Moffitt

	@MODULE[ELConverter]:HAS[#ConverterRecipe[LFOFiredSmelter]]
	{
		@ConverterRecipe = ECHeatedSmelter
	}
	
	@MODULE[ELConverter]:HAS[#ConverterRecipe[LFOFiredRemelter]]
	{
		@ConverterRecipe = ECHeatedRemelter
	}
}

 

Edited by pmoffitt
Add mm code for Electric Smelters
Link to comment
Share on other sites

 Hey, I've had some problems with this mod. When I load up KSP (1.10.1) The mod will not load nor will any added components (besides the LaunchPad for Planetary Surface Structures). I am unable to find any parts for it and I can't find it in FilterExtensions' filters. The only parts for the mod are contained within Planetary Surface Structures, and I can't use those because they won't work or build or do anything. I installed the mod exactly to directions and it still doesn't work. Does anyone have any suggestions? Thanks for helping! 

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