Nertea

[WIP] Nert's Dev Thread - Current: Near Future Exploration (FFT on hold)

Recommended Posts

I too had problems with the download link in the OP taking me to Jenkins.

On 10/2/2013 at 4:56 PM, Nertea said:

This thread is for what I'm working on right now, which is a rework of my SSPX pack. 

The current testing release is version 1.0.0.A1 for KSP 1.31.1 (December 22, 2017). You can download it here.

Imgur album

-----------------------------

But this one works just fine!

21 hours ago, Nertea said:

Time for some more structured, more public testing of the new station parts pack.

Highlights

  • Completely redone textures, models, configs for the mod
  • Full set of new 1.25m station parts, including several inflatable modules
  • Full set of 2.5m station parts, including several inflatable modules
  • Full set of 3.75m station parts, including some large expandable centrifuges
  • Logistics and container modules to store consumables, with support for many mod resources (eg. USI, EPL, TAC-LS)
  • Several self-levelling ground base components in stack and radial sizes
  • Extendable grappling tubes for connecting bases
  • A vague commitment to IVAs for all crew-containing parts

Known Issues:

  • Please look here first.
  • A significant amount of IVA components exist in a ~kinda done~ state. This means:
    • Kerbal transforms are incorrect in many cases 
    • Some textures are missing (down to two parts)
    • Prop layouts are incomplete
    • If you want to help me with prop layouts I would be greatly obliged!!!

Git it here (ha): Stockalike Station Parts Expansion Redux - 1.0.0.A1

 

 

Share this post


Link to post
Share on other sites

Ah I see. There's no download link in the OP, but it's supposed to link to my last post there so that's fine now

Share this post


Link to post
Share on other sites

@Nertea

