FS25 Reference

Vehicle XML Reference

Search by section ID (example: design15Configurations) and jump straight to it. This is the GIANTS vehicle.xml validation reference, rebuilt into a modder-friendly reader with XML-style folding.

FS25 v1.16.0.0 Source: vehicle.html Updated: 2026-02-15 20:47
1 section loaded Direct

pipe

Link
<pipe pipeOutText="action_pipeOut"Description: Text to show for pipe retracting action
Type: String or l10n key
Default: action_pipeOut
Required: no
automaticDischarge="true"Description: Pipe is automatically starting to discharge as soon as it hits the trailer
Type: Boolean
Default: true
Required: no
coverMaxState="integer"Description: Max. cover state to allow pipe state change
Type: Integer
Default: Max. cover state
Required: no
defaultDischargeToGroundState="false"Description: Discharge to ground is enabled by default if #toggleableDischargeToGround is set
Type: Boolean
Default: false
Required: no
coverMinState="0"Description: Min. cover state to allow pipe state change
Type: Integer
Default: 0
Required: no
foldMaxState="integer"Description: Fold max. state
Type: Integer
Default: Num. of states
Required: no
foldMaxLimit="1"Description: Fold max. limit
Type: Float
Default: 1
Required: no
foldMinLimit="0"Description: Fold min. limit
Type: Float
Default: 0
Required: no
pipeInText="action_pipeIn"Description: Text to show for pipe extending action
Type: String or l10n key
Default: action_pipeIn
Required: no
forceDischargeNodeIndex="true"Description: Force discharge node selection while changing pipe state. Can be deactivated e.g. if the selection is done by trailer spec etc.
Type: Boolean
Default: true
Required: no
aiFoldedPipeUsesTrailerSpace="false"Description: Defines if the folded pipe uses the space of the trailer to discharge
Type: Boolean
Default: false
Required: no
toggleableDischargeToGround="false"Description: Defines if the discharge to ground can be enabled separately
Type: Boolean
Default: false
Required: no
turnOnStateWarning="warning_firstSetPipeState"Description: Turn on warning
Type: String or l10n key
Default: warning_firstSetPipeState
Required: no
foldMinState="1"Description: Fold min. state
Type: Integer
Default: 1
Required: no
dischargeNodeIndex="1"Description: Discharge node index
Type: Integer
Default: 1
Required: no
>

<pipeConfigurations isYesNoOption="false"Description: UI in the shop will just show a yes/no slider element
Type: Boolean
Default: false
Required: no
postLoadObjectChange="false"Description: Defines if the object changes are applied before or after post load (can be helpful if you manipulate wheel nodes, which is only possible before postLoad)
Type: Boolean
Default: false
Required: no
title="string"Description: configuration title to display in shop
Type: String or l10n key
Required: no
>

<pipeConfiguration vehicleName="string"Description: Custom vehicle name to display after bought with this configuration
Type: String or l10n key
Required: no
toggleableDischargeToGround="false"Description: Defines if the discharge to ground can be enabled separately
Type: Boolean
Default: false
Required: no
saveId="Number of configuration"Description: Custom save id
Type: String
Default: Number of configuration
Required: no
params="string"Description: Extra parameters to insert in #name text
Type: String
Required: no
dischargeNodeIndex="1"Description: Discharge node index
Type: Integer
Default: 1
Required: no
price="0"Description: Price of configuration
Type: Float
Default: 0
Required: no
name="string"Description: Configuration name
Type: String or l10n key
Required: no
defaultDischargeToGroundState="false"Description: Discharge to ground is enabled by default if #toggleableDischargeToGround is set
Type: Boolean
Default: false
Required: no
isDefault="false"Description: Is selected by default in shop config screen
Type: Boolean
Default: false
Required: no
isSelectable="true"Description: Configuration can be selected in the shop
Type: Boolean
Default: true
Required: no
foldMaxState="integer"Description: Fold max. state
Type: Integer
Default: Num. of states
Required: no
vehicleIcon="string"Description: Custom icon to display after bought with this configuration
Type: String
Required: no
turnOnStateWarning="warning_firstSetPipeState"Description: Turn on warning
Type: String or l10n key
Default: warning_firstSetPipeState
Required: no
vehicleBrand="string"Description: Custom brand to display after bought with this configuration
Type: String
Required: no
displayBrand="string"Description: If defined a brand icon is displayed in the shop config screen
Type: String
Required: no
foldMinState="1"Description: Fold min. state
Type: Integer
Default: 1
Required: no
automaticDischarge="true"Description: Pipe is automatically starting to discharge as soon as it hits the trailer
Type: Boolean
Default: true
Required: no
desc="string"Description: Configuration description
Type: String or l10n key
Required: no
foldMinLimit="0"Description: Fold min. limit
Type: Float
Default: 0
Required: no
workingWidth="float"Description: Work width to display in shop while config is active
Type: Float
Required: no
dailyUpkeep="0"Description: Daily up keep with this configuration
Type: Float
Default: 0
Required: no
typeDesc="string"Description: Type description text to display in shop while config is active
Type: String or l10n key
Required: no
forceDischargeNodeIndex="true"Description: Force discharge node selection while changing pipe state. Can be deactivated e.g. if the selection is done by trailer spec etc.
Type: Boolean
Default: true
Required: no
pipeInText="action_pipeIn"Description: Text to show for pipe extending action
Type: String or l10n key
Default: action_pipeIn
Required: no
foldMaxLimit="1"Description: Fold max. limit
Type: Float
Default: 1
Required: no
aiFoldedPipeUsesTrailerSpace="false"Description: Defines if the folded pipe uses the space of the trailer to discharge
Type: Boolean
Default: false
Required: no
pipeOutText="action_pipeOut"Description: Text to show for pipe retracting action
Type: String or l10n key
Default: action_pipeOut
Required: no
>

