Jump to content

[1.12.X] Kerbal Planetary Base Systems v1.6.15 [28. April 2022]


Nils277

Recommended Posts

29 minutes ago, ibanix said:

That should be easy enough to do. I could do that in a MM patch quickly. We just need a model....

I could be wrong, but I thought @RoverDude had said Dirt was there to allow for lower-efficiency extraction of resources that you'd otherwise not be able to get; all the resources don't occur in the same place. 

I could do it in an MM patch as well.  But the model's the hard part.  :wink:

There's always different ways to use it - the way I tend to use it is to reduce the initial numbers of drills I need to land: You can land a Dirt drill and probably get all the resources you need for initial base building (via EL) or maintenance.  (Depending on the planetary concentrations - on Mun in my current playthrough I needed one extra drill for Minerals to be able to produce MaterialKits, for instance.)  You get more resources per time/EC out of a dedicated drill, so I'm building out mining operations now, and I use Planetary Logistics to tie the whole thing together.  So yeah: It allows for lower-efficiency extraction of resources you can't get - one drill will get you most resources.  But I tend to think of that as an early-colony strategy.

2 minutes ago, ibanix said:

I just caught this comment. Mine/refine based were not something I had thought of, and it's a good idea.

Can I suggest that we have two different options?

1) Individual material fabrication modules, one each for Chemical. Polymers, Metals. Low-mass, high-efficiency.

2) Single fabrication module that does all three of the resources. High-mass, low-efficiency.

This gives the option for refinery bases, but also for someone to run a single base without having to deal with installing three different fabrication modules.

