User:Joshuadery

From Kerbal Space Program Wiki
Revision as of 02:37, 19 December 2014 by Joshuadery (talk | contribs) (ModuleLight)
Jump to: navigation, search

MODULE

Modules define what specific parts can do. They are generally calls to C-coded or hard-coded functions that define what functionality these parts have in-game.

name names define the module in use and are a general indication of what the module subtype does. Specific variables are associated with each [module].[name]. For example, the Clamp-O-Tron Docking Port Sr. has the MODULE.name ModuleDockingNode and its' associates variables are [referenceAttachNode] and [nodeType]. Some [MODULE]s share variables with other modules, which can make deciphering their purpose difficult.

known [MODULE]s, their associated variables, and the meanings of those variables will be explained below.

ModuleParachute

variable example definition
semiDeployedAnimation
  • semiDeploySmall
specifies the animation to use in the semi-deployed state
fullyDeployedAnimation
  • fullyDeploySmall
specifies the animation to use in the fully deployed state
invertCanopy boolean, true or false, defaults to true. unknown purpose. true in parachuteMk1, true in parachuteMk2-R
autoCutSpeed specifies the speed at which the parachute will be automatically cut, rendering it ineffective.
capName
  • cap
canopyName
  • canopy
stowedDrag 0.22 specifies the drag effect while the parachute is still stowed
semiDeployedDrag 1 specifies the drag effect while the parachute is in its semi-deployed state
fullyDeployedDrag 500 specifies the drag effect while the parachute is in its fully deployed state
minAirPressureToOpen 0.01 specifies the minimum Air pressure (or atmosphere) required for the parachute to enter its semi-deployed state
deployAltitude 500 configurable, sets the altitude above the planetary collision mesh at which the parachute will enter its fully deployed state
deploymentSpeed 1 specifies the speed at which the parachute will enter its fully deployed state
semiDeploymentSpeed 1 specifies the speed at which the parachute will enter its semi-deployed state

ModuleSAS

no known parameters. Possibly used a reference to determine whether this part is activated by the SAS function of the interface. ie. when you turn on SAS, turn on this part.

KerbalSeat

variable example definition
seatPivotName seatPivot
ejectDirection 0,1,0.2

ModuleLandingGear

variable example definition
BrakeTorque

12

BrakeSpeed

3

ModuleSteering

variable example definition
controlAxisType

Forward

steeringAxis

0, 0, 1 - array of 3 numers

steeringTransformName

Steering

steeringLocked

true or false

steeringCurve

multi-array of keys, 0, 16 10, 9 30, 2 100, 1

FXModuleConstrainPosition

variable example definition
matchRotation

true or false

matchPosition

true or false

CONSTRAINFX
targetName

Steering

moversName

wheelCollider

ModuleLandingLeg

variable example definition
animationName

Deploy newlandingleg probeleg

wheelColliderName

wheelCollider

suspensionTransformName

Piston piston leg

orientFootToGround

boolean true or false

landingFootName

foot

alignFootUp

boolean true or false // Foot is aligned to up Axis instead of forward alignFootUp = true // Axis is aligned forward instead of up alignFootUp = false

suspensionUpperLimit

0.60, 0.47, 0.65

impactTolerance

300, 450, 150

suspensionSpring

1.25, 5, 1

suspensionDamper

1, 2, 1

suspensionOffset

0, 0.02, 0

RetractableLadder

variable example definition
ladderAnimationRootName

TelusBay Telescopic ladder

ladderColliderName

ladderCollider

ladderRetractAnimationName

Retract

ModuleReactionWheel

variable example definition
PitchTorque

numerical value, denotes amount of change can be applied to pitch using reaction wheel power

YawTorque

numerical value, denotes amount of change can be applied to yaw using reaction wheel power

RollTorque

numerical value, denotes amount of change can be applied to roll using reaction wheel power

RESOURCE

The resource used by reaction wheels in order to affect the changes they can produce

name

name of the relevant resource, typically ElectricCharge

rate

Rate of consumption, expressed in units/second at full usage.

ModuleScienceContainer

variable example definition
reviewActionName

Flavor text for reviewing the data contained in a science container.

storeActionName

Flavor text for placing data into a science container.

collectActionName

Flavor text for removing data from a science container.

evaOnlyStorage

Boolean, True or False Specifies whether or not data storage is restricted to EVA activities.

storageRange

Distance, expressed in meters, a Kerbal must be within in order to interact with data and this container.