<attacherJoint nodeVisual="node"Description: Visual node
Type: Index to i3d node or i3d mapping identifier
Required: no
lowerRotLimit="x y z"Description: Lower rotation limit
Type: Rotation values (x, y, z)
Default: (20 20 20) for implement type, otherwise (0 0 0)
Required: no
upperRotLimit="x y z"Description: Upper rotation limit
Type: Rotation values (x, y, z)
Default: Lower rot limit
Required: no
rotLimitDamping="1 1 1"Description: Rotation limit damping
Type: Multiple values (x, y, z)
Default: 1 1 1
Required: no
lowerTransLimit="x y z"Description: Lower translation limit
Type: Multiple values (x, y, z)
Default: (0.5 0.5 0.5) for implement type, otherwise (0 0 0)
Required: no
comboTime="float"Description: Combo time
Type: Float
Required: no
lockUpTransLimit="false"Description: Lock up translation limit
Type: Boolean
Default: false
Required: no
lowerRotationOffset="0"Description: Upper rotation offset
Type: Angle
Default: 0
Required: no
allowsJointLimitMovement="true"Description: Allows joint limit movement
Type: Boolean
Default: true
Required: no
fillUnitIndex="1"Description: Reference fill unit index
Type: Integer
Default: 1
Required: no
transLimitDamping="1 1 1"Description: Translation limit damping
Type: Multiple values (x, y, z)
Default: 1 1 1
Required: no
rotLimitSpring="0 0 0"Description: Rotation limit spring
Type: Multiple values (x, y, z)
Default: 0 0 0
Required: no
maxFillLevel="1"Description: Max. fill level to activate attacher joint (pct between 0 and 1)
Type: Float
Default: 1
Required: no
transLimitForceLimit="-1 -1 -1"Description: Translation limit force limit
Type: Multiple values (x, y, z)
Default: -1 -1 -1
Required: no
allowFoldingWhileAttached="true"Description: Allow folding while attached
Type: Boolean
Default: true
Required: no
allowsLowering="true"Description: Allows lowering
Type: Boolean
Default: true
Required: no
lockDownTransLimit="true"Description: Lock down translation limit
Type: Boolean
Default: true
Required: no
minFillLevel="0"Description: Min. fill level to activate attacher joint (pct between 0 and 1)
Type: Float
Default: 0
Required: no
upperTransLimit="x y z"Description: Upper translation limit
Type: Multiple values (x, y, z)
Default: Lower trans limit
Required: no
delayedObjectChangesOnAttach="false"Description: Defines if object change is activated on attach or post attach
Type: Boolean
Default: false
Required: no
direction="integer"Description: Direction of attacher joint (1 = front, -1 = back). Used for additional attachments on mobile and top light control in basegame.
Type: Integer
Required: no
supportsHardAttach="boolean"Description: Supports hard attach
Type: Boolean
Required: no
fillUnitTopArmOnly="false"Description: Block attaching of implements with top arm only
Type: Boolean
Default: false
Required: no
rootNode="node"Description: Root node
Type: Index to i3d node or i3d mapping identifier
Default: Parent component of attacher joint node
Required: no
dynamicLowerRotLimit="false"Description: Set the lower rot limit dynamically based on the lowered state (so the attacher can freely rotate between it's upper and lower rotation value. E.g. for combines)
Type: Boolean
Default: false
Required: no
isDefaultLowered="false"Description: Default lowered state
Type: Boolean
Default: false
Required: no
enableCollision="false"Description: Collision between vehicle is enabled
Type: Boolean
Default: false
Required: no
node="node"Description: Node
Type: Index to i3d node or i3d mapping identifier
Required: no
disabledByAttacherJoints="1 2 .. n"Description: This attacher becomes unavailable after attaching something to these attacher joint indices
Type: Multiple values
Required: no
lockDownRotLimit="false"Description: Lock down rotation limit
Type: Boolean
Default: false
Required: no
jointType="implement"Description: Joint type
Type: String
Default: implement
Required: no
transLimitSpring="0 0 0"Description: Translation limit spring
Type: Multiple values (x, y, z)
Default: 0 0 0
Required: no
canTurnOnImplement="true"Description: Can turn on implement
Type: Boolean
Default: true
Required: no
useTopLights="boolean"Description: Defines if the attacher joint enables the top lights if something is attached. Flag needs to be set on the implement as well.
Type: Boolean
Default: 'true' if the attacher joint is on the front
Required: no
moveTime="0.5"Description: Move time
Type: Float
Default: 0.5
Required: no
delayedObjectChanges="true"Description: Defines if object change is deactivated after the bottomArm has moved (if available)
Type: Boolean
Default: true
Required: no
jointPositionOffset="0 0 0"Description: Joint position offset
Type: Multiple values (x, y, z)
Default: 0 0 0
Required: no
upperRotationOffset="0"Description: Lower rotation offset
Type: Angle
Default: 0
Required: no
allowDetachingWhileLifted="true"Description: Allow detach while lifted
Type: Boolean
Default: true
Required: no
lockUpRotLimit="false"Description: Lock up rotation limit
Type: Boolean
Default: false
Required: no
rotLimitForceLimit="-1 -1 -1"Description: Rotation limit force limit
Type: Multiple values (x, y, z)
Default: -1 -1 -1
Required: no
>

<topArm filename="string"Description: Path to top arm i3d file
Type: Path to a certain file
Required: no
secondPartUseMainColor="true"Description: Defines if the material 'upperLink_head_mat' uses the 'material' or 'material2' value
Type: Boolean
Default: true
Required: no
decalMaterialTemplateName="string"Description: Top arm decal color (applied to 'upperLink_decal_mat')
Type: Name of brand material template or color values (r,g,b)
Required: no
materialTemplateName="string"Description: Top arm material (applied to 'upperLink_main_mat')
Type: Name of brand material template or color values (r,g,b)
Required: no
referenceNode="node"Description: Reference node if top arm not loaded from i3d
Type: Index to i3d node or i3d mapping identifier
Required: no
baseNode="node"Description: Link node for upper link
Type: Index to i3d node or i3d mapping identifier
Required: no
zScale="1"Description: Inverts top arm direction
Type: Integer
Default: 1
Required: no
materialTemplateName2="string"Description: Top arm material 2 (applied to 'upperLink_base_mat')
Type: Name of brand material template or color values (r,g,b)
Required: no
toggleVisibility="false"Description: Top arm will be hidden on detach
Type: Boolean
Default: false
Required: no
useBrandDecal="true"Description: Defines if the brand decal on the top arm is allowed or not
Type: Boolean
Default: true
Required: no
mountArmRotation="x y z"Description: Defines a custom mount arm rotation while no tool is attached
Type: Rotation values (x, y, z)
Required: no
translationNode="node"Description: Translation node if top arm not loaded from i3d
Type: Index to i3d node or i3d mapping identifier
Required: no
rotationNode="node"Description: Rotation node if top arm not loaded from i3d
Type: Index to i3d node or i3d mapping identifier
Required: no
useMountArm="true"Description: Defines if the mount arm is visible or not
Type: Boolean
Default: true
Required: no
>

<objectChange movingToolTransMaxActive="float"Description: Moving tool max. translation if object change active
Type: Float
Required: no
movingToolRotMinInactive="angle"Description: Moving tool min. rotation if object change inactive
Type: Angle
Required: no
movingToolStartTransInactive="float"Description: Moving tool start translation if object change inactive
Type: Float
Required: no
massActive="float"Description: mass if object change is active
Type: Float
Required: no
visibilityActive="boolean"Description: visibility if object change is active
Type: Boolean
Required: no
parentNodeInactive="node"Description: parent node if object change is in active
Type: Index to i3d node or i3d mapping identifier
Required: no
rotationInactive="x y z"Description: rotation if object change is in active
Type: Rotation values (x, y, z)
Required: no
compoundChildActive="boolean"Description: compound child state if object change is active
Type: Boolean
Required: no
movingToolTransMinInactive="float"Description: Moving tool min. translation if object change inactive
Type: Float
Required: no
interpolation="false"Description: Value will be interpolated
Type: Boolean
Default: false
Required: no
shaderParameterActive="x y z w"Description: shaderParameter if object change is active
Type: Multiple values (x, y, z, w)
Required: no
compoundChildInactive="boolean"Description: compound child state if object change is in active
Type: Boolean
Required: no
movingToolRotMinActive="angle"Description: Moving tool min. rotation if object change active
Type: Angle
Required: no
massInactive="float"Description: mass if object change is in active
Type: Float
Required: no
translationInactive="x y z"Description: translation if object change is in active
Type: Translation values (x, y, z)
Required: no
parentNodeActive="node"Description: parent node if object change is active
Type: Index to i3d node or i3d mapping identifier
Required: no
rigidBodyTypeActive="string"Description: rigid body type if object change is active
Type: String
Required: no
deleteActive="boolean"Description: delete if object change is active
Type: Boolean
Required: no
movingToolTransMinActive="float"Description: Moving tool min. translation if object change active
Type: Float
Required: no
deleteInactive="boolean"Description: delete if object change is active
Type: Boolean
Required: no
sharedShaderParameter="false"Description: Shader parameter is applied on all objects with the same material
Type: Boolean
Default: false
Required: no
shaderParameterInactive="x y z w"Description: shaderParameter if object change is in active
Type: Multiple values (x, y, z, w)
Required: no
interpolationTime="1"Description: Time for interpolation
Type: Time in seconds
Default: 1
Required: no
movingToolRotMaxInactive="angle"Description: Moving tool max. rotation if object change inactive
Type: Angle
Required: no
rotationActive="x y z"Description: rotation if object change is active
Type: Rotation values (x, y, z)
Required: no
movingToolRotMaxActive="angle"Description: Moving tool max. rotation if object change active
Type: Angle
Required: no
movingToolStartTransActive="float"Description: Moving tool start translation if object change inactive
Type: Float
Required: no
rigidBodyTypeInactive="string"Description: rigid body type if object change is in active
Type: String
Required: no
scaleActive="x y z"Description: scale if object change is active
Type: Scale values (x, y, z)
Required: no
scaleInactive="x y z"Description: scale if object change is in active
Type: Scale values (x, y, z)
Required: no
movingToolStartRotInactive="angle"Description: Moving tool start rotation if object change inactive
Type: Angle
Required: no
movingPartUpdateActive="boolean"Description: moving part active state if object change active
Type: Boolean
Required: no
centerOfMassInactive="x y z"Description: center of mass if object change is in active
Type: Multiple values (x, y, z)
Required: no
node="node"Description: Object change node
Type: Index to i3d node or i3d mapping identifier
Required: no
shaderParameter="string"Description: Shader parameter name
Type: String
Required: no
movingPartUpdateInactive="boolean"Description: moving part active state if object change inactive
Type: Boolean
Required: no
centerOfMassActive="x y z"Description: center of mass if object change is active
Type: Multiple values (x, y, z)
Required: no
shaderParameterSetRecursive="false"Description: Shader parameter is applied to all child nodes recursively
Type: Boolean
Default: false
Required: no
translationActive="x y z"Description: translation if object change is active
Type: Translation values (x, y, z)
Required: no
visibilityInactive="boolean"Description: visibility if object change is in active
Type: Boolean
Required: no
movingToolTransMaxInactive="float"Description: Moving tool max. translation if object change inactive
Type: Float
Required: no
movingToolStartRotActive="angle"Description: Moving tool start rotation if object change inactive
Type: Angle
Required: no
/>

</topArm>
<detachSound volumeScale="1"Description: Additional scale that is applied on the volume attributes
Type: Float
Default: 1
Required: no
debug="false"Description: Flag to enable debug rendering
Type: Boolean
Default: false
Required: no
loops="1"Description: Number of loops (0 = infinite)
Type: Integer
Default: 1
Required: no
pitchScale="1"Description: Additional pitch that is applied on the volume attributes
Type: Float
Default: 1
Required: no
fadeIn="0"Description: Fade in time in seconds
Type: Float
Default: 0
Required: no
template="string"Description: Sound template name
Type: String
Required: no
outerRadius="5"Description: Outer radius
Type: Float
Default: 5
Required: no
supportsReverb="true"Description: Flag to disable reverb
Type: Boolean
Default: true
Required: no
file="string"Description: Path to sound sample
Type: String
Required: no
fadeOut="0"Description: Fade out time in seconds
Type: Float
Default: 0
Required: no
linkNodeOffset="x y z"Description: Sound source will be offset by this value to the link node
Type: Translation values (x, y, z)
Required: no
loopSynthesisRPMRatio="1"Description: Ratio between rpm in the gls file and actual rpm of the motor (e.g. 0.9: max. rpm in the gls file will be reached at 90% of motor rpm)
Type: Float
Default: 1
Required: no
isLocalSound="false"Description: While set for vehicle sounds it will only play for the player currently using the vehicle
Type: Boolean
Default: false
Required: no
innerRadius="80"Description: Inner radius
Type: Float
Default: 80
Required: no
priority="MEDIUM"Description: Priority of the sound
Type: String
Default: MEDIUM
Required: no
lowpassGainScale="1"Description: Additional lowpass gain that is applied on the volume attributes
Type: Float
Default: 1
Required: no
parent="string"Description: Parent sample for inheritance
Type: String
Required: no
linkNode="node"Description: Link node for 3d sound
Type: Index to i3d node or i3d mapping identifier
Required: no
>

<sourceRandomization file="string"Description: Path to sound sample
Type: String
Required: no
/>

<randomization maxVolume="float"Description: Max volume
Type: Float
Required: no
minVolume="float"Description: Min volume
Type: Float
Required: no
maxPitch="float"Description: Max pitch
Type: Float
Required: no
minPitch="float"Description: Max pitch
Type: Float
Required: no
isInside="true"Description: Randomization is applied inside
Type: Boolean
Default: true
Required: no
maxLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
minLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
isOutside="true"Description: Randomization is applied outside
Type: Boolean
Default: true
Required: no
/>

<pitch outdoor="1"Description: Outdoor pitch
Type: Float
Default: 1
Required: no
indoor="1"Description: Indoor pitch
Type: Float
Default: 1
Required: no
>

<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</pitch>
<loopSynthesisRpm>
<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</loopSynthesisRpm>
<lowpassGain indoor="0.8"Description: Indoor lowpass gain
Type: Float
Default: 0.8
Required: no
outdoor="1"Description: Outdoor lowpass gain
Type: Float
Default: 1
Required: no
>

<modifier type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
/>

</lowpassGain>
<loopSynthesisLoad>
<modifier value="float"Description: Source value of modifier type
Type: Float
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
/>

</loopSynthesisLoad>
<volume outdoor="1"Description: Outdoor volume
Type: Float
Default: 1
Required: no
indoor="0.8"Description: Indoor volume
Type: Float
Default: 0.8
Required: no
>

<modifier value="float"Description: Source value of modifier type
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
/>

</volume>
<lowpassCutoffFrequency outdoor="5000"Description: Outdoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
indoor="5000"Description: Indoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
/>

<lowpassResonance indoor="2"Description: Indoor lowpass resonance
Type: Float
Default: 2
Required: no
outdoor="2"Description: Outdoor lowpass resonance
Type: Float
Default: 2
Required: no
/>

</detachSound>
<attachSound loopSynthesisRPMRatio="1"Description: Ratio between rpm in the gls file and actual rpm of the motor (e.g. 0.9: max. rpm in the gls file will be reached at 90% of motor rpm)
Type: Float
Default: 1
Required: no
linkNodeOffset="x y z"Description: Sound source will be offset by this value to the link node
Type: Translation values (x, y, z)
Required: no
priority="MEDIUM"Description: Priority of the sound
Type: String
Default: MEDIUM
Required: no
template="string"Description: Sound template name
Type: String
Required: no
linkNode="node"Description: Link node for 3d sound
Type: Index to i3d node or i3d mapping identifier
Required: no
loops="1"Description: Number of loops (0 = infinite)
Type: Integer
Default: 1
Required: no
file="string"Description: Path to sound sample
Type: String
Required: no
outerRadius="5"Description: Outer radius
Type: Float
Default: 5
Required: no
pitchScale="1"Description: Additional pitch that is applied on the volume attributes
Type: Float
Default: 1
Required: no
parent="string"Description: Parent sample for inheritance
Type: String
Required: no
volumeScale="1"Description: Additional scale that is applied on the volume attributes
Type: Float
Default: 1
Required: no
isLocalSound="false"Description: While set for vehicle sounds it will only play for the player currently using the vehicle
Type: Boolean
Default: false
Required: no
fadeIn="0"Description: Fade in time in seconds
Type: Float
Default: 0
Required: no
supportsReverb="true"Description: Flag to disable reverb
Type: Boolean
Default: true
Required: no
debug="false"Description: Flag to enable debug rendering
Type: Boolean
Default: false
Required: no
innerRadius="80"Description: Inner radius
Type: Float
Default: 80
Required: no
fadeOut="0"Description: Fade out time in seconds
Type: Float
Default: 0
Required: no
lowpassGainScale="1"Description: Additional lowpass gain that is applied on the volume attributes
Type: Float
Default: 1
Required: no
>

<randomization maxVolume="float"Description: Max volume
Type: Float
Required: no
maxLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
isInside="true"Description: Randomization is applied inside
Type: Boolean
Default: true
Required: no
minVolume="float"Description: Min volume
Type: Float
Required: no
maxPitch="float"Description: Max pitch
Type: Float
Required: no
minPitch="float"Description: Max pitch
Type: Float
Required: no
isOutside="true"Description: Randomization is applied outside
Type: Boolean
Default: true
Required: no
minLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
/>

<sourceRandomization file="string"Description: Path to sound sample
Type: String
Required: no
/>

<volume indoor="0.8"Description: Indoor volume
Type: Float
Default: 0.8
Required: no
outdoor="1"Description: Outdoor volume
Type: Float
Default: 1
Required: no
>

<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</volume>
<loopSynthesisRpm>
<modifier type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
/>

</loopSynthesisRpm>
<lowpassGain indoor="0.8"Description: Indoor lowpass gain
Type: Float
Default: 0.8
Required: no
outdoor="1"Description: Outdoor lowpass gain
Type: Float
Default: 1
Required: no
>

<modifier value="float"Description: Source value of modifier type
Type: Float
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
/>

</lowpassGain>
<pitch outdoor="1"Description: Outdoor pitch
Type: Float
Default: 1
Required: no
indoor="1"Description: Indoor pitch
Type: Float
Default: 1
Required: no
>

<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</pitch>
<loopSynthesisLoad>
<modifier type="string"Description: Modifier type
Type: String
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</loopSynthesisLoad>
<lowpassCutoffFrequency indoor="5000"Description: Indoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
outdoor="5000"Description: Outdoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
/>

<lowpassResonance outdoor="2"Description: Outdoor lowpass resonance
Type: Float
Default: 2
Required: no
indoor="2"Description: Indoor lowpass resonance
Type: Float
Default: 2
Required: no
/>

</attachSound>
<objectChange rigidBodyTypeInactive="string"Description: rigid body type if object change is in active
Type: String
Required: no
scaleActive="x y z"Description: scale if object change is active
Type: Scale values (x, y, z)
Required: no
sharedShaderParameter="false"Description: Shader parameter is applied on all objects with the same material
Type: Boolean
Default: false
Required: no
movingToolStartTransActive="float"Description: Moving tool start translation if object change inactive
Type: Float
Required: no
movingToolTransMinInactive="float"Description: Moving tool min. translation if object change inactive
Type: Float
Required: no
compoundChildActive="boolean"Description: compound child state if object change is active
Type: Boolean
Required: no
compoundChildInactive="boolean"Description: compound child state if object change is in active
Type: Boolean
Required: no
translationActive="x y z"Description: translation if object change is active
Type: Translation values (x, y, z)
Required: no
movingToolRotMaxInactive="angle"Description: Moving tool max. rotation if object change inactive
Type: Angle
Required: no
massInactive="float"Description: mass if object change is in active
Type: Float
Required: no
shaderParameterSetRecursive="false"Description: Shader parameter is applied to all child nodes recursively
Type: Boolean
Default: false
Required: no
movingToolTransMinActive="float"Description: Moving tool min. translation if object change active
Type: Float
Required: no
centerOfMassActive="x y z"Description: center of mass if object change is active
Type: Multiple values (x, y, z)
Required: no
visibilityActive="boolean"Description: visibility if object change is active
Type: Boolean
Required: no
movingToolRotMinActive="angle"Description: Moving tool min. rotation if object change active
Type: Angle
Required: no
shaderParameterActive="x y z w"Description: shaderParameter if object change is active
Type: Multiple values (x, y, z, w)
Required: no
massActive="float"Description: mass if object change is active
Type: Float
Required: no
movingToolRotMinInactive="angle"Description: Moving tool min. rotation if object change inactive
Type: Angle
Required: no
scaleInactive="x y z"Description: scale if object change is in active
Type: Scale values (x, y, z)
Required: no
parentNodeInactive="node"Description: parent node if object change is in active
Type: Index to i3d node or i3d mapping identifier
Required: no
rotationInactive="x y z"Description: rotation if object change is in active
Type: Rotation values (x, y, z)
Required: no
deleteInactive="boolean"Description: delete if object change is active
Type: Boolean
Required: no
rotationActive="x y z"Description: rotation if object change is active
Type: Rotation values (x, y, z)
Required: no
shaderParameterInactive="x y z w"Description: shaderParameter if object change is in active
Type: Multiple values (x, y, z, w)
Required: no
shaderParameter="string"Description: Shader parameter name
Type: String
Required: no
movingPartUpdateInactive="boolean"Description: moving part active state if object change inactive
Type: Boolean
Required: no
interpolationTime="1"Description: Time for interpolation
Type: Time in seconds
Default: 1
Required: no
centerOfMassInactive="x y z"Description: center of mass if object change is in active
Type: Multiple values (x, y, z)
Required: no
movingToolRotMaxActive="angle"Description: Moving tool max. rotation if object change active
Type: Angle
Required: no
node="node"Description: Object change node
Type: Index to i3d node or i3d mapping identifier
Required: no
rigidBodyTypeActive="string"Description: rigid body type if object change is active
Type: String
Required: no
movingToolStartRotInactive="angle"Description: Moving tool start rotation if object change inactive
Type: Angle
Required: no
deleteActive="boolean"Description: delete if object change is active
Type: Boolean
Required: no
visibilityInactive="boolean"Description: visibility if object change is in active
Type: Boolean
Required: no
interpolation="false"Description: Value will be interpolated
Type: Boolean
Default: false
Required: no
movingPartUpdateActive="boolean"Description: moving part active state if object change active
Type: Boolean
Required: no
movingToolStartTransInactive="float"Description: Moving tool start translation if object change inactive
Type: Float
Required: no
movingToolTransMaxInactive="float"Description: Moving tool max. translation if object change inactive
Type: Float
Required: no
movingToolTransMaxActive="float"Description: Moving tool max. translation if object change active
Type: Float
Required: no
movingToolStartRotActive="angle"Description: Moving tool start rotation if object change inactive
Type: Angle
Required: no
parentNodeActive="node"Description: parent node if object change is active
Type: Index to i3d node or i3d mapping identifier
Required: no
translationInactive="x y z"Description: translation if object change is in active
Type: Translation values (x, y, z)
Required: no
/>

<transNode maxY="float"Description: Max Y translation
Type: Float
Required: no
node="node"Description: Translation node
Type: Index to i3d node or i3d mapping identifier
Required: no
height="0.12"Description: Height of visual translation node
Type: Float
Default: 0.12
Required: no
minY="float"Description: Min Y translation
Type: Float
Required: no
>

<dependentBottomArm rotation="0 0 0"Description: Rotation to be set when the translation node is below the threshold
Type: Rotation values (x, y, z)
Default: 0 0 0
Required: no
threshold="float"Description: If the trans node Y translation is below this threshold the rotation will be set
Type: Float
Default: unlimited, so rotation is always set
Required: no
node="node"Description: Dependent bottom arm node
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

</transNode>
<distanceToGround upper="1"Description: Upper distance to ground
Type: Float
Default: 1
Required: no
lower="0.7"Description: Lower distance to ground
Type: Float
Default: 0.7
Required: no
/>

<bottomArm resetSpeed="45"Description: Speed of bottom arm to return to idle position (deg/sec)
Type: Angle
Default: 45
Required: no
updateReferenceDistance="false"Description: If 'true', the reference distance will be updated dynamically. So it's possible to adjust the bottom arm length.
Type: Boolean
Default: false
Required: no
translationNode="node"Description: Translation node of bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
defaultWidth="float"Description: Defines the default bottom arm width while nothing is attached
Type: Float
Default: Width inside i3d file
Required: no
ballVisibility="true"Description: Defines if the balls of the tool are visible while the tool is attached to us
Type: Boolean
Default: true
Required: no
rotationNode="node"Description: Rotation node of bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
rightNode="node"Description: Node of moving tool that will be aligned to 'bottomArmRightNode', if defined in the tool
Type: Index to i3d node or i3d mapping identifier
Required: no
widthRange="1 2 .. n"Description: Defines the min. and max. bottom arm width that can be used separated by a whitespace. Overwrites the categoryRange attribute. (if only one value is given it will be used as min. and max. value.)
Type: Multiple values
Required: no
categoryRange="1 4"Description: Defines the min. and max. category that can be used separated by a whitespace. (if only one value is given it will be used as min. and max. value.)
Type: Multiple values
Default: 1 4
Required: no
startRotation="x y z"Description: Start rotation
Type: Rotation values (x, y, z)
Default: values set in i3d
Required: no
leftNode="node"Description: Node of moving tool that will be aligned to 'bottomArmLeftNode', if defined in the tool
Type: Index to i3d node or i3d mapping identifier
Required: no
jointPositionNode="node"Description: Node that will be equalized with the current attacher joint position of the attached implement
Type: Index to i3d node or i3d mapping identifier
Required: no
defaultCategory="integer"Description: Defines the default width category which is used when nothing is attached
Type: Integer
Default: Width inside i3d file
Required: no
zScale="1"Description: Inverts bottom arm direction
Type: Integer
Default: 1
Required: no
referenceNode="node"Description: Reference node of bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
toggleVisibility="false"Description: Bottom arm will be hidden on detach
Type: Boolean
Default: false
Required: no
lockDirection="true"Description: Lock direction
Type: Boolean
Default: true
Required: no
>

<armLeft referenceNode="node"Description: Left bottom arm reference node (placed at the attaching point at the end of the bottom arm. If not defined the arm will be translated on the X axis to the target width.)
Type: Index to i3d node or i3d mapping identifier
Required: no
node="node"Description: Left bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

<armRight referenceNode="node"Description: Right bottom arm reference node (placed at the attaching point at the end of the bottom arm. If not defined the arm will be translated on the X axis to the target width.)
Type: Index to i3d node or i3d mapping identifier
Required: no
node="node"Description: Right bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

</bottomArm>
<rotationNode lowerRotation="0 0 0"Description: Lower rotation
Type: Rotation values (x, y, z)
Default: 0 0 0
Required: no
upperRotation="x y z"Description: Upper rotation
Type: Rotation values (x, y, z)
Default: rotation in i3d
Required: no
startRotation="x y z"Description: Start rotation
Type: Rotation values (x, y, z)
Default: rotation in i3d
Required: no
node="node"Description: Rotation node
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

<rotationNode2 node="node"Description: Rotation node
Type: Index to i3d node or i3d mapping identifier
Required: no
upperRotation="x y z"Description: Upper rotation
Type: Rotation values (x, y, z)
Default: rotation in i3d
Required: no
lowerRotation="0 0 0"Description: Lower rotation
Type: Rotation values (x, y, z)
Default: 0 0 0
Required: no
/>

<steeringBars leftNode="node"Description: Steering bar left node
Type: Index to i3d node or i3d mapping identifier
Required: no
forceUsage="true"Description: Forces usage of tools steering axle even if no steering bars are defined
Type: Boolean
Default: true
Required: no
rightNode="node"Description: Steering bar right node
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

<visualAlignNode delayedOnAttach="true"Description: Node is updated after the smooth attach is finished
Type: Boolean
Default: true
Required: no
node="node"Description: Node of movingPart that should point towards the inputAttacherJoint node of the implement
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

<schema invertX="false"Description: Invert X
Type: Boolean
Default: false
Required: no
liftedOffset="0 5"Description: Offset if lifted
Type: Multiple values (x, y)
Default: 0 5
Required: no
position="x y"Description: Schema position
Type: Multiple values (x, y)
Required: no
rotation="0"Description: Schema rotation
Type: Angle
Default: 0
Required: no
/>

<visuals hide="node"Description: Visual nodes that will be hidden while attacher joint is active if there attacher is inactive
Type: List of indices to i3d nodes or i3d mapping identifiers
Required: no
nodes="node"Description: Visual nodes of attacher joint that will be visible when the joint is active
Type: List of indices to i3d nodes or i3d mapping identifiers
Required: no
/>

<additionalToolConnection id="string"Description: Identifier of the tool connection
Type: String
Required: no
node="node"Description: Node to connect to
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

<dependentComponentJoint transDampingFactor="float"Description: Factor that will be applied to the damping values on attach
Type: Float
Default: #transSpringFactor
Required: no
transSpringFactor="1"Description: Factor that will be applied to the spring values on attach
Type: Float
Default: 1
Required: no
attachInterpolationTime="1"Description: Time for the interpolation between the damping values after attach
Type: Time in seconds
Default: 1
Required: no
index="integer"Description: Index of component joint that will be adjusted while something is attached
Type: Integer
Required: no
detachInterpolationTime="0.5"Description: Time for the interpolation between the damping values after detach
Type: Time in seconds
Default: 0.5
Required: no
referenceMass="1"Description: Reference mass for spring and damping adjustments. At the mass attached to the front, the full factor will be applied to the spring/damping. (to)
Type: Float
Default: 1
Required: no
/>

<subType brandRestriction="string"Description: If defined it's only possible to attach tools from these brands (can be multiple separated by ' ')
Type: String
Required: no
name="string"Description: If defined this type needs to match with the sub type in the tool
Type: String
Required: no
vehicleRestriction="string"Description: If defined it's only possible to attach tools containing these strings in there xml path (can be multiple separated by ' ')
Type: String
Required: no
subTypeShowWarning="true"Description: Show warning if sub type does not match
Type: Boolean
Default: true
Required: no
/>

<toolbar filename="$data/shared/assets/toolbars/toolbars.i3d"Description: Filename to toolbars i3d containing 5 meshes for category 0-4
Type: String
Default: $data/shared/assets/toolbars/toolbars.i3d
Required: no
/>

<additionalJoint node="node"Description: Additional joint node to connect
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

</attacherJoint>
<size length="float"Description: occupied length of the vehicle when loaded in this configuration
Type: Float
Required: no
widthOffset="float"Description: width offset
Type: Float
Required: no
minHeight="float"Description: Minimum height of the vehicle when loaded in this configuration
Type: Float
Required: no
minWidth="float"Description: Minimum width of the vehicle when loaded in this configuration
Type: Float
Required: no
height="float"Description: occupied height of the vehicle when loaded in this configuration
Type: Float
Required: no
heightOffset="float"Description: height offset
Type: Float
Required: no
width="float"Description: occupied width of the vehicle when loaded in this configuration
Type: Float
Required: no
minLength="float"Description: Minimum length of the vehicle when loaded in this configuration
Type: Float
Required: no
lengthOffset="float"Description: length offset
Type: Float
Required: no
/>

<pipeNodes>
<pipeNode translationSpeeds="x y z"Description: Translation speeds
Type: Translation values (x, y, z)
Required: no
autoAimXRotation="false"Description: Auto aim X rotation
Type: Boolean
Default: false
Required: no
node="node"Description: Pipe node
Type: Index to i3d node or i3d mapping identifier
Required: no
autoAimYRotation="false"Description: Auto aim Y rotation
Type: Boolean
Default: false
Required: no
rotationSpeeds="x y z"Description: Rotation speeds
Type: Rotation values (x, y, z)
Required: no
bendingRegulation="0"Description: Bending angle regulation
Type: Float
Default: 0
Required: no
maxRotationLimits="x y z"Description: Max. rotation limit
Type: Rotation values (x, y, z)
Required: no
autoAimInvertZ="false"Description: Auto aim invert Z axis
Type: Boolean
Default: false
Required: no
foldPriority="0"Description: Fold priority
Type: Integer
Default: 0
Required: no
minRotationLimits="x y z"Description: Min. rotation limit
Type: Rotation values (x, y, z)
Required: no
subPipeNode="node"Description: Sub pipe node (Target rotation is divided between these two nodes depending on the X rotation ratio between #node and #node parent and #subPipeNode and #node parent)
Type: Index to i3d node or i3d mapping identifier
Required: no
subPipeNodeRatio="float"Description: Ratio between usage of this pipe node and sub node [0-1]
Type: Float
Default: Calculated based on rotation in i3d file
Required: no
>

<moveSound fadeOut="0"Description: Fade out time in seconds
Type: Float
Default: 0
Required: no
outerRadius="5"Description: Outer radius
Type: Float
Default: 5
Required: no
priority="MEDIUM"Description: Priority of the sound
Type: String
Default: MEDIUM
Required: no
volumeScale="1"Description: Additional scale that is applied on the volume attributes
Type: Float
Default: 1
Required: no
isLocalSound="false"Description: While set for vehicle sounds it will only play for the player currently using the vehicle
Type: Boolean
Default: false
Required: no
lowpassGainScale="1"Description: Additional lowpass gain that is applied on the volume attributes
Type: Float
Default: 1
Required: no
fadeIn="0"Description: Fade in time in seconds
Type: Float
Default: 0
Required: no
loops="1"Description: Number of loops (0 = infinite)
Type: Integer
Default: 1
Required: no
innerRadius="80"Description: Inner radius
Type: Float
Default: 80
Required: no
linkNode="node"Description: Link node for 3d sound
Type: Index to i3d node or i3d mapping identifier
Required: no
loopSynthesisRPMRatio="1"Description: Ratio between rpm in the gls file and actual rpm of the motor (e.g. 0.9: max. rpm in the gls file will be reached at 90% of motor rpm)
Type: Float
Default: 1
Required: no
template="string"Description: Sound template name
Type: String
Required: no
linkNodeOffset="x y z"Description: Sound source will be offset by this value to the link node
Type: Translation values (x, y, z)
Required: no
debug="false"Description: Flag to enable debug rendering
Type: Boolean
Default: false
Required: no
pitchScale="1"Description: Additional pitch that is applied on the volume attributes
Type: Float
Default: 1
Required: no
parent="string"Description: Parent sample for inheritance
Type: String
Required: no
file="string"Description: Path to sound sample
Type: String
Required: no
supportsReverb="true"Description: Flag to disable reverb
Type: Boolean
Default: true
Required: no
>

<lowpassGain outdoor="1"Description: Outdoor lowpass gain
Type: Float
Default: 1
Required: no
indoor="0.8"Description: Indoor lowpass gain
Type: Float
Default: 0.8
Required: no
>

<modifier value="float"Description: Source value of modifier type
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
/>

</lowpassGain>
<pitch indoor="1"Description: Indoor pitch
Type: Float
Default: 1
Required: no
outdoor="1"Description: Outdoor pitch
Type: Float
Default: 1
Required: no
>

<modifier value="float"Description: Source value of modifier type
Type: Float
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
/>

</pitch>
<lowpassResonance outdoor="2"Description: Outdoor lowpass resonance
Type: Float
Default: 2
Required: no
indoor="2"Description: Indoor lowpass resonance
Type: Float
Default: 2
Required: no
/>

<randomization minPitch="float"Description: Max pitch
Type: Float
Required: no
minVolume="float"Description: Min volume
Type: Float
Required: no
maxPitch="float"Description: Max pitch
Type: Float
Required: no
minLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
isInside="true"Description: Randomization is applied inside
Type: Boolean
Default: true
Required: no
isOutside="true"Description: Randomization is applied outside
Type: Boolean
Default: true
Required: no
maxLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
maxVolume="float"Description: Max volume
Type: Float
Required: no
/>

<volume outdoor="1"Description: Outdoor volume
Type: Float
Default: 1
Required: no
indoor="0.8"Description: Indoor volume
Type: Float
Default: 0.8
Required: no
>

<modifier value="float"Description: Source value of modifier type
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
/>

</volume>
<lowpassCutoffFrequency indoor="5000"Description: Indoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
outdoor="5000"Description: Outdoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
/>

<loopSynthesisLoad>
<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</loopSynthesisLoad>
<loopSynthesisRpm>
<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
/>

</loopSynthesisRpm>
<sourceRandomization file="string"Description: Path to sound sample
Type: String
Required: no
/>

</moveSound>
<state translation="x y z"Description: State translation
Type: Translation values (x, y, z)
Required: no
rotation="x y z"Description: State translation
Type: Rotation values (x, y, z)
Required: no
/>

<bendingRegulationNode node="node"Description: Bending regulation node
Type: Index to i3d node or i3d mapping identifier
Default: 0
Required: no
direction="0"Description: Bending regulation direction
Type: Integer
Default: 0
Required: no
axis="0"Description: Bending regulation axis
Type: Integer
Default: 0
Required: no
/>

</pipeNode>
</pipeNodes>
<objectChange sharedShaderParameter="false"Description: Shader parameter is applied on all objects with the same material
Type: Boolean
Default: false
Required: no
massInactive="float"Description: mass if object change is in active
Type: Float
Required: no
movingToolRotMaxActive="angle"Description: Moving tool max. rotation if object change active
Type: Angle
Required: no
parentNodeActive="node"Description: parent node if object change is active
Type: Index to i3d node or i3d mapping identifier
Required: no
visibilityInactive="boolean"Description: visibility if object change is in active
Type: Boolean
Required: no
rigidBodyTypeInactive="string"Description: rigid body type if object change is in active
Type: String
Required: no
movingToolRotMinInactive="angle"Description: Moving tool min. rotation if object change inactive
Type: Angle
Required: no
movingToolStartRotActive="angle"Description: Moving tool start rotation if object change inactive
Type: Angle
Required: no
rotationInactive="x y z"Description: rotation if object change is in active
Type: Rotation values (x, y, z)
Required: no
movingToolStartTransInactive="float"Description: Moving tool start translation if object change inactive
Type: Float
Required: no
movingPartUpdateActive="boolean"Description: moving part active state if object change active
Type: Boolean
Required: no
movingToolTransMaxInactive="float"Description: Moving tool max. translation if object change inactive
Type: Float
Required: no
compoundChildInactive="boolean"Description: compound child state if object change is in active
Type: Boolean
Required: no
shaderParameterActive="x y z w"Description: shaderParameter if object change is active
Type: Multiple values (x, y, z, w)
Required: no
deleteActive="boolean"Description: delete if object change is active
Type: Boolean
Required: no
scaleInactive="x y z"Description: scale if object change is in active
Type: Scale values (x, y, z)
Required: no
movingToolStartTransActive="float"Description: Moving tool start translation if object change inactive
Type: Float
Required: no
translationInactive="x y z"Description: translation if object change is in active
Type: Translation values (x, y, z)
Required: no
rotationActive="x y z"Description: rotation if object change is active
Type: Rotation values (x, y, z)
Required: no
movingToolStartRotInactive="angle"Description: Moving tool start rotation if object change inactive
Type: Angle
Required: no
compoundChildActive="boolean"Description: compound child state if object change is active
Type: Boolean
Required: no
massActive="float"Description: mass if object change is active
Type: Float
Required: no
translationActive="x y z"Description: translation if object change is active
Type: Translation values (x, y, z)
Required: no
centerOfMassInactive="x y z"Description: center of mass if object change is in active
Type: Multiple values (x, y, z)
Required: no
rigidBodyTypeActive="string"Description: rigid body type if object change is active
Type: String
Required: no
movingToolTransMinInactive="float"Description: Moving tool min. translation if object change inactive
Type: Float
Required: no
centerOfMassActive="x y z"Description: center of mass if object change is active
Type: Multiple values (x, y, z)
Required: no
parentNodeInactive="node"Description: parent node if object change is in active
Type: Index to i3d node or i3d mapping identifier
Required: no
shaderParameter="string"Description: Shader parameter name
Type: String
Required: no
shaderParameterInactive="x y z w"Description: shaderParameter if object change is in active
Type: Multiple values (x, y, z, w)
Required: no
interpolationTime="1"Description: Time for interpolation
Type: Time in seconds
Default: 1
Required: no
shaderParameterSetRecursive="false"Description: Shader parameter is applied to all child nodes recursively
Type: Boolean
Default: false
Required: no
movingToolRotMinActive="angle"Description: Moving tool min. rotation if object change active
Type: Angle
Required: no
deleteInactive="boolean"Description: delete if object change is active
Type: Boolean
Required: no
movingToolTransMinActive="float"Description: Moving tool min. translation if object change active
Type: Float
Required: no
scaleActive="x y z"Description: scale if object change is active
Type: Scale values (x, y, z)
Required: no
visibilityActive="boolean"Description: visibility if object change is active
Type: Boolean
Required: no
interpolation="false"Description: Value will be interpolated
Type: Boolean
Default: false
Required: no
node="node"Description: Object change node
Type: Index to i3d node or i3d mapping identifier
Required: no
movingPartUpdateInactive="boolean"Description: moving part active state if object change inactive
Type: Boolean
Required: no
movingToolTransMaxActive="float"Description: Moving tool max. translation if object change active
Type: Float
Required: no
movingToolRotMaxInactive="angle"Description: Moving tool max. rotation if object change inactive
Type: Angle
Required: no
/>

<shopOffset rotation="x y z"Description: Shop rotation offset when this config is used
Type: Rotation values (x, y, z)
Required: no
translation="x y z"Description: Shop translation offset when this config is used
Type: Translation values (x, y, z)
Required: no
/>

<component useTotalMassReference="true"Description: Use total mass of vehicle as reference for center of mass adjustment. Otherwise just the mass of the component itself
Type: Boolean
Default: true
Required: no
additionalMassOffset="x y z"Description: Offset to the component node to apply the mass there
Type: Translation values (x, y, z)
Required: no
node="node"Description: Component node
Type: Index to i3d node or i3d mapping identifier
Required: no
additionalMassNode="node"Description: At this position, the additional mass will be applied to the component
Type: Index to i3d node or i3d mapping identifier
Required: no
additionalMass="float"Description: Additional mass that is added to the component
Type: Float
Required: no
>

<dependentComponentJoint transSpringFactor="float"Description: Factor that is applied to the trans spring of the component joint
Type: Float
Required: no
index="integer"Description: Index of the component joint to influence
Type: Integer
Required: no
transDampingFactor="float"Description: Factor that is applied to the trans damping of the component joint
Type: Float
Required: no
/>

</component>
<sprayerNozzles>
<nozzle node="node"Description: Nozzle Node
Type: Index to i3d node or i3d mapping identifier
Required: no
rotation="x y z"Description: Rotation offset from the defined node
Type: Rotation values (x, y, z)
Required: no
translation="x y z"Description: Translation offset from the defined node
Type: Translation values (x, y, z)
Required: no
/>

</sprayerNozzles>
<material materialTemplateUseColorOnly="false"Description: If 'true', only the color is used from the material template. The rest from the i3d file.
Type: Boolean
Default: false
Required: no
useBaseColor="false"Description: Use base vehicle color
Type: Boolean
Default: false
Required: no
ignoreWarning="false"Description: If set to 'true' there is no warning if the material is not found.
Type: Boolean
Default: false
Required: no
useDesignColorIndex="integer"Description: Use color of the design color with the defined index (1-16)
Type: Integer
Required: no
materialSlotName="string"Description: Material slot name in the i3d file
Type: String
Required: no
targetMaterialSlotName="string"Description: Material with this slot name is replaced the material defined with 'sourceMaterialSlotName'
Type: String
Required: no
useRimColor="false"Description: Use rim color
Type: Boolean
Default: false
Required: no
node="node"Description: If defined, the 'targetMaterialSlotName' is only replaced for this node
Type: Index to i3d node or i3d mapping identifier
Required: no
materialTemplateName="string"Description: Name of template to apply (all attributes will be used from template)
Type: String
Required: no
sourceMaterialSlotName="string"Description: Material with this slot name replaces the material defined with 'targetMaterialSlotName'
Type: String
Required: no
>

<detail specular="string"Description: Path to detail specular texture
Type: Path to a certain file
Required: no
diffuse="string"Description: Path to detail diffuse texture
Type: Path to a certain file
Required: no
normal="string"Description: Path to detail normal texture
Type: Path to a certain file
Required: no
/>

<smoothness value="float"Description: Smoothness value
Type: Float
Required: no
/>

<metalness value="float"Description: Metalness value
Type: Float
Required: no
/>

<colorScale value="string"Description: Material color if it should not be used from configuration (can also be a different material template, from which then ONLY the color is taken)
Type: String
Required: no
/>

<clearCoat intensity="float"Description: Intensity of clear coat
Type: Float
Required: no
smoothness="float"Description: Smoothness of clear coat
Type: Float
Required: no
/>

<textures specular="string"Description: Path to specular texture
Type: Path to a certain file
Required: no
diffuse="string"Description: Path to diffuse texture
Type: Path to a certain file
Required: no
normal="string"Description: Path to normal texture
Type: Path to a certain file
Required: no
/>

</material>
<states autoAiming="1 2 .. n"Description: Auto aim states
Type: Multiple values
Required: no
turnOnAllowed="1 2 .. n"Description: Turn on allowed states
Type: Multiple values
Required: no
num="0"Description: Number of pipe states
Type: Integer
Default: 0
Required: no
unloading="1 2 .. n"Description: Unloading states
Type: Multiple values
Required: no
>

<state dischargeNodeIndex="integer"Description: Discharge node index
Type: Integer
Required: no
stateIndex="integer"Description: State index
Type: Integer
Required: no
/>

</states>
<xmlOverwrites>
<clearList path="string"Description: List to clear but keep one item
Type: String
Required: no
keepIndex="integer"Description: Index of list to keep
Type: Integer
Required: no
/>

<set path="string"Description: Path change in parent xml
Type: String
Required: no
value="string"Description: Target value to set in parent file
Type: String
Required: no
/>

<remove path="string"Description: Path to remove from parent xml
Type: String
Required: no
/>

</xmlOverwrites>
<weedSpotSpraySensors>
<sensorNode translation="0 0 0"Description: Translation offset from node
Type: Translation values (x, y, z)
Default: 0 0 0
Required: no
id="string"Description: Sensor identifier of the type to use
Type: String
Required: no
node="string"Description: Name of node in i3d mapping
Type: String
Required: no
bracketSize="1"Description: Size of the bracket
Type: Float
Default: 1
Required: no
rotation="0 0 0"Description: Rotation offset from node
Type: Rotation values (x, y, z)
Default: 0 0 0
Required: no
/>

</weedSpotSpraySensors>
<foliageBendingModifier index="integer"Description: Bending node index
Type: Integer
Required: no
overwrite="true"Description: Overwrite the bending node values and do not use the max values
Type: Boolean
Default: true
Required: no
isActive="true"Description: Bending node is active
Type: Boolean
Default: true
Required: no
yOffset="float"Description: Y translation offset
Type: Float
Required: no
maxX="float"Description: Max. width
Type: Float
Required: no
minX="float"Description: Min. width
Type: Float
Required: no
maxZ="float"Description: Max. length
Type: Float
Required: no
indices="1 2 .. n"Description: Bending node indices
Type: Multiple values
Required: no
minZ="float"Description: Min. length
Type: Float
Required: no
/>

<aiAgent maxCentripetalAcceleration="float"Description: AI vehicle max centripetal acceleration
Type: Float
Required: no
height="float"Description: AI vehicle height
Type: Float
Required: no
frontWheelNodes="node"Description: List of wheels (nodes) that are used for steering
Type: List of indices to i3d nodes or i3d mapping identifiers
Required: no
width="float"Description: AI vehicle width
Type: Float
Required: no
maxTurningRadius="float"Description: Max. turning radius (overwrites value detected from ackermann steering)
Type: Float
Required: no
maxBrakeAcceleration="float"Description: AI vehicle max brake acceleration
Type: Float
Required: no
frontWheelIndices="1 2 .. n"Description: List of wheels (indices) that are used for steering
Type: Multiple values
Required: no
frontOffset="float"Description: AI vehicle front offset
Type: Float
Required: no
lengthOffset="float"Description: AI vehicle length offset
Type: Float
Required: no
length="float"Description: AI vehicle length
Type: Float
Required: no
/>

<animation speedScale="1"Description: Pipe animation speed scale
Type: Float
Default: 1
Required: no
name="string"Description: Pipe animation name
Type: String
Required: no
/>

<reverseDriving isAllowed="true"Description: Reverse driving is allowed while this configuration is equipped
Type: Boolean
Default: true
Required: no
/>

<dependentConfiguration name="string"Description: Name of the other configuration to set
Type: String
Required: no
index="integer"Description: Index of the configuration to use
Type: Integer
Required: no
/>

<unloadingTriggers>
<unloadingTrigger node="node"Description: Unload trigger node
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

</unloadingTriggers>
</pipeConfiguration>
</pipeConfigurations>
<animationNodes>
<animationNode turnOnOffVariance="float"Description: Turn off time variance
Type: Float
Required: no
turnedOffSubDivisions="1"Description: Amount of sub divisions which have the same state
Type: Float
Default: 1
Required: no
scrollSpeed="1"Description: (ScrollingAnimation) Scroll speed
Type: Float
Default: 1
Required: no
turnOnFadeTime="2"Description: Turn on fade time
Type: Float
Default: 2
Required: no
speedFuncParam="string"Description: Additional string parameter that is passed to the speedFunc
Type: String
Required: no
turnedOffRotation="angle"Description: (RotationAnimation) Target rotation while turned off
Type: Angle
Required: no
node="node"Description: Node
Type: Index to i3d node or i3d mapping identifier
Required: no
turnedOffPosition="float"Description: (ScrollingAnimation) Target position while turned off
Type: Float
Required: no
scrollLength="1"Description: (ScrollingAnimation) Scroll length
Type: Float
Default: 1
Required: no
shaderParameterName="string"Description: Shader parameter name
Type: String
Required: no
minAlphaForTurnOff="0"Description: Min. alpha for turn off (speed [0-1])
Type: Float
Default: 0
Required: no
shaking="0 0 0 0"Description: (ShakeAnimation) Shaking scale for shader parameters
Type: Multiple values (x, y, z, w)
Default: 0 0 0 0
Required: no
shaderParameterComponent="1"Description: (ScrollingAnimation) Shader parameter component
Type: Float
Default: 1
Required: no
rotSpeed="1"Description: Rotation speed
Type: Angle
Default: 1
Required: no
shaderComponentScale="1 0 0 0"Description: Shader parameter name
Type: Multiple values (x, y, z, w)
Default: 1 0 0 0
Required: no
class="RotationAnimation"Description: Animation class (RotationAnimation | RotationAnimationSpikes | RotationAnimationSpikesGravity | ScrollingAnimation | ShakeAnimation)
Type: String
Default: RotationAnimation
Required: no
type="string"Description: (ScrollingAnimation) Fill type name
Type: String
Required: no
rotAxis="2"Description: Rotation axis
Type: Float
Default: 2
Required: no
turnOffFadeTime="2"Description: Turn off fade time
Type: Float
Default: 2
Required: no
shaderParameterPrevName="automatically calculated from #shaderParameterName"Description: Prev Shader parameter name
Type: String
Default: automatically calculated from #shaderParameterName
Required: no
speedFunc="string"Description: Lua speed function
Type: String
Required: no
>

<spikes transAxis="3"Description: (RotationAnimationSpikes) Translation axis (disables the rotation adjustment of the spike)
Type: Integer
Default: 3
Required: no
maxTrans="float"Description: (RotationAnimationSpikes) Max. spike translation
Type: Float
Required: no
moveDownRange="x y"Description: (RotationAnimationSpikes) Move down range
Type: Rotation values (x, y)
Required: no
rotAxis="3"Description: (RotationAnimationSpikes) Rotation axis
Type: Integer
Default: 3
Required: no
moveUpRange="x y"Description: (RotationAnimationSpikes) Move up range
Type: Rotation values (x, y)
Required: no
inverted="false"Description: (RotationAnimationSpikes) Min. and max. rotation/translation of spikes are inverted
Type: Boolean
Default: false
Required: no
minRot="angle"Description: (RotationAnimationSpikes) Min. spike rotation
Type: Angle
Required: no
maxRot="angle"Description: (RotationAnimationSpikes) Max. spike rotation
Type: Angle
Required: no
gravityFactor="float"Description: (RotationAnimationSpikesGravity) Factor to adjust how fast the spike adjusts and falls down
Type: Float
Required: no
>

<spike node="node"Description: (RotationAnimationSpikes) Spike node
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

</spikes>
</animationNode>
</animationNodes>
<pipeNodes>
<pipeNode translationSpeeds="x y z"Description: Translation speeds
Type: Translation values (x, y, z)
Required: no
subPipeNodeRatio="float"Description: Ratio between usage of this pipe node and sub node [0-1]
Type: Float
Default: Calculated based on rotation in i3d file
Required: no
autoAimYRotation="false"Description: Auto aim Y rotation
Type: Boolean
Default: false
Required: no
foldPriority="0"Description: Fold priority
Type: Integer
Default: 0
Required: no
maxRotationLimits="x y z"Description: Max. rotation limit
Type: Rotation values (x, y, z)
Required: no
autoAimXRotation="false"Description: Auto aim X rotation
Type: Boolean
Default: false
Required: no
bendingRegulation="0"Description: Bending angle regulation
Type: Float
Default: 0
Required: no
autoAimInvertZ="false"Description: Auto aim invert Z axis
Type: Boolean
Default: false
Required: no
subPipeNode="node"Description: Sub pipe node (Target rotation is divided between these two nodes depending on the X rotation ratio between #node and #node parent and #subPipeNode and #node parent)
Type: Index to i3d node or i3d mapping identifier
Required: no
rotationSpeeds="x y z"Description: Rotation speeds
Type: Rotation values (x, y, z)
Required: no
node="node"Description: Pipe node
Type: Index to i3d node or i3d mapping identifier
Required: no
minRotationLimits="x y z"Description: Min. rotation limit
Type: Rotation values (x, y, z)
Required: no
>

<moveSound parent="string"Description: Parent sample for inheritance
Type: String
Required: no
linkNode="node"Description: Link node for 3d sound
Type: Index to i3d node or i3d mapping identifier
Required: no
linkNodeOffset="x y z"Description: Sound source will be offset by this value to the link node
Type: Translation values (x, y, z)
Required: no
template="string"Description: Sound template name
Type: String
Required: no
fadeOut="0"Description: Fade out time in seconds
Type: Float
Default: 0
Required: no
priority="MEDIUM"Description: Priority of the sound
Type: String
Default: MEDIUM
Required: no
isLocalSound="false"Description: While set for vehicle sounds it will only play for the player currently using the vehicle
Type: Boolean
Default: false
Required: no
pitchScale="1"Description: Additional pitch that is applied on the volume attributes
Type: Float
Default: 1
Required: no
fadeIn="0"Description: Fade in time in seconds
Type: Float
Default: 0
Required: no
supportsReverb="true"Description: Flag to disable reverb
Type: Boolean
Default: true
Required: no
lowpassGainScale="1"Description: Additional lowpass gain that is applied on the volume attributes
Type: Float
Default: 1
Required: no
outerRadius="5"Description: Outer radius
Type: Float
Default: 5
Required: no
file="string"Description: Path to sound sample
Type: String
Required: no
loops="1"Description: Number of loops (0 = infinite)
Type: Integer
Default: 1
Required: no
debug="false"Description: Flag to enable debug rendering
Type: Boolean
Default: false
Required: no
volumeScale="1"Description: Additional scale that is applied on the volume attributes
Type: Float
Default: 1
Required: no
innerRadius="80"Description: Inner radius
Type: Float
Default: 80
Required: no
loopSynthesisRPMRatio="1"Description: Ratio between rpm in the gls file and actual rpm of the motor (e.g. 0.9: max. rpm in the gls file will be reached at 90% of motor rpm)
Type: Float
Default: 1
Required: no
>

<sourceRandomization file="string"Description: Path to sound sample
Type: String
Required: no
/>

<volume indoor="0.8"Description: Indoor volume
Type: Float
Default: 0.8
Required: no
outdoor="1"Description: Outdoor volume
Type: Float
Default: 1
Required: no
>

<modifier type="string"Description: Modifier type
Type: String
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</volume>
<loopSynthesisLoad>
<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</loopSynthesisLoad>
<randomization minPitch="float"Description: Max pitch
Type: Float
Required: no
minVolume="float"Description: Min volume
Type: Float
Required: no
maxLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
isOutside="true"Description: Randomization is applied outside
Type: Boolean
Default: true
Required: no
minLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
maxVolume="float"Description: Max volume
Type: Float
Required: no
isInside="true"Description: Randomization is applied inside
Type: Boolean
Default: true
Required: no
maxPitch="float"Description: Max pitch
Type: Float
Required: no
/>

<pitch outdoor="1"Description: Outdoor pitch
Type: Float
Default: 1
Required: no
indoor="1"Description: Indoor pitch
Type: Float
Default: 1
Required: no
>

<modifier modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</pitch>
<lowpassGain outdoor="1"Description: Outdoor lowpass gain
Type: Float
Default: 1
Required: no
indoor="0.8"Description: Indoor lowpass gain
Type: Float
Default: 0.8
Required: no
>

<modifier value="float"Description: Source value of modifier type
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
/>

</lowpassGain>
<lowpassCutoffFrequency indoor="5000"Description: Indoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
outdoor="5000"Description: Outdoor lowpass cutoff frequency
Type: Float
Default: 5000
Required: no
/>

<loopSynthesisRpm>
<modifier type="string"Description: Modifier type
Type: String
Required: no
modifiedValue="float"Description: Change that is applied on sample value
Type: Float
Required: no
value="float"Description: Source value of modifier type
Type: Float
Required: no
/>

</loopSynthesisRpm>
<lowpassResonance outdoor="2"Description: Outdoor lowpass resonance
Type: Float
Default: 2
Required: no
indoor="2"Description: Indoor lowpass resonance
Type: Float
Default: 2
Required: no
/>

</moveSound>
<state rotation="x y z"Description: State translation
Type: Rotation values (x, y, z)
Required: no
translation="x y z"Description: State translation
Type: Translation values (x, y, z)
Required: no
/>

<bendingRegulationNode axis="0"Description: Bending regulation axis
Type: Integer
Default: 0
Required: no
node="node"Description: Bending regulation node
Type: Index to i3d node or i3d mapping identifier
Default: 0
Required: no
direction="0"Description: Bending regulation direction
Type: Integer
Default: 0
Required: no
/>

</pipeNode>
</pipeNodes>
<unloadingTriggers>
<unloadingTrigger node="node"Description: Unload trigger node
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

</unloadingTriggers>
<animation name="string"Description: Pipe animation name
Type: String
Required: no
speedScale="1"Description: Pipe animation speed scale
Type: Float
Default: 1
Required: no
/>

<states turnOnAllowed="1 2 .. n"Description: Turn on allowed states
Type: Multiple values
Required: no
unloading="1 2 .. n"Description: Unloading states
Type: Multiple values
Required: no
autoAiming="1 2 .. n"Description: Auto aim states
Type: Multiple values
Required: no
num="0"Description: Number of pipe states
Type: Integer
Default: 0
Required: no
>

<state stateIndex="integer"Description: State index
Type: Integer
Required: no
dischargeNodeIndex="integer"Description: Discharge node index
Type: Integer
Required: no
/>

</states>
</pipe>