The new SSPX is a masterpiece - it might be my favorite parts pack ever. The parts are absolutely beautiful, thoughtfully designed, and cover a wide range of applications. I am very excited for finished IVAs (and I love what you've already done, especially the PXL-F). Plus, the need to move large interplanetary craft composed of these parts will provide me with a pragmatic reason to use all of your fancy end-game engines & reactors!

I only wish that there was a crew health mod capable of giving SSPX a real sense of purpose and interesting gameplay mechanics. Unfortunately, I'm not aware of any such mod. Mods like TAC-LS or Snacks ultimately treat all crew compartments as nothing more than resource storage and/or recyclers. USI-LS has a "habitation" mechanic, which is maybe a rough approximation of what I'm hoping for, but its logic is a bit simplistic/wonky. I would love to see a mod that encourages meeting various crew needs: space, amenities, privacy (i.e., individual cabins), artificial gravity, shelter from radiation, etc., which have varying degrees of importance based on the length of the mission.

One quick note about your current USI-LS patch: the use of MaterialKits is a feature of MKS, not USI-LS. Players who use USI-LS without MKS will find themselves unable to deploy the inflatable modules.

Share this post


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

One quick note about your current USI-LS patch: the use of MaterialKits is a feature of MKS, not USI-LS. Players who use USI-LS without MKS will find themselves unable to deploy the inflatable modules.

Thanks for pointing that out. It will be addressed.

1 hour ago, OldMold said:

Have you tried Kerbal Health? Looking forward to mash these two mods + life support + construction time together for proper deep space crew missions.

This seems intriguing. Proper compatibility for this, though, will likely have to come from the KerbalHealth dev or an MM expert who understands both these mods very well. Nertea has no direct involvement with life support mods.

Share this post


Link to post
Share on other sites
On 12/24/2017 at 6:00 PM, OldMold said:

Have you tried Kerbal Health? Looking forward to mash these two mods + life support + construction time together for proper deep space crew missions.

Thanks for the link. I've been away from KSP for about a year, so I wasn't aware of Kerbal Health. It appears to have just about everything I'm looking for. Strange that it doesn't involve food as a factor in maintaining health, but I suppose that's easily enough addressed with a separate mod (e.g., USI-LS or Snacks).

On 12/24/2017 at 8:04 PM, JadeOfMaar said:

Thanks for pointing that out. It will be addressed.

This seems intriguing. Proper compatibility for this, though, will likely have to come from the KerbalHealth dev or an MM expert who understands both these mods very well. Nertea has no direct involvement with life support mods.

Luckily, I happen to be a MM expert with experience writing configs for Nertea's mods in the past. I'd be happy to write a compatibility patch, however, I do have a couple concerns. As it stands, the "recuperation" mechanic makes it mathematically more efficient to just slap on a bunch of cupolas for large/long-term missions, rather than actually addressing crowdedness and microgravity (explanation: each cupola provides 1% HP regeneration for every Kerbal on board - it has the same benefit per Kerbal regardless of crew size, and the benefit is additive for any number of cupolas, so there's a point where it's more efficient to just make HP regeneration exceed loss rather than reducing loss). I believe the recuperation mechanic needs to be dramatically reduced in order to give Nertea's parts real purpose. In short, I intend to write a patch (at least for my own purposes), but my patch may overhaul/rebalance some of the native behavior of Kerbal Health, so it may not be appropriate as a general compatibility patch.

Edited by Fraz86

Share this post


Link to post
Share on other sites

Below is a draft of my KerbalHealth compatibility patch. I am quite  happy with the outcome, though as I mentioned before, it should be noted that this patch rebalances the native behavior of KerbalHealth. Unfortunately, I do not believe it is possible to achieve a satisfactory result without rebalancing.

//////////////////////////////////////////////////////////////////////////////////////////////
//  Experimental KerbalHealth Compatibility Patch For SSPX                                  //
//  By Fraz86                                                                               //
//                                                                                          //
//  WARNING - This patch substantially rebalances the KerbalHealth mod. Most importantly,   //
//  this patch dramatically reduces the ship-wide "recuperation" provided by the Cupola.    //
//  Without this reduction, Cupola-spam is objectively the optimal approach for missions    //
//  with large crews and/or long durations, leaving SSPX parts without any clear use case.  //
//                                                                                          //
//  MECHANICS - This patch makes it such that all habitation modules serve at least two     //
//  functions:                                                                              //
//  (1) Reduction of the "crowded" factor (larger, more luxurious modules provide greater   //
//  reductions). Kerbals benefit from this reduction regardless of their location on the    //
//  craft, though the total number of Kerbals who may benefit is limited to the crew        //
//  capacity of the module. Each Kerbal may only benefit from a single crowdedness-         //
//  reducing module (the best available is automatically used).                             //
//  (2) A small amount of "recuperation" is provided to all Kerbals physically present on   //
//  the module (larger, more luxurious modules provide greater recuperation).               //
//                                                                                          //
//  - In addition to the above, centrifuges also reduce or eliminate the microgravity       //
//  penalty for a number of Kerbals up to the centrifuge's crew capacity (Kerbals need not  //
//  be located on the centrifuge itself in order to benefit).                               //
//  - Cupolas/Observation Modules provide global recuperation bonuses, affecting all        //
//  Kerbals on the craft. These bonuses are quite small, but because crowdedness-reducing   //
//  effects do not stack, and hab modules only provide recuperation for Kerbals located on  //
//  the part itself, cupolas provide a means to achieve additional longevity.               //
//  - Placing a Kerbal inside a lab module reduces the impact of sickness.                  //
//////////////////////////////////////////////////////////////////////////////////////////////

@PART[cupola]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]:HAS[#recuperation[>0]]
	{
		@recuperation = 0.1
		!resourceConsumptionPerKerbal = DELETE
		%alwaysActive = true
	}
	!MODULE[ModuleKerbalHealth]:HAS[#multiplyFactor[Crowded]] {}
	!RESOURCE[RadiationShielding] {}
}
@PART[crewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]
	{
		@resourceConsumptionPerKerbal = 1.5
		@multiplier = 0.3
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 4
	}
}
@PART[MK1CrewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]
	{
		@resourceConsumptionPerKerbal = 1
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 2
	}
}
@PART[mk2CrewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 4
	}
}
@PART[mk3CrewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 16
	}
}
@PART[Large_Crewed_Lab]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]
	{
		@resourceConsumptionPerKerbal = 2
		@multiplier = 0.25
	}
}
@PART[sspx-lab-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		resourceConsumptionPerKerbal = 2.5
		multiplyFactor = Sickness
		multiplier = 0.25
		crewCap = 3
		partCrewOnly = true
	}
}
@PART[sspx-habitation-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 2
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 2
	}
}
@PART[sspx-utility-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 1
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 1
	}
}
@PART[sspx-inflatable-hab-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
}
@PART[sspx-inflatable-hab-125-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 3
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 3
	}
}
@PART[sspx-inflatable-hab-125-3]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 3
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 3
	}
}
@PART[sspx-inflatable-centrifuge-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0.25
		resourceConsumption = 6
		crewCap = 6
	}
}
@PART[sspx-inflatable-centrifuge-125-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.5
		resourceConsumptionPerKerbal = 1
		crewCap = 4
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 4
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0.5
		resourceConsumption = 4
		crewCap = 4
	}
}
@PART[sspx-habitation-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
}
@PART[sspx-observation-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.2
		alwaysActive = true
	}
	!RESOURCE[RadiationShielding] {}
}
@PART[sspx-inflatable-hab-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 18
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 18
	}
}
@PART[sspx-inflatable-hab-25-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 9
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 9
	}
}
@PART[sspx-inflatable-centrifuge-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 8
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.6
		partCrewOnly = true
		alwaysActive = true
		crewCap = 8
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0
		resourceConsumption = 8
		crewCap = 8
	}
}
@PART[sspx-habitation-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.05
		resourceConsumptionPerKerbal = 2.5
		crewCap = 12
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.6
		partCrewOnly = true
		alwaysActive = true
		crewCap = 12
	}
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 10
	}
}
@PART[sspx-habitation-375-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.05
		resourceConsumptionPerKerbal = 2.5
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.6
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 5
	}
}
@PART[sspx-habitation-375-3]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.5
		resourceConsumptionPerKerbal = 1
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 20
	}
}
@PART[sspx-core-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 5
	}
}
@PART[sspx-aquaculture-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 20
	}
}
@PART[sspx-cupola-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.1
		alwaysActive = true
	}
	!RESOURCE[RadiationShielding] {}
}
@PART[sspx-expandable-centrifuge-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0
		resourceConsumptionPerKerbal = 3
		crewCap = 14
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.7
		partCrewOnly = true
		alwaysActive = true
		crewCap = 14
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		alwaysActive = true
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0
		resourceConsumption = 14
		crewCap = 14
	}
}
@PART[sspx-expandable-centrifuge-375-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0
		resourceConsumptionPerKerbal = 3
		crewCap = 10
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.7
		partCrewOnly = true
		alwaysActive = true
		crewCap = 10
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0
		resourceConsumption = 10
		crewCap = 10
	}
}

 

Edited by Fraz86

Share this post


Link to post
Share on other sites

Since this thread is now about SSPXr (which looks incredible), is development of FFT being put on hold? Both seem like alot for one person (though Nert has demonstrated superhuman mod dev skills before :wink:)

Share this post


Link to post
Share on other sites

Hi, is this new work DirectX11 friendly? Searches in this topic did not have any hits since early 2016 and I'm trying to use only DX11 friendly mods. Thanks

Share this post


Link to post
Share on other sites

@Nertea

This should help you in getting all the parts speculars uniform...