allowRepeatedSubjects

Boolean, True or False

FlagDecal

variable example definition
textureQuadName

flagTransform: specifies whether there is a flag displayed on the exterior surface of the object.

ModuleScienceLab

variable example definition
containerModuleIndex

numerical, 0

dataTransmissionBoost

numerical, 1.5

crewsRequired

numerical, 2

canResetConnectedModules

Boolean, True or False

canResetNearbyModules

Boolean, True or False

interactRange

numerical, possible integers only, 5

REOURCE_PROCESS
name

names the resource required, e.g.: ElectricCharge

amount

specified, numerical, the number of units of the specified resource expended


FlagDecal

variable example definition
textureQuadName

flagTransform


ModuleJettison

variable example definition
specifies that pieces of this craft are able to be jettisoned, what they are and how to jettison them
jettisonName

node_fairing_collider fairingL fairingR fairing

bottomNodeName

bottom

isFairing

Boolean. True or False

jettisonedObjectMass

0.1, specifies the mass of the jettisoned object. It is uncertain, yet, if this mass is removed from the total mass of the vehicle. It is also uncertain if, when a fairing is added in vehicle assembly, this mass is added to the parent object.

jettisonForce

DeltaV with which the object is jettisoned from its parent object. Typically very low values, such as 1, 2 or 5

jettisonDirection

Three-dimensional array which specifies the direction of the jettisonForce relative to the original part, laterally is 0 0 1 and 0 0 -1, for example.

ModuleAlternator

variable example definition
class="wikitable"
variable example definition
Specifies that this part produced a resource, based on the percentage of thrust produced by the engine.
RESOURCE
name

name of the resource produced, usually ElectricCharge

rate

rate at which the resource is produced at 100% thrust, expressed in units/second

ModuleCommand

variable example definition
minimumCrew

Specifies the minimum number of crew needed to operate this module. Use 0 to specify a probe.

RESOURCE

If this Module requires a resource

name

This is the name of that resource

rate

and the rate in units/second of resource consumed

ModuleEnviroSensor

variable example definition
sensorType
  • ACC
  • PRES
  • GRAV
  • TEMP

ModuleControlSurface

variable example definition
dragCoeff

this value overrides the maximum_drag value 0.5 (advanced Canard)

deflectionLiftCoeff

0.7 (advanced Canard)

ctrlSurfaceRange

20 (advanced Canard)

ctrlSurfaceArea

0.95 (advanced Canard)

ModuleAnimateHeat

variable example definition
ThermalAnim

HeatAnimationEmissiveLiquidEngine3 HeatAnimationEmissiveTurbofan HeatAnimationEmissiveJet overheat

ModuleEngines

variable example definition
thrustVectorTransformName

unknown purpose. Known arguments:

  • thrustTransform
throttleLocked

True or False, defaults to False. Used to create engines without controllable thrust.

exhaustDamage

True or False. assumed to indicate whether the exhaust from this engine will damage other parts.

ignitionThreshold

appears to not be used. Suggests a minimum thrust output value, below which the engine will no longer operate. Typical values are 0.1 (10%)

minThrust

Minimum thrust value. Engines will be considered 'off' at or below this value.

maxThrust

Just like the name implies, this is the maximum thrust a single unit of this module can produce. In order to create a more powerful engine, set this value higher.

heatProduction

a measure of the amount of heat energy produced per second. measured in degrees Kerbius (degrees Celsius)

fxOffset

3-dimensional vector coordinates specifying the location of thrust effects

useEngineResponseTime

True or False

engineAccelerationSpeed

0.2, 0.12

engineDecelerationSpeed

0.35, 0.21

allowShutdown

True or False, defaults to True. Specifies engines that cannot be turned off, regardless of whether their thrust can be controlled.

useVelocityCurve

True or False

PROPELLANT

resource utilized in the operation of this part, generally a fuel or other propellant. Engines may use multiple propellant types.

name

name of the resource consumed while this part is in operation

ratio

rate at which this resource is consumed, per second. Not to be confused with ratio relative to other propellants.

DrawGauge

Boolean value that indicates whether or not the 'fuel remaining' indicator in the staging selection is displayed or not.

atmosphereCurve

specifies variances in operational efficiency

key

uses two values to specify engine efficiency relative to the depth of the atmosphere (based on Kerbin sea-level!) First number indicates the relative pressure (0 = vacuum, 1 Kerbin sea-level), second numer indicates ISP value). Translates directly to ISP. In order to make a more efficient engine, set the second number of this array higher.