We should think a little bit about use if we're talking about that - which parts to we see players using in what order, and what happens to them long-term.  I tend to build out - start with a central base, and then build supply lines.  In which case the 'single module' would get put at the central base as a starting part while I build out the rest - but then either it becomes redundant or I never use the individual modules.  Personally, I think this would be a good place for the containers, if that's what you want to do: low-mass, low-efficiency (possibly still specialized to fit the theme, but still just color-swaps if so), low-production parts that you obviously want to replace.  If we can think of a good use for them in a larger base good, otherwise they're then small enough (and modular enough) that they can be ignored or just pulled from the base and replaced with something else, whereas one that's full-sized would be hard to pull out of the base.  (The other option would be if you could repurpose it somehow, but I'm not sure how to do that without custom code like in the MOLE mod.)

(We're really sounding like we're building a better-than-UKS UKS at this point.  :wink: )

Just now, ibanix said:

How is the Process Coordinator module expected to work? 

I'm expecting it to be essentially an efficiency module for the refineries: It gives them a boost to production, and holds Engineers which give them a further boost to production.  The refineries would have a 0% production on their own, so you'll need those boosts to get anything actually done.  (Take a look at the MK-V Smelter+Crusher for similar examples of the latter mechanic, and the Areoponics+Kerbitat for the former IIRC.)

Link to comment
Share on other sites

3 minutes ago, DStaal said:

I could do it in an MM patch as well.  But the model's the hard part.  :wink:

(We're really sounding like we're building a better-than-UKS UKS at this point.  :wink: )

The term "Scope Growth" comes to mind...

That being said, I still am excited about the direction this is going.  If we have to pick between the two options, I would say focus efforts on the individual parts if our goal is to augment UKS rather than do 1:1 replacement parts.  If people do want a single big heavy module that can do everything, well they've already got that in UKS.  I'm not sure having it in a different form factor matters too terribly much to players.

On the subject of modeling.  I've never done any kind of 3D graphics before but I am quite adept at AutoCAD and I'm reasonably handy with photoshop, it stands to reason there's enough tutorials floating around the internet that with enough time I could sort it out. I'd be interested in at least taking a crack at making models for these individual pieces, you're never too old to learn new things after all.  What does Nils use for his model making, what format are his existing files in?

Link to comment
Share on other sites

@Nils277 i had an idea for something yesterday that you may or may not have already considered. My thought was on you dual and triple adapter parts in the sense of making them longer for the purpose of making them passable. I often use your parts in my space plane cargo bays and it would be cool if crew could transfer through into your parts via a new double or triple adapter. Would also allow crew to transfer through from one leg iof the stack and into another.

 

Edited by stali79
Link to comment
Share on other sites

13 hours ago, ibanix said:

How is the Process Coordinator module expected to work? 

Two ideas:

Either add a fictitious resource that is maybe named "Process Corrdination" that is constantly produced by the Corrdination Module (which also has storage for this (e.g. 1 unit) and the converter to need this resource. E.g. a converter needs 1Unit/s of it and one module produces 1 Unit/s. Meaning that it may be possible to coordinate more than one module but with lower efficiency.

Another idea would be to add a special part-module and make a new version of the converter to require that specific part-module in the vessel to be operational. 

8 hours ago, stali79 said:

@Nils277 i had an idea for something yesterday that you may or may not have already considered. My thought was on you dual and triple adapter parts in the sense of making them longer for the purpose of making them passable. I often use your parts in my space plane cargo bays and it would be cool if crew could transfer through into your parts via a new double or triple adapter. Would also allow crew to transfer through from one leg iof the stack and into another.

 

Hmm...would making the current ones passable be also an option? There are currently many new parts that need to be made :wink: 

2 hours ago, MannaroThePatient said:

Sorry if already asked (didnt find my question).

The Planetary Cupola does not have IVA? The Kerbal Portrait did not appears...

The IVA of the cupola should be there.
Can you send me the log file (see here for details) so that i can take a look at what is going wrong? 

 

12 hours ago, ibanix said:

I believe models for KSP are usually made with Blender. 

They can be also made with a lot of other programs. also e.g. Maya or 3DS Max. :wink: 

Link to comment
Share on other sites

2 hours ago, stali79 said:

You COULD make them passable. But for the realism of it you can experiment fitting a space suit through THAT small a gap :P

Kerbals are very flexible....or so I heard. :rolleyes: Will put it on the list of possible new parts :wink:

@DStaal I would prefer the comverters to be in the size of the ISRU. I really fear them to be OP when they are smaller 

Link to comment
Share on other sites

10 minutes ago, Nils277 said:

I would prefer the comverters to be in the size of the ISRU. I really fear them to be OP when they are smaller 

I'd agree with this.  Having to manage multiple ISRU-sized components makes sense if the plan is to go with the Process Coordinator design.

Link to comment
Share on other sites

3 hours ago, Nils277 said:

Two ideas:

Either add a fictitious resource that is maybe named "Process Corrdination" that is constantly produced by the Corrdination Module (which also has storage for this (e.g. 1 unit) and the converter to need this resource. E.g. a converter needs 1Unit/s of it and one module produces 1 Unit/s. Meaning that it may be possible to coordinate more than one module but with lower efficiency.

Another idea would be to add a special part-module and make a new version of the converter to require that specific part-module in the vessel to be operational.

Of note is that UKS already has code to implement this, which we could piggyback on - Here's the example from the Aeroponics module's config:

MODULE
{
	name = MKSModule
	workSpace = 1
	livingSpace = 0
	efficiencyPart = OKS_AgModule,5,USILS_Greenhouse_LG,4
}

That means that the OKS Agricultural module would increase this module's production by 5 times, and the USI-LS large Greenhouse would increase it by 4 times.  (500% and 400%.)  The part in question is described as 'Requires at least one Agriculture Module to operate!'.

1 hour ago, Nils277 said:

Kerbals are very flexible....or so I heard. :rolleyes: Will put it on the list of possible new parts :wink:

@DStaal I would prefer the comverters to be in the size of the ISRU. I really fear them to be OP when they are smaller 

No problem - I was more discussing the problems with having both split converters and a combined converter.  I'm really fine without the combined or the smaller form factor ones; I just can see a large form-factor combined unit either displacing the split converters or vice-versa, unless a *lot* of thought was given to use-cases and balance.  They would have to be very different beasts, designed for very different situations - and we'd want to think through what those situations were.  In general I'd prefer to not try - The user can always pull in a MK-III part if they want the combined part, after all.  I was more saying 'If we wanted to cover this use-case, I think the smaller size would be better than a larger size.'  Which might well be a reason to *not* cover that use case.  :wink:

It is worth noting that with the split design we have, there is still a mass, part and Kerbal count advantage to building one base with all three - you'd only need one Process Coordinator module to get things working.  Which might be enough for @ibanix 's use case.

Link to comment
Share on other sites

I agree here, using UKS's synergy code seems like the best option.

2 hours ago, DStaal said:

Of note is that UKS already has code to implement this, which we could piggyback on - Here's the example from the Aeroponics module's config:


MODULE
{
	name = MKSModule
	workSpace = 1
	livingSpace = 0
	efficiencyPart = OKS_AgModule,5,USILS_Greenhouse_LG,4
}

That means that the OKS Agricultural module would increase this module's production by 5 times, and the USI-LS large Greenhouse would increase it by 4 times.  (500% and 400%.)  The part in question is described as 'Requires at least one Agriculture Module to operate!'.

 

Link to comment
Share on other sites

@Nils277: I have submitted a pull request for the Life Support changes we've discussed so far. Since they'll be separate from the UKS integration, you can merge them in directly.

 

Can I also ask you to remove this line from the original post of this thread?

Quote

@PocketBrotector also made a nice compatibility-patch for UKS: UKS-KPBS Compatibility

His patches were USI-LS (not UKS stuff we're talking about) and therefore will be redundant after the changes are merged into the main KPBS release.

Link to comment
Share on other sites

Hey, I've been having a persistent problem with contracts and KPBS. The game doesn't seem to recognize the planetary cupola as a valid viewing cupola for build-a-base contracts. Any idea what's going on here?

Log file

Craft that should satisfy the mission

Contract details from my safe file:

			CONTRACT
			{
				guid = 87df304b-7ae6-43a6-8e4f-0722ebeac328
				type = BaseContract
				prestige = 0
				seed = -1495600375
				state = Active
				agent = WinterOwl Aircraft Emporium
				deadlineType = Floating
				expiryType = Floating
				values = 63219.5137023926,125680393.240356,84507.0397853851,224295.757911085,94499.9957084656,0,26.24341,17.47573,22413416.3910526,22406722.989627,148087116.229983,0
				targetBody = 2
				capacity = 5
				contextual = False
				PARAM
				{
					name = LocationAndSituationParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					targetBody = 2
					targetSituation = LANDED
					noun = outpost
					finalObjective = False
				}
				PARAM
				{
					name = VesselSystemsParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					typeString = outpost
					mannedStatus = 2
					requireNew = True
					checkModuleTypes = Antenna|Power|Dock
					checkModuleDescriptions = has an antenna|has a docking port|can generate power
					launchID = 198
				}
				PARAM
				{
					name = CrewCapacityParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					targetCapacity = 5
				}
				PARAM
				{
					name = PartRequestParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					article = a
					partDescription = viewing cupola
					vesselDescription = outpost
					partNames = cupola
				}
				PARAM
				{
					name = StabilityParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					holdSeconds = 10
				}
			}

 

Link to comment
Share on other sites

2 hours ago, Sargon said:

Hey, I've been having a persistent problem with contracts and KPBS. The game doesn't seem to recognize the planetary cupola as a valid viewing cupola for build-a-base contracts. Any idea what's going on here?

Log file

Craft that should satisfy the mission

Contract details from my safe file:

Spoiler


			CONTRACT
			{
				guid = 87df304b-7ae6-43a6-8e4f-0722ebeac328
				type = BaseContract
				prestige = 0
				seed = -1495600375
				state = Active
				agent = WinterOwl Aircraft Emporium
				deadlineType = Floating
				expiryType = Floating
				values = 63219.5137023926,125680393.240356,84507.0397853851,224295.757911085,94499.9957084656,0,26.24341,17.47573,22413416.3910526,22406722.989627,148087116.229983,0
				targetBody = 2
				capacity = 5
				contextual = False
				PARAM
				{
					name = LocationAndSituationParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					targetBody = 2
					targetSituation = LANDED
					noun = outpost
					finalObjective = False
				}
				PARAM
				{
					name = VesselSystemsParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					typeString = outpost
					mannedStatus = 2
					requireNew = True
					checkModuleTypes = Antenna|Power|Dock
					checkModuleDescriptions = has an antenna|has a docking port|can generate power
					launchID = 198
				}
				PARAM
				{
					name = CrewCapacityParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					targetCapacity = 5
				}
				PARAM
				{
					name = PartRequestParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					article = a
					partDescription = viewing cupola
					vesselDescription = outpost
					partNames = cupola
				}
				PARAM
				{
					name = StabilityParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					holdSeconds = 10
				}
			}

 

Look at PARAM PartRequestParameter, partNames = cupola. That's the only way it knows if the part meets the criteria. It doesn't really know that it is or is not a cupola. Just that the part is named cupola. (that's a unique part identifier and there should only ever be one part with a given name)

Link to comment
Share on other sites

4 hours ago, Sargon said:

Hey, I've been having a persistent problem with contracts and KPBS. The game doesn't seem to recognize the planetary cupola as a valid viewing cupola for build-a-base contracts. Any idea what's going on here?

Log file

Craft that should satisfy the mission

Contract details from my safe file:


			CONTRACT
			{
				guid = 87df304b-7ae6-43a6-8e4f-0722ebeac328
				type = BaseContract
				prestige = 0
				seed = -1495600375
				state = Active
				agent = WinterOwl Aircraft Emporium
				deadlineType = Floating
				expiryType = Floating
				values = 63219.5137023926,125680393.240356,84507.0397853851,224295.757911085,94499.9957084656,0,26.24341,17.47573,22413416.3910526,22406722.989627,148087116.229983,0
				targetBody = 2
				capacity = 5
				contextual = False
				PARAM
				{
					name = LocationAndSituationParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					targetBody = 2
					targetSituation = LANDED
					noun = outpost
					finalObjective = False
				}
				PARAM
				{
					name = VesselSystemsParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					typeString = outpost
					mannedStatus = 2
					requireNew = True
					checkModuleTypes = Antenna|Power|Dock
					checkModuleDescriptions = has an antenna|has a docking port|can generate power
					launchID = 198
				}
				PARAM
				{
					name = CrewCapacityParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					targetCapacity = 5
				}
				PARAM
				{
					name = PartRequestParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					article = a
					partDescription = viewing cupola
					vesselDescription = outpost
					partNames = cupola
				}
				PARAM
				{
					name = StabilityParameter
					state = Incomplete
					disableOnStateChange = False
					values = 0,0,0,0,0
					holdSeconds = 10
				}
			}

 

There should be a config file to add the plabetary cupola to satisfy the base contracts. Do you have ModuleManager installed? It is needed for this.

I will take a look if the patch is also made for this kind of contracts. Will add it otherwise.

10 hours ago, ibanix said:

@Nils277: I have submitted a pull request for the Life Support changes we've discussed so far. Since they'll be separate from the UKS integration, you can merge them in directly.

 

Can I also ask you to remove this line from the original post of this thread?

His patches were USI-LS (not UKS stuff we're talking about) and therefore will be redundant after the changes are merged into the main KPBS release.

Thanks, will merge it when I get to my computer (i'm on my Smartphone currently) 

Will change the main post. 

Edit: done.

Edit2: You are right, using the already existing synergy sounds like the best solution :-) 

Edited by Nils277
Link to comment
Share on other sites

4 hours ago, Nils277 said:

There should be a config file to add the plabetary cupola to satisfy the base contracts. Do you have ModuleManager installed? It is needed for this.

I will take a look if the patch is also made for this kind of contracts. Will add it otherwise.

Yeah, I have that file (/PlanetaryBaseInc/ModSupport/Configs/Contracts/KPBS_MM_Contracts.cfg), and I have ModuleManager installed. For the record, the relevant part of the config file is:

//Add the planetary cupola to satisfy the base contracts
@Contracts
{
	@Base
	{
		@PART_REQUEST:HAS[#Part[cupola]]
		{
			Part = KKAOSS_Cupola_g
		}
	}
}

So, it shouuuuuld work...theoretically :sticktongue:

Link to comment
Share on other sites

As a long time user of both this mod and Roverdude's mods, reading the last few pages gives quite a lot to respond to.

First, use cases: KPBS +...

1. USI-LS

2.USI-LS + UKS

3. USI-LS + MKS Lite (not mentioned)

Balancing between the first two cases is where the discussion started, I want to add the third.  Having the algae farm use ore to make fertilizer works best for case 1.  MKS Lite adds Dirt, so it then could use that instead, and the ore drill could mine it too.  The algae could also require water, but that could also have better efficiency.

Second Greenhouse

Nils Greenhouse differs from RD's in one major way, it has occupation space.  Kerbals can be in it, and it has lots of windows so having a hab multiplier is feasible, unless you think those plants are obstructing the view.  I suggest use either a multiplier, or hab time, but not both.  It can have a recycler, 25% for 5 or so, since plants do recycle air and air is part of the abstraction for "supplies," RD does use it in the Ag Module.  It has not been mentioned, but the highest recycler gets used first, once that crew capacity is exceeded, then the next and so on.  A small recycler would likely not be used, but could still be on the part, and would allow the base to support guests.

Third UKS support

The discussion for that does seem to lean toward a separate addition mod with its own dedicated thread.  it seems to have grown (or could grow) large enough for this and since Nils is not the lead on it, although he does support it, would most likely link to it from this mod.  MM patches that add the UKS resource distribution modules to KPBS could be compatible with MKS Lite if it points to Kolonization which is the shared assets folder between the two.  These patches could also become part of KPBS.  In my opinion, I think it would be best if the standard parts in KPBS function more similarly to MKS lite, while additional parts be a part of UKS support.

In addition an idea for rec room could be to use the greenhouse model, take out the plants and add in chairs in front of the windows, and possibly treadmill or other knick-knacks.

I love this mod for my bases, MKS lite fits nicely with it.

Link to comment
Share on other sites

1 hour ago, mikerl said:

The discussion for that does seem to lean toward a separate addition mod with its own dedicated thread.  it seems to have grown (or could grow) large enough for this and since Nils is not the lead on it, although he does support it, would most likely link to it from this mod.  MM patches that add the UKS resource distribution modules to KPBS could be compatible with MKS Lite if it points to Kolonization which is the shared assets folder between the two.  These patches could also become part of KPBS.  In my opinion, I think it would be best if the standard parts in KPBS function more similarly to MKS lite, while additional parts be a part of UKS support.

I'll look over the rest of your post later, but I wanted to mention that my patches take pretty much that approach.

Also, to make it easier for everyone, I've moved them to a separate repository.  This allows me to track them separately from the rest of my assorted patches, and it allows everyone here to download them as an actual release, instead of just 'download these files.'  :wink:  I've added a readme and a license (MIT) to round things out on them.

Here's the new download link: https://github.com/DanStaal/DStaal_UKS_KPBS_Addons/releases

Link to comment
Share on other sites

8 hours ago, Sargon said:

Yeah, I have that file (/PlanetaryBaseInc/ModSupport/Configs/Contracts/KPBS_MM_Contracts.cfg), and I have ModuleManager installed. For the record, the relevant part of the config file is:


//Add the planetary cupola to satisfy the base contracts
@Contracts
{
	@Base
	{
		@PART_REQUEST:HAS[#Part[cupola]]
		{
			Part = KKAOSS_Cupola_g
		}
	}
}

So, it shouuuuuld work...theoretically :sticktongue:

I see a small differene here: the config mentions "base" as a type, while the contract itself mentiones "basecontract" that might be the issue. Will test that out.

@mikerl The support parts will be a separate download for the first time and may be integrated later. Haven't thought about MKS-Lite yet and how to integrate it.

Additionally to MKS-Lite, the support of TAC-LS has not been tackled yet. Although maybe not as often combined with UKS as USI-LS it still has probably a big user base.

Edited by Nils277
Link to comment
Share on other sites

4 hours ago, DStaal said:

I'll look over the rest of your post later, but I wanted to mention that my patches take pretty much that approach.

Also, to make it easier for everyone, I've moved them to a separate repository.  This allows me to track them separately from the rest of my assorted patches, and it allows everyone here to download them as an actual release, instead of just 'download these files.'  :wink:  I've added a readme and a license (MIT) to round things out on them.

Here's the new download link: https://github.com/DanStaal/DStaal_UKS_KPBS_Addons/releases

So we'll consider this the working space for the UKS/KBPS integration? eg. Pull requests to go to this github, and "official" releases of UKS-KBPS compatibility to be these patches?

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