Spoiler

@REFLECTION_CONFIG[default]:NEEDS[TexturesUnlimited] {
	%enabled = true
}

// sspx-hub-25-1,sspx-hub-125-1
@PART[*]:NEEDS[TexturesUnlimited&StationPartsExpansionRedux]:AFTER[zzzzStationParts]:HAS[@MODEL:HAS[#model[StationPartsExpansionRedux*]]] {
	MODULE {
		name = KSPTextureSwitch
		sectionName = Color
		currentTextureSet = StationPartsExpRedux_Default

		TEXTURESET {
			name = StationPartsExpRedux_Default
		}
		TEXTURESET
		{
			name = StationPartsExpRedux_Mylar
		}
	}
}
//@PART[Stairs]

KSP_TEXTURE_SET:NEEDS[TexturesUnlimited] {
	name = StationPartsExpRedux_Default
	title = Default
	recolorable = false

	TEXTURE {
		shader	= SSTU/PBR/StockMetallicBumped

		mesh = 25mHub
		mesh = 25mHub5
		mesh = 25mHub4
		mesh = 25mHub4WayPlanar
		mesh = 25mHub3
		mesh = 25mHub90
		mesh = 25mHub45
		mesh = 25mHub30

		mesh = 25Core (1)
		mesh = 25mCupola 1
		mesh = 25mTubeQuarter (1)
		mesh = 25mTubeShort (1)
		mesh = 25mTubeLong (1)
		mesh = 25mAttach (1)

		mesh = 25Adapter1 (1)
		mesh = 25Adapter2 (1)
		mesh = 25mCrewedLab
		mesh = Greenhouse
		mesh = Shutter01
		mesh = Shutter02
		mesh = Shutter03
		mesh = Shutter04
		mesh = Shutter05
		mesh = Shutter06
		mesh = Shutter07
		mesh = Shutter08
		mesh = Shutter09
		mesh = Shutter10
		mesh = Shutter11
		mesh = Shutter12

		mesh = 25mHitchiker (1)
		mesh = 25Observation (1)
		mesh = 25mHabLong (1)
		mesh = 25mAirlock
		mesh = Door1
		mesh = Door2
// airlock has lots of complicated docking meshes

		mesh = 25mCapWhite
		mesh = 25mCapWhiteBare
		mesh = 25mCapWhite5Way
		mesh = 25mCapWhiteBare5Way
		mesh = 25mCapWhite4Way
		mesh = 25mCapWhiteBare4Way
		mesh = 25mCapWhite4WayPlanar
		mesh = 25mCapWhiteBare4WayPlanar
		mesh = 25mCapWhite3Way
		mesh = 25mCapWhiteBare3Way
		mesh = 25mCapWhiteElbow
		mesh = 25mCapWhiteBareElbow
		mesh = 25mCapWhite45
		mesh = 25mCapWhiteBare45
		mesh = 25mCapWhite30
		mesh = 25mCapWhiteBare30

		mesh = 25mCapStructuralWhite
		mesh = 25mCapStructuralWhiteFlip
		mesh = 25mCapStructuralWhiteBare
		mesh = 25mCapStructuralWhiteFlipBare

		mesh = 125Hub
		mesh = 125Hub5
		mesh = 125Hub4
		mesh = 125Hub4Planar
		mesh = 125Hub3
		mesh = 125Hub90
		mesh = 125Hub45
		mesh = 125Hub30

		mesh = 125Core (1)
		mesh = 125Tube-Tiny (1)
		mesh = 125Tube-Small (1)
		mesh = 125Tube-Large (1)
		mesh = 125Attach (1)
		mesh = 125Habitation (1)
		mesh = 125Utility (1)
		mesh = 125Cupola (1)
		mesh = 125Airlock (1)

 		mesh = 125Adapter (1)

		mesh = 125EndcapWhite
		mesh = 125EndcapWhiteBare
		mesh = 125EndcapWhite5Way
		mesh = 125EndcapWhiteBare5Way
		mesh = 125EndcapWhite4Way
		mesh = 125EndcapWhiteBare4Way
		mesh = 125EndcapWhite4WayPlanar
		mesh = 125EndcapWhiteBare4WayPlanar
		mesh = 125EndcapWhite3Way
		mesh = 125EndcapWhiteBare3Way
		mesh = 125EndcapWhiteElbow
		mesh = 125EndcapWhiteBareElbow
		mesh = 125EndcapWhite45
		mesh = 125EndcapWhiteBare45
		mesh = 125EndcapWhite30
		mesh = 125EndcapWhiteBare30

		mesh = 125EndcapWhiteFlip
		mesh = 125EndcapWhiteBareFlip

		mesh = 375mCapWhite
		mesh = 375mCapWhiteBare
		mesh = 375mCapWhiteFlip
		mesh = 375mCapWhiteBareFlip

		mesh = Deformer
		mesh = Static (1)
		mesh = StaticSmall
		mesh = Deformablemini
		mesh = StaticSml001
		mesh = Deformablemini001

// metal plates
// 375Control (1)
// 375Cupola (1)
// CrewTubeAttach (1)
// CrewTubeSmall (1)
// CrewTubeMed (1)
// CrewTubeLarge (1)
// 375AdapterShort (1)
// 375AdapterTall (1)
// 375mGreenhouse (1)
// 375Aquaponics (1)
// 375ScienceLab (1)
// 375HabLong (1)
// 375Shelter (1)
// 375Test1 (1)

// organic
// GreenhousePlants (1) *should prolly leave this alone
// Plant01

		PROPERTY {
			name = _Color
			color = 1.0,1.0,1.0,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.0
		}
		PROPERTY {
			name = _Smoothness
			float = 1.0
		}
	}
	TEXTURE {
		shader	= SSTU/PBR/StockMetallicBumped

		mesh = 25mCapBlack
		mesh = 25mCapBlackBare
		mesh = 25mCapBlack5Way
		mesh = 25mCapBlackBare5Way
		mesh = 25mCapBlack4Way
		mesh = 25mCapBlackBare4Way
		mesh = 25mCapBlack4WayPlanar
		mesh = 25mCapBlackBare4WayPlanar
		mesh = 25mCapBlack3Way
		mesh = 25mCapBlackBare3Way
		mesh = 25mCapBlackElbow
		mesh = 25mCapBlackBareElbow
		mesh = 25mCapBlack45
		mesh = 25mCapBlackBare45
		mesh = 25mCapBlack30
		mesh = 25mCapBlackBare30

		mesh = 25mCapStructuralBlack
		mesh = 25mCapStructuralBlackFlip
		mesh = 25mCapStructuralBlackBare
		mesh = 25mCapStructuralBlackFlipBare

		mesh = 125EndcapBlack
		mesh = 125EndcapBlackBare
		mesh = 125EndcapBlack5Way
		mesh = 125EndcapBlackBare5Way
		mesh = 125EndcapBlack4Way
		mesh = 125EndcapBlackBare4Way
		mesh = 125EndcapBlack4WayPlanar
		mesh = 125EndcapBlackBare4WayPlanar
		mesh = 125EndcapBlack3Way
		mesh = 125EndcapBlackBare3Way
		mesh = 125EndcapBlackElbow
		mesh = 125EndcapBlackBareElbow
		mesh = 125EndcapBlack45
		mesh = 125EndcapBlackBare45
		mesh = 125EndcapBlack30
		mesh = 125EndcapBlackBare30

		mesh = 125EndcapBlackFlip
		mesh = 125EndcapBlackBareFlip

		mesh = 375mCapBlack
		mesh = 375mCapBlackBare
		mesh = 375mCapBlackFlip
		mesh = 375mCapBlackBareFlip

		PROPERTY {
			name = _Color
			color = 1.75,1.75,1.75,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.75
		}
		PROPERTY {
			name = _Smoothness
			float = 1.0
		}
	}
	TEXTURE {
		shader	= SSTU/PBR/Metallic

		mesh =  25mCapFoil
		mesh =  25mCapFoilFlip
		mesh =  25mCapFoil5Way
		mesh =  25mCapFoil4Way
		mesh =  25mCapFoil4WayPlanar
		mesh =  25mCapFoil3Way
		mesh =  25mCapFoilElbow
		mesh =  25mCapFoil45
		mesh =  25mCapFoil30

		//mesh =  125CapFoil
		//mesh =  125CapFoil5Way
		//mesh =  125CapFoil4Way
		//mesh =  125CapFoil4WayPlanar
		//mesh =  125CapFoil3Way
		//mesh =  125CapFoilElbow
		//mesh =  125CapFoil45
		//mesh =  125CapFoil30

		PROPERTY {
			name = _Color
			color = 1.75,1.75,1.75,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.75
		}
		PROPERTY {
			name = _Smoothness
			float = 0.9
		}
	}
	TEXTURE {
		shader = SSTU/PBR/MetallicTransparent

		mesh = GreenhouseGlass (1)
		//mesh = GreenhouseGlass (2) *no idea where this is

		PROPERTY {
			name = _Color
			color = 1.0,1.0,1.0,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.0
		}
		PROPERTY {
			name = _Smoothness
			float = 1.0
		}
	}
}

+KSP_TEXTURE_SET[StationPartsExpRedux_Default]:NEEDS[TexturesUnlimited] {
	@name = StationPartsExpRedux_Mylar
	@title = Mylar
	@TEXTURE,0 {
		@PROPERTY[_Color] {
			@color = 1.75,1.75,1.75,1.0
		}
		@PROPERTY[_Metal] {
			@float = 0.75
		}
		@PROPERTY[_Smoothness] {
			@float = 1.2
		}
	}
}

 

 

Share this post


Link to post
Share on other sites

Been away for a while, so I'm back now. Nice to see a distinct lack of bug reports!

On 12/25/2017 at 11:54 PM, Fraz86 said:

Below is a draft of my KerbalHealth compatibility patch. I am quite  happy with the outcome, though as I mentioned before, it should be noted that this patch rebalances the native behavior of KerbalHealth. Unfortunately, I do not believe it is possible to achieve a satisfactory result without rebalancing.


//////////////////////////////////////////////////////////////////////////////////////////////
//  Experimental KerbalHealth Compatibility Patch For SSPX                                  //
//  By Fraz86                                                                               //
//                                                                                          //
//  WARNING - This patch substantially rebalances the KerbalHealth mod. Most importantly,   //
//  this patch dramatically reduces the ship-wide "recuperation" provided by the Cupola.    //
//  Without this reduction, Cupola-spam is objectively the optimal approach for missions    //
//  with large crews and/or long durations, leaving SSPX parts without any clear use case.  //
//                                                                                          //
//  MECHANICS - This patch makes it such that all habitation modules serve at least two     //
//  functions:                                                                              //
//  (1) Reduction of the "crowded" factor (larger, more luxurious modules provide greater   //
//  reductions). Kerbals benefit from this reduction regardless of their location on the    //
//  craft, though the total number of Kerbals who may benefit is limited to the crew        //
//  capacity of the module. Each Kerbal may only benefit from a single crowdedness-         //
//  reducing module (the best available is automatically used).                             //
//  (2) A small amount of "recuperation" is provided to all Kerbals physically present on   //
//  the module (larger, more luxurious modules provide greater recuperation).               //
//                                                                                          //
//  - In addition to the above, centrifuges also reduce or eliminate the microgravity       //
//  penalty for a number of Kerbals up to the centrifuge's crew capacity (Kerbals need not  //
//  be located on the centrifuge itself in order to benefit).                               //
//  - Cupolas/Observation Modules provide global recuperation bonuses, affecting all        //
//  Kerbals on the craft. These bonuses are quite small, but because crowdedness-reducing   //
//  effects do not stack, and hab modules only provide recuperation for Kerbals located on  //
//  the part itself, cupolas provide a means to achieve additional longevity.               //
//  - Placing a Kerbal inside a lab module reduces the impact of sickness.                  //
//////////////////////////////////////////////////////////////////////////////////////////////

@PART[cupola]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]:HAS[#recuperation[>0]]
	{
		@recuperation = 0.1
		!resourceConsumptionPerKerbal = DELETE
		%alwaysActive = true
	}
	!MODULE[ModuleKerbalHealth]:HAS[#multiplyFactor[Crowded]] {}
	!RESOURCE[RadiationShielding] {}
}
@PART[crewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]
	{
		@resourceConsumptionPerKerbal = 1.5
		@multiplier = 0.3
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 4
	}
}
@PART[MK1CrewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]
	{
		@resourceConsumptionPerKerbal = 1
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 2
	}
}
@PART[mk2CrewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 4
	}
}
@PART[mk3CrewCabin]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 16
	}
}
@PART[Large_Crewed_Lab]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	@MODULE[ModuleKerbalHealth]
	{
		@resourceConsumptionPerKerbal = 2
		@multiplier = 0.25
	}
}
@PART[sspx-lab-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		resourceConsumptionPerKerbal = 2.5
		multiplyFactor = Sickness
		multiplier = 0.25
		crewCap = 3
		partCrewOnly = true
	}
}
@PART[sspx-habitation-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 2
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 2
	}
}
@PART[sspx-utility-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 1
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 1
	}
}
@PART[sspx-inflatable-hab-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
}
@PART[sspx-inflatable-hab-125-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 3
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 3
	}
}
@PART[sspx-inflatable-hab-125-3]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 3
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 3
	}
}
@PART[sspx-inflatable-centrifuge-125-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.3
		resourceConsumptionPerKerbal = 1.5
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0.25
		resourceConsumption = 6
		crewCap = 6
	}
}
@PART[sspx-inflatable-centrifuge-125-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.5
		resourceConsumptionPerKerbal = 1
		crewCap = 4
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.4
		partCrewOnly = true
		alwaysActive = true
		crewCap = 4
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0.5
		resourceConsumption = 4
		crewCap = 4
	}
}
@PART[sspx-habitation-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
}
@PART[sspx-observation-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.2
		alwaysActive = true
	}
	!RESOURCE[RadiationShielding] {}
}
@PART[sspx-inflatable-hab-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 18
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 18
	}
}
@PART[sspx-inflatable-hab-25-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 9
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.5
		partCrewOnly = true
		alwaysActive = true
		crewCap = 9
	}
}
@PART[sspx-inflatable-centrifuge-25-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.1
		resourceConsumptionPerKerbal = 2
		crewCap = 8
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.6
		partCrewOnly = true
		alwaysActive = true
		crewCap = 8
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0
		resourceConsumption = 8
		crewCap = 8
	}
}
@PART[sspx-habitation-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.05
		resourceConsumptionPerKerbal = 2.5
		crewCap = 12
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.6
		partCrewOnly = true
		alwaysActive = true
		crewCap = 12
	}
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 10
	}
}
@PART[sspx-habitation-375-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.05
		resourceConsumptionPerKerbal = 2.5
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.6
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 5
	}
}
@PART[sspx-habitation-375-3]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0.5
		resourceConsumptionPerKerbal = 1
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		partCrewOnly = true
		alwaysActive = true
		crewCap = 6
	}
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 20
	}
}
@PART[sspx-core-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 5
	}
}
@PART[sspx-aquaculture-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		alwaysActive = true
		shielding = 20
	}
}
@PART[sspx-cupola-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.1
		alwaysActive = true
	}
	!RESOURCE[RadiationShielding] {}
}
@PART[sspx-expandable-centrifuge-375-1]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0
		resourceConsumptionPerKerbal = 3
		crewCap = 14
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.7
		partCrewOnly = true
		alwaysActive = true
		crewCap = 14
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.3
		alwaysActive = true
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0
		resourceConsumption = 14
		crewCap = 14
	}
}
@PART[sspx-expandable-centrifuge-375-2]:NEEDS[KerbalHealth]:AFTER[KerbalHealth]
{
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Crowded
		multiplier = 0
		resourceConsumptionPerKerbal = 3
		crewCap = 10
	}
	MODULE
	{
		name = ModuleKerbalHealth
		recuperation = 0.7
		partCrewOnly = true
		alwaysActive = true
		crewCap = 10
	}
	MODULE
	{
		name = ModuleKerbalHealth
		multiplyFactor = Microgravity
		multiplier = 0
		resourceConsumption = 10
		crewCap = 10
	}
}

 