velocityCurve

uncertain as to how exactly this works, but appears to control the degree of acceleration at particular velocities. uses a 4 part key, the first part of the key is definitely specific accelerations, the second part is percentage of velocities. { key = 0 0.5 0 0 key = 1000 1 0 0 key = 2000 0.5 0 0 key = 2400 0 0 0 } { key = 1000 0 0 0 key = 850 0.2 0 0 key = 0 1 0 0 }

FXModuleAnimateThrottle

variable example definition
animationName

colorAnimation

depondOnEngineState

True or False

responseSpeed

0.5

ModuleEnginesFX

variable example definition
engineID

LES, KS25

runningEffectName

running_closed

thrustVectorTransformName

unknown purpose. Known arguments:

  • thrustTransform
  • obj_gimbal
exhaustDamage

True or False. assumed to indicate whether the exhaust from this engine will damage other parts.

throttleLocked

uncertain. Boolean values of True or False. Assumed to specify that solid Rocket Boosters cannot have their throttle adjusted while in flight.

ignitionThreshold

appears to not be used. Suggests a minimum thrust output value, below which the engine will no longer operate. Typical values are 0.1 (10%)

minThrust

Minimum thrust value. Engines will be considered 'off' at or below this value.

maxThrust

Just like the name implies, this is the maximum thrust a single unit of this module can produce.

heatProduction

a measure of the amount of heat energy produced per second. measured in degrees Kerbius (degrees Celsius)

fxOffset

3-dimensional vector coordinates specifying the location of thrust effects


PROPELLANT

resource utilized in the operation of this part, generally a fuel or other propellant.


name

name of the resource consumed while this part is in operation


ratio

rate at which this resource is consumed, per second. Not to be confused with ratio relative to other propellants.


DrawGauge

Boolean value that indicates whether or not the 'fuel remaining' indicator in the staging selection is displayed or not.

atmosphereCurve

specifies variances in operational efficiency

key

uses two values to specify engine efficiency relative to the depth of the atmosphere (based on Kerbin sea-level!) First number indicates the relative pressure (0 = vacuum, 1 Kerbin sea-level), second numer indicates ISP value).

ModuleGimbal

variable example definition
gimbalTransformName

thrustTransform

gimbalRange

represents the maximum angle, in degrees, that gimballing is supported. Recommend keeping this number relatively low (under 20 for sure), as setting the number too high can have catastrophic effects on ship design.

ModuleTestSubject

variable example definition
Used for the contract system, determines atmospheric conditions under which this part may be considered for testing. Also specifies whether the part is able to be tested using the Staging process or must be manually selected and "Perform Test" used to satisfy contract requirements.
environments

A single numerical value, between 0 (nowhere) and 15 (anywhere), that specifies the atmospheric conditions the part may be tested under. Add numbers together to specify multiple environments

  • 0 = nowhere
  • 1 = the surface of; srf
  • 2 = the ocean of; ocean
  • 3 = the surface or ocean of; srf, ocean
  • 4 = the atmosphere of; atmo
  • 5 = the surface or atmosphere of; srf, atmo
  • 6 = the ocean or atmosphere of; ocean, atmo
  • 7 = the surface, ocean or atmosphere of; srf, ocean, atmo
  • 8 = the space above; space
  • 9 = the surface or space above; srf, space
  • 10 = the ocean or space of; srf, ocean, space
  • 11 = the surface, ocean or space of; srf, ocean, space
  • 12 = the space or atmosphere of; atmo, space
  • 13 = the surface, space or atmosphere of; srf, atmo, space
  • 14 = the ocean, space, or atmosphere of; ocean, atmo, space
  • 15 = anywhere; srf, ocean, atmo, space
useStaging

Boolean True or False, specifies whether the part can be tested using the Staging Process

useEvent

Boolean True or False, specifies whether the part can be tested using the "Perform Test" action.

LaunchClamp

variable example definition
trf_towerPivot_name

obj_girdercap

trf_towerStretch_name

obj_girder

trf_anchor_name

obj_ground

trf_animationRoot_name

launchclamp

anim_decouple_name

launchclamp

ModuleGenerator

variable example definition
isAlwaysActive

specifies whether this module is always active or not. true/false

OUTPUT_RESOURCE
name

specifies the name of the produced resource.

rate

specifies the rate of resource produced, expressed in units per second.

ModuleDockingNode

variable example definition
A module for docking ports
referenceAttachNode

