Skip to content

Commit

Permalink
v.01.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Nightside101010 authored Dec 10, 2017
1 parent 875c121 commit 7ba900f
Show file tree
Hide file tree
Showing 19 changed files with 1,490 additions and 0 deletions.
134 changes: 134 additions & 0 deletions Transmogrifier/000Transmogrifier.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
// Copyright 2017 Nightside
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//
// HEAVILY inspired by Kerbas Ad Astra's masterpiece of ModuleManager configury, SMURFF, thanks K.A.A.!
//Single part custom scaling example
//@PART[partName]
//{
// %TransmogrifyExclude = true
//
// customScalar = x //<custom value here
//
// @rescaleFactor = #$customScalar$
//}
//***SETTING***
//Set transmogrifierScalar to whatever rescaling you want. 1.6 is approximately real sized.(1.6*0.625 = 1)
//This scales the Mk1 pod to a diameter of 2 meters, similar to the Mercury capsule.
TRANSMOGRIFIER
{
transmogrifierScalar = 1.6 //1.6 will make stock parts approximately real sized.
}
//***TRANSMOGRIFIER CALCULATIONS - DO NOT MODIFY BELOW***
@TRANSMOGRIFIER:FIRST
{
name = transmogrifier
areaScalar = #$transmogrifierScalar$ //Primarily used to buff engine thusts.
@areaScalar != 2 //Squares the base value: 1.6^2 = 2.56
volumeScalar = #$transmogrifierScalar$ //Used for volume and mass changes.
@volumeScalar != 3 //Cubes base value: 1.6^3= 4.096
}
//*** EXCLUSIONS ***
//Sadly, I haven't been able to resize EVA kerbals, if you figure it out let me know.
@PART[kerbalEVA,kerbalEVAfemale]:FIRST
{
TransmogrifyExclude = true
}

//Stock fairings need special treatment, exclude from this pass.
@PART[*]:HAS[@MODULE[ModuleProceduralFairing]]:First
{
TransmogrifyExclude = true
}

//***RESIZE PARTS*** No refunds

@PART[*]:HAS[~TransmogrifyExclude[*rue]]:FOR[TRANSMOGRIFIER]
{
&rescaleFactor = 1.25 //Catch any parts without rescaleFactor defined (old squad parts). This might do something bad if a part is not already 1.25m...
@rescaleFactor *= #$@TRANSMOGRIFIER/transmogrifierScalar$ //Rescale all by the transmogrifier value
}

//***PAYLOAD FAIRINGS***
//FIXME ignores autotrusses for now. Not sure if
@PART[*]:HAS[@MODULE[ModuleProceduralFairing]]:FOR[TRANSMOGRIFIER]
{
@MODEL,0 //[*] //see if i can catch both model defs here
{
&scale = 1.0, 1.0, 1.0
@scale[*] *= #$@TRANSMOGRIFIER/transmogrifierScalar$
}
//I don't use fairing AutoTruss, so this is off unless there is some interest.
// @MODEL,1
// {
// //model = Squad/Parts/Aero/fairings/AutoTruss
// &scale = 1.0, 1.0, 1.0
// @scale[*] *= #$@TRANSMOGRIFIER/transmogrifierScalar$
// //position = 0.0,0.22,0.0
// }
//rescaleFactor = 1
// @node_stack_interstage01a,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
// @node_stack_interstage01b,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
//
// @node_stack_interstage02a,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
// @node_stack_interstage02b,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
//
// @node_stack_interstage03a,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
// @node_stack_interstage03b,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
//
// @node_stack_interstage04a,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
// @node_stack_interstage04b,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
//
// @node_stack_interstage05a,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
// @node_stack_interstage05b,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
//
// @node_stack_interstage06a,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
// @node_stack_interstage06b,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
@node_stack_top,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
@node_stack_bottom,1 *= #$@TRANSMOGRIFIER/transmogrifierScalar$
//fx_gasBurst_white = 0.0, 0.3, 0.0, 0.0, 1.0, 0.0, deploy
@MODULE[ModuleProceduralFairing]
{
@baseRadius *= #$@TRANSMOGRIFIER/transmogrifierScalar$
@maxRadius *= #$@TRANSMOGRIFIER/transmogrifierScalar$
@capRadius *= #$@TRANSMOGRIFIER/transmogrifierScalar$
@xSectionHeightMax *= #$@TRANSMOGRIFIER/transmogrifierScalar$
//UnitAreaMass = 0.016 //fixme
//UnitAreaCost = 18 //fixme
}
@MODULE[ModuleCargoBay]
{
@lookupRadius *= #$@TRANSMOGRIFIER/transmogrifierScalar$
}
}
@PART[*]:HAS[@MODULE[ModuleLiftingSurface],~TransmogrifyExclude[*rue]]:FOR[TRANSMOGRIFIER]
{
@MODULE[ModuleLiftingSurface]
{
@deflectionLiftCoeff *= #$@TRANSMOGRIFIER/areaScalar$
}
}
10 changes: 10 additions & 0 deletions Transmogrifier/Compatibility/RealScaleBoosters.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//EXCLUSIONS
//Exclude all RealScaleBoosters parts from resize
//todo- add realscale sea dragon
//fixme - It seems like this patch doesn't catch every RSB part
@PART[RSB*]:FIRST:NEEDS[RealScaleBoosters]
{
%TransmogrifyExclude = true
}
5 changes: 5 additions & 0 deletions Transmogrifier/Compatibility/SSTU-WIP/0-SSTU.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
@PART[SSTU*]:NEEDS[SSTU]:FIRST
{
%TransmogrifyExclude = true
%SMURFFExclude = true
}
35 changes: 35 additions & 0 deletions Transmogrifier/Compatibility/SSTU-WIP/1-SSTU-ENGINES.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
//ENGINES RESIZE