I'm wary of including this if it directly affects behaviour of another mod. Seems like that could be a problem, though from what you've written, I agree with your changes. I wonder if the dev of KerbalHealth would be open to your suggestions?

On 12/28/2017 at 4:53 AM, Hoddd9000 said:

Since this thread is now about SSPXr (which looks incredible), is development of FFT being put on hold? Both seem like alot for one person (though Nert has demonstrated superhuman mod dev skills before :wink:)

Effectively FFT has been on hold for several months. I don't usually work on more than one mod at once, though I'll point out that . 

On 12/30/2017 at 7:37 AM, Gilph said:

Hi, is this new work DirectX11 friendly? Searches in this topic did not have any hits since early 2016 and I'm trying to use only DX11 friendly mods. Thanks

Can't see how a part mod would care really. 

On 12/31/2017 at 8:15 AM, Electrocutor said:

@Nertea

This should help you in getting all the parts speculars uniform...

  Reveal hidden contents


@REFLECTION_CONFIG[default]:NEEDS[TexturesUnlimited] {
	%enabled = true
}

// sspx-hub-25-1,sspx-hub-125-1
@PART[*]:NEEDS[TexturesUnlimited&StationPartsExpansionRedux]:AFTER[zzzzStationParts]:HAS[@MODEL:HAS[#model[StationPartsExpansionRedux*]]] {
	MODULE {
		name = KSPTextureSwitch
		sectionName = Color
		currentTextureSet = StationPartsExpRedux_Default

		TEXTURESET {
			name = StationPartsExpRedux_Default
		}
		TEXTURESET
		{
			name = StationPartsExpRedux_Mylar
		}
	}
}
//@PART[Stairs]

KSP_TEXTURE_SET:NEEDS[TexturesUnlimited] {
	name = StationPartsExpRedux_Default
	title = Default
	recolorable = false

	TEXTURE {
		shader	= SSTU/PBR/StockMetallicBumped

		mesh = 25mHub
		mesh = 25mHub5
		mesh = 25mHub4
		mesh = 25mHub4WayPlanar
		mesh = 25mHub3
		mesh = 25mHub90
		mesh = 25mHub45
		mesh = 25mHub30

		mesh = 25Core (1)
		mesh = 25mCupola 1
		mesh = 25mTubeQuarter (1)
		mesh = 25mTubeShort (1)
		mesh = 25mTubeLong (1)
		mesh = 25mAttach (1)

		mesh = 25Adapter1 (1)
		mesh = 25Adapter2 (1)
		mesh = 25mCrewedLab
		mesh = Greenhouse
		mesh = Shutter01
		mesh = Shutter02
		mesh = Shutter03
		mesh = Shutter04
		mesh = Shutter05
		mesh = Shutter06
		mesh = Shutter07
		mesh = Shutter08
		mesh = Shutter09
		mesh = Shutter10
		mesh = Shutter11
		mesh = Shutter12

		mesh = 25mHitchiker (1)
		mesh = 25Observation (1)
		mesh = 25mHabLong (1)
		mesh = 25mAirlock
		mesh = Door1
		mesh = Door2
// airlock has lots of complicated docking meshes

		mesh = 25mCapWhite
		mesh = 25mCapWhiteBare
		mesh = 25mCapWhite5Way
		mesh = 25mCapWhiteBare5Way
		mesh = 25mCapWhite4Way
		mesh = 25mCapWhiteBare4Way
		mesh = 25mCapWhite4WayPlanar
		mesh = 25mCapWhiteBare4WayPlanar
		mesh = 25mCapWhite3Way
		mesh = 25mCapWhiteBare3Way
		mesh = 25mCapWhiteElbow
		mesh = 25mCapWhiteBareElbow
		mesh = 25mCapWhite45
		mesh = 25mCapWhiteBare45
		mesh = 25mCapWhite30
		mesh = 25mCapWhiteBare30

		mesh = 25mCapStructuralWhite
		mesh = 25mCapStructuralWhiteFlip
		mesh = 25mCapStructuralWhiteBare
		mesh = 25mCapStructuralWhiteFlipBare

		mesh = 125Hub
		mesh = 125Hub5
		mesh = 125Hub4
		mesh = 125Hub4Planar
		mesh = 125Hub3
		mesh = 125Hub90
		mesh = 125Hub45
		mesh = 125Hub30

		mesh = 125Core (1)
		mesh = 125Tube-Tiny (1)
		mesh = 125Tube-Small (1)
		mesh = 125Tube-Large (1)
		mesh = 125Attach (1)
		mesh = 125Habitation (1)
		mesh = 125Utility (1)
		mesh = 125Cupola (1)
		mesh = 125Airlock (1)

 		mesh = 125Adapter (1)

		mesh = 125EndcapWhite
		mesh = 125EndcapWhiteBare
		mesh = 125EndcapWhite5Way
		mesh = 125EndcapWhiteBare5Way
		mesh = 125EndcapWhite4Way
		mesh = 125EndcapWhiteBare4Way
		mesh = 125EndcapWhite4WayPlanar
		mesh = 125EndcapWhiteBare4WayPlanar
		mesh = 125EndcapWhite3Way
		mesh = 125EndcapWhiteBare3Way
		mesh = 125EndcapWhiteElbow
		mesh = 125EndcapWhiteBareElbow
		mesh = 125EndcapWhite45
		mesh = 125EndcapWhiteBare45
		mesh = 125EndcapWhite30
		mesh = 125EndcapWhiteBare30

		mesh = 125EndcapWhiteFlip
		mesh = 125EndcapWhiteBareFlip

		mesh = 375mCapWhite
		mesh = 375mCapWhiteBare
		mesh = 375mCapWhiteFlip
		mesh = 375mCapWhiteBareFlip

		mesh = Deformer
		mesh = Static (1)
		mesh = StaticSmall
		mesh = Deformablemini
		mesh = StaticSml001
		mesh = Deformablemini001

// metal plates
// 375Control (1)
// 375Cupola (1)
// CrewTubeAttach (1)
// CrewTubeSmall (1)
// CrewTubeMed (1)
// CrewTubeLarge (1)
// 375AdapterShort (1)
// 375AdapterTall (1)
// 375mGreenhouse (1)
// 375Aquaponics (1)
// 375ScienceLab (1)
// 375HabLong (1)
// 375Shelter (1)
// 375Test1 (1)

// organic
// GreenhousePlants (1) *should prolly leave this alone
// Plant01

		PROPERTY {
			name = _Color
			color = 1.0,1.0,1.0,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.0
		}
		PROPERTY {
			name = _Smoothness
			float = 1.0
		}
	}
	TEXTURE {
		shader	= SSTU/PBR/StockMetallicBumped

		mesh = 25mCapBlack
		mesh = 25mCapBlackBare
		mesh = 25mCapBlack5Way
		mesh = 25mCapBlackBare5Way
		mesh = 25mCapBlack4Way
		mesh = 25mCapBlackBare4Way
		mesh = 25mCapBlack4WayPlanar
		mesh = 25mCapBlackBare4WayPlanar
		mesh = 25mCapBlack3Way
		mesh = 25mCapBlackBare3Way
		mesh = 25mCapBlackElbow
		mesh = 25mCapBlackBareElbow
		mesh = 25mCapBlack45
		mesh = 25mCapBlackBare45
		mesh = 25mCapBlack30
		mesh = 25mCapBlackBare30

		mesh = 25mCapStructuralBlack
		mesh = 25mCapStructuralBlackFlip
		mesh = 25mCapStructuralBlackBare
		mesh = 25mCapStructuralBlackFlipBare

		mesh = 125EndcapBlack
		mesh = 125EndcapBlackBare
		mesh = 125EndcapBlack5Way
		mesh = 125EndcapBlackBare5Way
		mesh = 125EndcapBlack4Way
		mesh = 125EndcapBlackBare4Way
		mesh = 125EndcapBlack4WayPlanar
		mesh = 125EndcapBlackBare4WayPlanar
		mesh = 125EndcapBlack3Way
		mesh = 125EndcapBlackBare3Way
		mesh = 125EndcapBlackElbow
		mesh = 125EndcapBlackBareElbow
		mesh = 125EndcapBlack45
		mesh = 125EndcapBlackBare45
		mesh = 125EndcapBlack30
		mesh = 125EndcapBlackBare30

		mesh = 125EndcapBlackFlip
		mesh = 125EndcapBlackBareFlip

		mesh = 375mCapBlack
		mesh = 375mCapBlackBare
		mesh = 375mCapBlackFlip
		mesh = 375mCapBlackBareFlip

		PROPERTY {
			name = _Color
			color = 1.75,1.75,1.75,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.75
		}
		PROPERTY {
			name = _Smoothness
			float = 1.0
		}
	}
	TEXTURE {
		shader	= SSTU/PBR/Metallic

		mesh =  25mCapFoil
		mesh =  25mCapFoilFlip
		mesh =  25mCapFoil5Way
		mesh =  25mCapFoil4Way
		mesh =  25mCapFoil4WayPlanar
		mesh =  25mCapFoil3Way
		mesh =  25mCapFoilElbow
		mesh =  25mCapFoil45
		mesh =  25mCapFoil30

		//mesh =  125CapFoil
		//mesh =  125CapFoil5Way
		//mesh =  125CapFoil4Way
		//mesh =  125CapFoil4WayPlanar
		//mesh =  125CapFoil3Way
		//mesh =  125CapFoilElbow
		//mesh =  125CapFoil45
		//mesh =  125CapFoil30

		PROPERTY {
			name = _Color
			color = 1.75,1.75,1.75,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.75
		}
		PROPERTY {
			name = _Smoothness
			float = 0.9
		}
	}
	TEXTURE {
		shader = SSTU/PBR/MetallicTransparent

		mesh = GreenhouseGlass (1)
		//mesh = GreenhouseGlass (2) *no idea where this is

		PROPERTY {
			name = _Color
			color = 1.0,1.0,1.0,1.0
		}
		PROPERTY {
			name = _Metal
			float = 0.0
		}
		PROPERTY {
			name = _Smoothness
			float = 1.0
		}
	}
}

+KSP_TEXTURE_SET[StationPartsExpRedux_Default]:NEEDS[TexturesUnlimited] {
	@name = StationPartsExpRedux_Mylar
	@title = Mylar
	@TEXTURE,0 {
		@PROPERTY[_Color] {
			@color = 1.75,1.75,1.75,1.0
		}
		@PROPERTY[_Metal] {
			@float = 0.75
		}
		@PROPERTY[_Smoothness] {
			@float = 1.2
		}
	}
}

 

 

Not sure what you mean here. Is this for PBR stuff?

Share this post


Link to post
Share on other sites
18 minutes ago, Nertea said:

Not sure what you mean here. Is this for PBR stuff?

Correct, with TU, it is much easier to see the differences in specular values in-game and thus easier to get them to properly match. For example, right now the end-cap specular when set to white does not match the white padding on the structural pieces; the same goes for some other parts. This config isn't yet complete, but has most of the 25 and 125 parts covered, so should be quite helpful.

The Default option is straight-up specular; no PBR anything; merely the specular supports reflections and properly reflects light unlike the stock shaders.

The Mylar option is set with the 25m Hub specular value as reference.

Edited by Electrocutor

Share this post


Link to post
Share on other sites

Both FFT and SSPXR have been all good for me so far. The auto-level landing cradles are pretty cool. I do kind of wish they had a bit of suspension for the initial landing - but understandably may not be possible. Or some kind of extendable stabilizer so they're a little less tip prone during said landing. I did a couple of 2 m/s landings on the Mun at 0-5 degree grades and it seemed super tippy, like surprisingly so. However I usually build landers with pretty wide bases so could be I wasn't used to one with a base the same size as the rest of the stack. Of course once you're down and you can turn on auto-level it works great. I added the USI ground tether function to them as well for my own game and that also works great.

Share this post


Link to post
Share on other sites

This is pretty amazing, Nertea. One thing I've noticed is some strange behavior w/ kerbals on ladders. They end up climbing backwards on the re-skinned mobile science lab and tend to slide up and down on their own. I've noticed the sliding with the 7-crew pod as well (Near future spacecraft I think?)

Share this post


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

Correct, with TU, it is much easier to see the differences in specular values in-game and thus easier to get them to properly match. For example, right now the end-cap specular when set to white does not match the white padding on the structural pieces; the same goes for some other parts. This config isn't yet complete, but has most of the 25 and 125 parts covered, so should be quite helpful.

The Default option is straight-up specular; no PBR anything; merely the specular supports reflections and properly reflects light unlike the stock shaders.

The Mylar option is set with the 25m Hub specular value as reference.

Well... that's not really my problem until I actually decide to tackle a PBR conversion, no?

4 hours ago, helaeon said:

Both FFT and SSPXR have been all good for me so far. The auto-level landing cradles are pretty cool. I do kind of wish they had a bit of suspension for the initial landing - but understandably may not be possible. Or some kind of extendable stabilizer so they're a little less tip prone during said landing. I did a couple of 2 m/s landings on the Mun at 0-5 degree grades and it seemed super tippy, like surprisingly so. However I usually build landers with pretty wide bases so could be I wasn't used to one with a base the same size as the rest of the stack. Of course once you're down and you can turn on auto-level it works great. I added the USI ground tether function to them as well for my own game and that also works great.

Unfortunately adding suspension to the legs creates a situation where there is no analytical solution to the leveling (nightmare time). I can say that you can use the autolevel function above the surface too, it'll level to above your destination terrain which will help a bunch. 

2 hours ago, Pthigrivi said:

This is pretty amazing, Nertea. One thing I've noticed is some strange behavior w/ kerbals on ladders. They end up climbing backwards on the re-skinned mobile science lab and tend to slide up and down on their own. I've noticed the sliding with the 7-crew pod as well (Near future spacecraft I think?)

If you could enumerate for me the parts that have problems that'd be great. 

Share this post


Link to post
Share on other sites
37 minutes ago, Nertea said:

Well... that's not really my problem until I actually decide to tackle a PBR conversion, no?

Well, specular is supported by stock KSP and used by the porkjet-made parts. Whether or not you choose to utilize it is up to. For example, RoverDude usually only makes diffuse textures in RGB and not RGBA, completely ignoring specular as it takes some extra time to do. If you choose to support specular, however, using TU helps greatly in finding the right values.

Share this post


Link to post
Share on other sites
22 hours ago, Electrocutor said:

Well, specular is supported by stock KSP and used by the porkjet-made parts. Whether or not you choose to utilize it is up to. For example, RoverDude usually only makes diffuse textures in RGB and not RGBA, completely ignoring specular as it takes some extra time to do. If you choose to support specular, however, using TU helps greatly in finding the right values.

I'm pretty sure I know what specular maps are.

What I mean is that I handcraft the specular values with focus on KSP's shader model - there's no "right" value, even particularly between similar parts. Bundling TU to normalize all the specular exponents seems like overkill and not what I want to do from an aesthetics point of view. So going back - I'm not sure how that MM patch helps me? If I wanted them uniform the best way would be to literally type the numbers into the shader when I export the parts.

4 hours ago, Psycho_zs said:

 PXL-10 may be a bit too light

I might add a bit of weight? All the station cores have been baselined at 0.625t/ kerbal, plus a bit of mass for the integrated battery. That's the same as the other orbital parts, but I guess the station cores could be a bit heavier per kerbal.

edit: I think my spreadsheet had a copy error, mass should already be 0.75t/kerbal. The 3.75m pod should be 3.7725t.

Edited by Nertea

Share this post


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

I'm pretty sure I know what specular maps are.

What I mean is that I handcraft the specular values with focus on KSP's shader model - there's no "right" value, even particularly between similar parts. Bundling TU to normalize all the specular exponents seems like overkill and not what I want to do from an aesthetics point of view. So going back - I'm not sure how that MM patch helps me? If I wanted them uniform the best way would be to literally type the numbers into the shader when I export the parts.

You and I are clearly on two different pages. It's fine, I'll just wait until the first release then see if some of them were missed and let you know. Somehow you seem to have the idea that you actually have to use the PBR aspect of TU and that you need to change values for things to make them look right in TU, which is not the case.

As far as different parts having vastly different specular or no specular at all, that is completely your choice. In my mind, I had thought anything made of the same white padded material would be the same specular pattern, especially so when its different areas of the same part with the same material. 

 

I anxiously await this mod, as your detail-oriented and highly practical parts here fill a large gap in KSP.
(I was trying to be helpful; but I think I am only causing frustration which is the the exact opposite)

Edited by Electrocutor

Share this post


Link to post
Share on other sites

Quick update on the previous design. Built up the full transit module and docked a large lander in the front, also using salt-water engines... thus, large radiators. So far, works rather well. A few learning points:

  1. Part count is still your enemy, even with a ridiculously overpowered computer. (Part count is 200-300, I think.)
  2. Don't worry about good Hohmann transfers. With these engines, you often have enough dV that saving a few thousand dV isn't worth the time in life-support and even just waiting for the transfer window. Just burn straight up from the launch pad and keep going until you escape Kerbin SoI, then plot an intercept orbit.
  3. Decelerate with your transit engines resonably far from your destination. Again, don't worry about fuel efficient, close intercept burns. Pick a few thousand Km out or something.
  4. I ended up with a final thrust to weight ratio of like. 0.1 It's horrible. Horrible. In future designs, I'll keep it closer to 1.

Speaking of future designs, next one will use these new SSPXr parts!

Finally, wouldn't be much of an update without a pic:

4QirzgL.jpg?1

Looking forward to the new parts, and MOAR ENGINES on my next ship.

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.