Specifies the node on the part that is used for the docking port, generally top or bottom

  • top
  • bottom
deployAnimationController

Boolean, 1 or 0

nodeType

Specifies the type of node for attachment. When perform docking operations, nodes must have the same value for nodeType in order to dock with one another.

  • size1
  • size2
  • size0

controlTransformName

  • controlNode = apparently only used for docking nodes that have related animations, see dockingPortInline

ModuleRCS

variable example definition
Note: ModuleRCS can use either a single resource, or a series of PROPELLANT calls.
thrusterTransformName

RCSthruster

thrusterPower

This is the power that the RCS thrusters provide. To make stronger RCS, use a higher numer

resourceName -------- interchangeable with PROPELLANT calls

The name of the resource used by the RCS thruster, typically MonoPropellant

resourceFlowMode -- for resourceName only --

Specifies the manner in which the resource is requested from the vessel

  • STAGE_PRIORITY_FLOW
  • STACK_PRIORITY_FLOW
  • ALL_VESSEL
  • NONE
PROPELLANT

Introduced with the inclusion of the Vernor RCS, it is recommended to use PROPELLANT calls only when using multiple resources. It is expected that older RCS will be updated to the new convention prior to final release.

name

name of the resource consumed

ratio

ratio of the resource consumed

resourceFlowMode

using the same pull method as a single resource, specifies how to pull the resource from the rest of the vessel

atmosphereCurve

Specifies the efficiency of the RCS thruster using 2-part keys 0 specifies the ISP in atmosphere 1 specifies the ISP at Kerbin Sea Level entries in between specify the ISP at specific percentages of Kerbin Sea Level (e.g: 0.5 = 1/2 Kerbin Atmosphere)

ModuleResourceIntake

variable example definition
used to create a part that produces a resource.
resourceName

defines the type of resource produced by this module. Any resource may be used for this purpose, including those not defined at all

checkForOxygen

An optional method that specifies this module must check to see if oxygen/atmosphere is present whenever attempting to generate the requested resource. true/false

area

area is the amount of space used for determining how much resource to produce. The larger the number, the more of the resource is produced per second.

intakeSpeed

unknown. Assumed to be a minimum m/s measure to determine if this module operates or not.

intakeTransformName

unknown. known arguments are:

  • Intake


ModuleScienceExperiment

variable example definition
experimentID
  • atmosphereAnalysis
  • mysteryGoo
  • crewReport
  • seismicScan
  • barometerScan
experimentActionName

Flavor text for contextual menu to describe to the player what the part does when collecting data

resetActionName

Flavor text for contextual menu to describe to the player what the part does when collecting data

reviewActionName

Flavor text for contextual menu to describe to the player what the part does when collecting data

useStaging

Boolean True/False - speficies whether this module can be activated through the normal staging system

useActionGroups

Boolean True/False - specifies whether this module can be activated by an Action Group

hideUIwhenUnavailable

Boolean True/False - specifies whether this module will show its activation buttons through the contextual menu, even if it is not available

rerunnable

Boolean True/False. Defaults to false.

xmitDataScalar

0.35

FxModules

0 (gooExperiment)

dataIsCollectable

Boolean True/False

collectActionName

Flavor text

interactionRange

The range, expressed in meters, from which a Kerbal on EVA can interact with this module (for example to reset the experiment)

ModuleGrappleNode

variable sample definition
nodeTransformName
  • ArticulatedCap
deployAnimationController
  • 1
nodeType
  • size1
captureRange
  • 0.05
captureMinFwdDot
  • 0.866
captureMaxRvel
  • 1

ModuleLight

variable example definition
lightName

spotlight landinglight

useAnimationDim

true or false

lightBrightenSpeed

2.5

lightDimSpeed

2.5

resourceAmount

0.4

animationName

LightAnimation

useResources

true or false

useAutoDim

true or false

ModuleLiftingSurface

|- | deflectionLiftCoeff || || 0.3 (BSLmk2ScienceFuselage) |- | dragAtMaxAoA || || 0.15 (BSLmk2ScienceFuselage) |- | dragAtMinAoA || || 0.1 (BSLmk2ScienceFuselage)


|}

ModuleAnimateGeneric

|- | animationName || ||

  • Deploy
  • CrewCabinLight
  • dish
  • dockingring for dockingPortShielded
  • dockingporthull for dockingPortInline

|- | isOneShot || ||

  • false