//ENGINE CLUSTERS
@PART[SSTU*]:HAS[@MODULE[SSTUModularEngineCluster]]:NEEDS[SSTU]
{
@node_stack_top[1] *= 1.6 //= 0,1.45,0,0,1,0,2
@node_stack_bottom[1] *= 1.6 //= 0,-2.835,0,0,-1,0,2
@node_stack_interstage[1] *= 1.6 //= 0, -1, 0, 0, -1, 0, 2
@node_attach[1] *= 1.6 // = 0, 1.45, 0, 0, 1, 0, 2
@MODULE[SSTUModularEngineCluster]
{
@engineSpacing *= 1.6
//engineHeight *= 1.6 //try turning this back on.. see if top node get moved, otherwise, change node defs
//engineYOffset = 0
@engineScale *= 1.6 // = 0
@partTopY *= 1.6 // = 0.5
//smokeTransformName = SmokeTransform
//smokeTransformOffset = -1
@diameterIncrement = 0.5 //= 0.625
//@engineMountDiameter *= 1.6 //= 0.87
//upperStageMounts = true
//lowerStageMounts = false
@LAYOUT[*]
{
//name = Single
@MOUNT[*]
{
//name = Mount-Shroud
@size *= 1.6 //= 2.5
//@minSize *= 1.6 //= 2.5
@maxSize *= 1.6 //= 2.5
}
}
}
}
131 changes: 131 additions & 0 deletions Transmogrifier/Compatibility/SSTU-WIP/1-SSTU-decouplers.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
//SSTU Decouplers

//Single part custom scaling example
//SSTU Decouplers

@PART[SSTU*]:HAS[@MODULE[SSTUProceduralDecoupler]]:NEEDS[SSTU]:FOR[TRANSMOGRIFIER]
{
@MODULE[SSTUProceduralDecoupler]
{
//name = SSTUProceduralDecoupler
@diameter *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$ //1.6
@minDiameter = 0.5 //= 0.625
@maxDiameter *= 1.6 //= 1.25
//height = 0.1
//minHeight = 0.1
//maxHeight = 0.5
//thickness = 0.2
//minThickness = 0.1
@maxThickness *= #$@TRANSMOGRIFIER/transmogrifierScalar$ //= 0.5
//massPerCubicMeter = 0.4
//costPerCubicMeter = 5000
//forcePerKg = 0.75

@UPGRADES
{
@UPGRADE,*
{
@maxDiameter *= #$@TRANSMOGRIFIER/transmogrifierScalar$ //= 1.875
}
}
}
}