|- | startEventGUIName || || Flavor text to describe turning the animation to its 'On' State |- | endEventGUIName || || Flavor text to describe turning the animation to its 'Off' State |- | actionGUIName || || Flavor text to describe switching the animation between it's 'on' and 'off' states |- | allowManualControl || || true/false. Defaults to true.


|}

ModuleDataTransmitter

|- | packetInterval || || 0.18, 0.4, 0.3 |- | packetSize || || 2, 2, 2 |- | packetResourceCost || || 20, 10, 12.5 |- | requiredResource || || ElectricCharge |- | DeployFxModules || || 0 |- | ProgressFxModules || || 1

|}

FXModuleLockAtConstraint

variable example definition
=== FlagDecal ===
textureQuadName
  • flagTransform

ModuleAsteroid

variable example definition
no procedures or calls


ModuleDeployableSolarPanel

|- | animationName || || unknown for sure. Assumed to refer to an animation describing part transformation from its closed state to its open state. known parameters are:

  • solarpanels
  • solarpanels2
  • solarpanels4
  • altsolarpanelbase
  • bigsolarpanel

|- | sunTracking || || Boolean argument. unknown purpose. Assumed to indicate whether the animation will turn the panel towards the sun. |- | raycastTransformName || || optional. unknown. Known arguments:

  • suncatcher

|- | pivotName || || optional. unknown. Known arguments:

  • suncatcher

|- | isBreakable || || optional. unknown purpose, assumed to indicate whether the part will break on high-dynamic stress. true or false

|- | resourceName || || the resource provided by this module. Any resource may be used, including resources not defined.

|- | chargeRate || || Amount of resource provided per second at 100% output. Positive values only, please.

|- | powerCurve || || powerCurve is a special call consisting of subtypes called [key]. Each [key] uses four numbers to define what it will do at a specific distance from a source. In the case of solar panels, where powerCurve is typically used, there are typically 4 [key]s. [powerCurve] defines the rate at which resources are provided relative to the [chargeRate] and distance from the specified source (ie. Kerbol)

  • 206000000000 0.00 0 0
  • 013599840256 1.00 0 0
  • 068773560320 0.50 0 0
  • 000000000000 10.0 0 0|}

ModuleWheel

|- | hasMotor || || true or false |- | resourceName || || ElectricCharge |- | resourceConsumptionRate || || 1.0 |- | canSteer || || true |- | controlAxisType || || Forward |- | steeringModeType || || AutomaticSteer TankSteer |- | brakeTorque || || 300 |- | brakeSpeed || || 1.2 |- | impactTolerance || || 2000 |- | overSpeedDamage || || 60 |- | WHEEL || || |- | wheelName || || wheel |- | wheelColliderName || || wheelCollider |- | suspensionTransformName || || suspensionTraverse |- | suspensionNeutralPointName || || suspensionNeutralPoint |- | damagedObjectName || || bustedwheel |- | rotateX || || 0 |- | rotateY || || 1 |- | rotateZ || || 0 |- | steeringCurve || || keys, 0 16 10 9 30 2 |- | torqueCurve || || keys 0 250 0 0 20 100 0 0 30 14 0 0 34 0 0 0

|}

FXModuleLookAtConstraint

|- | CONSTRAINLOOKFX || || |- | targetName || || |- | rotatorsName || ||

|}

FXModuleConstrainPosition

variable example definition
matchRotation

true or false

matchPosition

true or false

CONSTRAINFX
targetName

steering

moversName

lateral


ModuleAnchoredDecoupler

variable example definition
anchorName anchor
ejectionForce 450
explosiveNodeID specifies the location of the explosion.
srf surface of the attachment

ModuleDecouple

variable sample definition
isOmniDecoupler
  • true
  • false
Specifies whether this decoupler separates on both ends or not. Defaults to false.
ejectionForce 100 specifies the DeltaV with which the part separates
explosiveNodeID
  • top
  • srf
for non-OmniDecouplers, specifics the Node of separation

MODULES POSSIBLY FROM MODS

defining a module has it's own problems, of course, and I'm no expert, but I did find this along the way:


MODULE:NEEDS[KAS] for the module|}

KASModuleContainer

variable example definition
maxSize

specifies the size of the container relative to Kerbal Attachment System parts.

maxOpenDistance
sndStorePath

KAS/Sounds/hookBayStore

sndOpenPath

KAS/Sounds/containerOpen

sndClosePath

KAS/Sounds/containerClose

bipWrongSndPath

KAS/Sounds/bipwrong