@PART[SSTU*]:HAS[@MODULE[SSTUInterstageDecoupler]]:NEEDS[SSTU]:FOR[TRANSMOGRIFIER]
{
@MODULE[SSTUInterstageDecoupler]
{
//name = SSTUInterstageDecoupler
//explosiveNodeID = bottom
//explosiveForce = 0

//stagingEnabled = true
//stagingToggleEnabledEditor = true
//stagingToggleEnabledFlight = true
//stagingEnableText = Enable Bottom DC Staging
//stagingDisableText = Disable Bottom DC Staging

//modelName = SSTU/Assets/SC-ENG-ULLAGE-A
//defaultModelScale = 5
//resourceVolume = 1
//engineMass = 0.15
//engineThrust = 500
//scaleThrust = true
@thrustScalePower = 2
//useRF = false
//fuelPreset = Solid

//baseCost = 150
//costPerPanelArea = 50
//massPerPanelArea = 0.0125

//baseTransformName = InterstageDecouplerRoot
//diffuseTextureName = SSTU/Assets/SC-GEN-Fairing-DIFF
//cylinderSides = 24
//numberOfPanels = 1
//wallThickness = 0.05
//numberOfEngines = 4
//engineRotationOffset = 90
//engineHeight = 0.8
//engineVerticalOffset = 0.4
//enginePlacementAngleOffset = 45

//engineModuleIndex = 0
//upperDecouplerModuleIndex = 1

@minDiameter = 0.5//#$@TRANSMOGRIFIER/transmogrifierScalar$ //= 0.625
@maxDiameter *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$ //= 1.875
@maxHeight *= #$@TRANSMOGRIFIER/transmogrifierScalar$ //= 10
@diameterIncrement *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$ //= 0.625
//heightIncrement = 1
//taperHeightIncrement = 1

//autoDecoupleDelay = 4
//autoDecouple = false

//currentHeight = 1
@currentTopDiameter *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$ //= 1.875
@currentBottomDiameter *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$ //= 1.875
@currentTaperHeight *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$ //= 0.4

//uvMap = NodeFairing

@UPGRADES
{
@UPGRADE,*
{
@maxDiameter *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$ //= 1.875
}
}
}
}

@PART[SSTU*]:HAS[@MODULE[SSTUCustomRadialDecoupler]]:NEEDS[SSTU]:FOR[TRANSMOGRIFIER]
@MODULE[SSTUCustomRadialDecoupler]
{
//modelDiameter *= #$@TRANSMOGRIFIER/transmogrifierScalar$= 2.5
//surfaceNodeX = -0.1
//scaleTransform = SC-RBDC-Scalar
//topMountName = SC-RBDC-MountUpper
//bottomMountName = SC-RBDC-MountLower
//useRF = false
//resourceVolume = 0.25
//scaleThrust = true
//engine thrust is for EACH module, at default -model- scale... add to get total thrust
//engineThrust = 150
@thrustScalePower = 2 //3
//height = 1
@diameter *= 1.6//#$@TRANSMOGRIFIER/transmogrifierScalar$= 1.25
/fuelPreset = Solid
@minDiameter = 0.5 //0.625
@maxDiameter *= 1.6//#$@TRANSMOGRIFIER/transmogrifierScalar$= 1.875

@UPGRADES
{
@UPGRADE,*
{
@maxDiameter *= #$@TRANSMOGRIFIER/transmogrifierScalar$ //= 1.875
}
}
}
}
25 changes: 25 additions & 0 deletions Transmogrifier/Compatibility/SSTU-WIP/1-sstu-rescale.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
//How to target parts without EmptyProxyModel "~@MODEL"


//rescale SSTU parts that are not resizable in game
@PART[SSTU*]:HAS[@MODEL:HAS[~model[SSTU/Assets/EmptyProxyModel]],!MODULE[ModuleProceduralFairing],!MODULE[SSTUInterstageFairing],!MODULE[SSTUCustomRadialDecoupler]]:NEEDS[SSTU]:BEFORE[TRANSMOGRIFIER]
{
@rescaleFactor *= 1.6 //#$@TRANSMOGRIFIER/transmogrifierScalar$
}

//SSTUModelSwitch
//Used in LanderCore, ?..
@PART[SSTU*]:HAS[@MODULE[SSTUModelSwitch]]:NEEDS[SSTU]
{
@MODULE[SSTUModelSwitch]
{
@MODEL,*
{
@scale *=1.6
}
}
}

//SHIPCORE

//STATION CORE
24 changes: 24 additions & 0 deletions Transmogrifier/Compatibility/SSTU-WIP/2-SSTU-TWR.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
//ENGINES TWR

//SERVICE MODULES
//Service modules need thrust increased, mass should be increased too, but we will do that elsewhere.
@PART[SSTU*]:HAS[@MODULE[ModuleEnginesFX]|@MODULE[ModuleCommand]]:NEEDS[SSTU]
{
@mass *= 1.6
@MODULE[ModuleEngines*]
{
@minThrust *= 1.6 //#$TRANSMOGRIFIER/areaScalar$
@maxThrust *= 1.6 //#$TRANSMOGRIFIER/areaScalar$
}
}

//ENGINE CLUSTERS
@PART[SSTU*]:HAS[@MODULE[SSTUModularEngineCluster]]:NEEDS[SSTU]
{
@mass *= 0.64
@MODULE[ModuleEngines*]
{
@minThrust *= 1.6 //#$TRANSMOGRIFIER/areaScalar$
@maxThrust *= 1.6 //#$TRANSMOGRIFIER/areaScalar$
}
}
Loading

0 comments on commit 7ba900f

Please sign in to comment.