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

logGrab

Link
<logGrab>
<logGrabConfigurations title="string"Description: configuration title to display in shop
Type: String or l10n key
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
isYesNoOption="false"Description: UI in the shop will just show a yes/no slider element
Type: Boolean
Default: false
Required: no
>

<logGrabConfiguration price="0"Description: Price of configuration
Type: Float
Default: 0
Required: no
isSelectable="true"Description: Configuration can be selected in the shop
Type: Boolean
Default: true
Required: no
workingWidth="float"Description: Work width to display in shop while config is active
Type: Float
Required: no
vehicleBrand="string"Description: Custom brand to display after bought with this configuration
Type: String
Required: no
vehicleIcon="string"Description: Custom icon to display after bought with this configuration
Type: String
Required: no
vehicleName="string"Description: Custom vehicle name to display after bought with this configuration
Type: String or l10n key
Required: no
dailyUpkeep="0"Description: Daily up keep with this configuration
Type: Float
Default: 0
Required: no
saveId="Number of configuration"Description: Custom save id
Type: String
Default: Number of configuration
Required: no
isDefault="false"Description: Is selected by default in shop config screen
Type: Boolean
Default: false
Required: no
typeDesc="string"Description: Type description text to display in shop while config is active
Type: String or l10n key
Required: no
displayBrand="string"Description: If defined a brand icon is displayed in the shop config screen
Type: String
Required: no
params="string"Description: Extra parameters to insert in #name text
Type: String
Required: no
name="string"Description: Configuration name
Type: String or l10n key
Required: no
desc="string"Description: Configuration description
Type: String or l10n key
Required: no
>

<material targetMaterialSlotName="string"Description: Material with this slot name is replaced the material defined with 'sourceMaterialSlotName'
Type: String
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
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
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
materialSlotName="string"Description: Material slot name in the i3d file
Type: String
Required: no
useRimColor="false"Description: Use rim color
Type: Boolean
Default: false
Required: no
sourceMaterialSlotName="string"Description: Material with this slot name replaces the material defined with 'targetMaterialSlotName'
Type: String
Required: no
useBaseColor="false"Description: Use base vehicle color
Type: Boolean
Default: false
Required: no
>

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

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

<smoothness value="float"Description: Smoothness value
Type: Float
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
/>

<clearCoat intensity="float"Description: Intensity of clear coat
Type: Float
Required: no
smoothness="float"Description: Smoothness of clear coat
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
/>

</material>
<attacherJoint 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
canTurnOnImplement="true"Description: Can turn on implement
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
jointType="implement"Description: Joint type
Type: String
Default: implement
Required: no
fillUnitTopArmOnly="false"Description: Block attaching of implements with top arm only
Type: Boolean
Default: false
Required: no
lockUpRotLimit="false"Description: Lock up rotation limit
Type: Boolean
Default: false
Required: no
upperRotationOffset="0"Description: Lower rotation offset
Type: Angle
Default: 0
Required: no
rotLimitSpring="0 0 0"Description: Rotation limit spring
Type: Multiple values (x, y, z)
Default: 0 0 0
Required: no
supportsHardAttach="boolean"Description: Supports hard attach
Type: Boolean
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
transLimitSpring="0 0 0"Description: Translation limit spring
Type: Multiple values (x, y, z)
Default: 0 0 0
Required: no
lockUpTransLimit="false"Description: Lock up translation limit
Type: Boolean
Default: false
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
upperTransLimit="x y z"Description: Upper translation limit
Type: Multiple values (x, y, z)
Default: Lower trans limit
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
delayedObjectChanges="true"Description: Defines if object change is deactivated after the bottomArm has moved (if available)
Type: Boolean
Default: true
Required: no
transLimitDamping="1 1 1"Description: Translation limit damping
Type: Multiple values (x, y, z)
Default: 1 1 1
Required: no
nodeVisual="node"Description: Visual node
Type: Index to i3d node or i3d mapping identifier
Required: no
allowsLowering="true"Description: Allows lowering
Type: Boolean
Default: true
Required: no
isDefaultLowered="false"Description: Default lowered state
Type: Boolean
Default: false
Required: no
disabledByAttacherJoints="1 2 .. n"Description: This attacher becomes unavailable after attaching something to these attacher joint indices
Type: Multiple values
Required: no
node="node"Description: Node
Type: Index to i3d node or i3d mapping identifier
Required: no
transLimitForceLimit="-1 -1 -1"Description: Translation limit force limit
Type: Multiple values (x, y, z)
Default: -1 -1 -1
Required: no
jointPositionOffset="0 0 0"Description: Joint position offset
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
fillUnitIndex="1"Description: Reference fill unit index
Type: Integer
Default: 1
Required: no
comboTime="float"Description: Combo time
Type: Float
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
enableCollision="false"Description: Collision between vehicle is enabled
Type: Boolean
Default: false
Required: no
moveTime="0.5"Description: Move time
Type: Float
Default: 0.5
Required: no
rotLimitForceLimit="-1 -1 -1"Description: Rotation limit force limit
Type: Multiple values (x, y, z)
Default: -1 -1 -1
Required: no
upperRotLimit="x y z"Description: Upper rotation limit
Type: Rotation values (x, y, z)
Default: Lower rot limit
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
lockDownRotLimit="false"Description: Lock down rotation limit
Type: Boolean
Default: false
Required: no
allowFoldingWhileAttached="true"Description: Allow folding while attached
Type: Boolean
Default: true
Required: no
allowDetachingWhileLifted="true"Description: Allow detach while lifted
Type: Boolean
Default: true
Required: no
delayedObjectChangesOnAttach="false"Description: Defines if object change is activated on attach or post attach
Type: Boolean
Default: false
Required: no
lockDownTransLimit="true"Description: Lock down translation limit
Type: Boolean
Default: true
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
>

<attachSound fadeIn="0"Description: Fade in time in seconds
Type: Float
Default: 0
Required: no
template="string"Description: Sound template name
Type: String
Required: no
priority="MEDIUM"Description: Priority of the sound
Type: String
Default: MEDIUM
Required: no
parent="string"Description: Parent sample for inheritance
Type: String
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
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
outerRadius="5"Description: Outer radius
Type: Float
Default: 5
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
innerRadius="80"Description: Inner radius
Type: Float
Default: 80
Required: no
file="string"Description: Path to sound sample
Type: String
Required: no
pitchScale="1"Description: Additional pitch that is applied on the volume attributes
Type: Float
Default: 1
Required: no
volumeScale="1"Description: Additional scale that is applied on the volume attributes
Type: Float
Default: 1
Required: no
fadeOut="0"Description: Fade out time in seconds
Type: Float
Default: 0
Required: no
supportsReverb="true"Description: Flag to disable reverb
Type: Boolean
Default: true
Required: no
linkNode="node"Description: Link node for 3d sound
Type: Index to i3d node or i3d mapping identifier
Required: no
lowpassGainScale="1"Description: Additional lowpass gain that is applied on the volume attributes
Type: Float
Default: 1
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
>

<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>
<randomization maxVolume="float"Description: Max volume
Type: Float
Required: no
maxPitch="float"Description: Max pitch
Type: Float
Required: no
minVolume="float"Description: Min volume
Type: Float
Required: no
isOutside="true"Description: Randomization is applied outside
Type: Boolean
Default: true
Required: no
minPitch="float"Description: Max pitch
Type: Float
Required: no
maxLowpassGain="float"Description: Max lowpass gain
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
/>

<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
value="float"Description: Source value of modifier type
Type: Float
Required: no
type="string"Description: Modifier type
Type: String
Required: no
/>

</volume>
<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>
<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>
<pitch outdoor="1"Description: Outdoor pitch
Type: Float
Default: 1
Required: no
indoor="1"Description: Indoor pitch
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
/>

</pitch>
<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
/>

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

</attachSound>
<topArm 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
useBrandDecal="true"Description: Defines if the brand decal on the top arm is allowed or not
Type: Boolean
Default: true
Required: no
secondPartUseMainColor="true"Description: Defines if the material 'upperLink_head_mat' uses the 'material' or 'material2' value
Type: Boolean
Default: true
Required: no
baseNode="node"Description: Link node for upper link
Type: Index to i3d node or i3d mapping identifier
Required: no
toggleVisibility="false"Description: Top arm will be hidden on detach
Type: Boolean
Default: false
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
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
translationNode="node"Description: Translation node if top arm not loaded from i3d
Type: Index to i3d node or i3d mapping identifier
Required: no
zScale="1"Description: Inverts top arm direction
Type: Integer
Default: 1
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
useMountArm="true"Description: Defines if the mount arm is visible or not
Type: Boolean
Default: true
Required: no
filename="string"Description: Path to top arm i3d file
Type: Path to a certain file
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
mountArmRotation="x y z"Description: Defines a custom mount arm rotation while no tool is attached
Type: Rotation values (x, y, z)
Required: no
>

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

</topArm>
<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
/>

<detachSound template="string"Description: Sound template name
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
loops="1"Description: Number of loops (0 = infinite)
Type: Integer
Default: 1
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
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
outerRadius="5"Description: Outer radius
Type: Float
Default: 5
Required: no
fadeIn="0"Description: Fade in 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
fadeOut="0"Description: Fade out time in seconds
Type: Float
Default: 0
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
parent="string"Description: Parent sample for inheritance
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
priority="MEDIUM"Description: Priority of the sound
Type: String
Default: MEDIUM
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
>

<loopSynthesisRpm>
<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
/>

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

<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
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 indoor="1"Description: Indoor pitch
Type: Float
Default: 1
Required: no
outdoor="1"Description: Outdoor pitch
Type: Float
Default: 1
Required: no
>

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

</pitch>
<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>
<randomization 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
maxPitch="float"Description: Max pitch
Type: Float
Required: no
minPitch="float"Description: Max pitch
Type: Float
Required: no
maxLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
maxVolume="float"Description: Max volume
Type: Float
Required: no
minVolume="float"Description: Min volume
Type: Float
Required: no
minLowpassGain="float"Description: Max lowpass gain
Type: Float
Required: no
/>

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

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

<loopSynthesisLoad>
<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
/>

</loopSynthesisLoad>
</detachSound>
<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
/>

<bottomArm lockDirection="true"Description: Lock direction
Type: Boolean
Default: true
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
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
toggleVisibility="false"Description: Bottom arm will be hidden on detach
Type: Boolean
Default: false
Required: no
resetSpeed="45"Description: Speed of bottom arm to return to idle position (deg/sec)
Type: Angle
Default: 45
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
rotationNode="node"Description: Rotation node of bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
startRotation="x y z"Description: Start rotation
Type: Rotation values (x, y, z)
Default: values set in i3d
Required: no
defaultWidth="float"Description: Defines the default bottom arm width while nothing is attached
Type: Float
Default: Width inside i3d file
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
defaultCategory="integer"Description: Defines the default width category which is used when nothing is attached
Type: Integer
Default: Width inside i3d file
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
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
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
translationNode="node"Description: Translation node of bottom arm
Type: Index to i3d node or i3d mapping identifier
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
>

<armRight node="node"Description: Right bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
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
/>

<armLeft node="node"Description: Left bottom arm
Type: Index to i3d node or i3d mapping identifier
Required: no
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
/>

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

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

<dependentBottomArm node="node"Description: Dependent bottom arm node
Type: Index to i3d node or i3d mapping identifier
Required: no
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
/>

</transNode>
<rotationNode2 lowerRotation="0 0 0"Description: Lower rotation
Type: Rotation values (x, y, z)
Default: 0 0 0
Required: no
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
/>

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

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

<subType 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
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
/>

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

<steeringBars rightNode="node"Description: Steering bar right 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
leftNode="node"Description: Steering bar left node
Type: Index to i3d node or i3d mapping identifier
Required: no
/>

<dependentComponentJoint 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
index="integer"Description: Index of component joint that will be adjusted while something is attached
Type: Integer
Required: no
attachInterpolationTime="1"Description: Time for the interpolation between the damping values after attach
Type: Time in seconds
Default: 1
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
transSpringFactor="1"Description: Factor that will be applied to the spring values on attach
Type: Float
Default: 1
Required: no
transDampingFactor="float"Description: Factor that will be applied to the damping values on attach
Type: Float
Default: #transSpringFactor
Required: no
/>

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

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

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

</attacherJoint>
<grab lockAllAxis="false"Description: Lock all axis
Type: Boolean
Default: false
Required: no
jointNode="node"Description: Joint node
Type: Index to i3d node or i3d mapping identifier
Required: no
limitYAxis="false"Description: Limit joint y axis movement (only allows movement up, but not down)
Type: Boolean
Default: false
Required: no
unmountOnTreeCut="false"Description: Unmount trees while the wood harvester cuts the tree (only if the vehicle is a wood harvester as well)
Type: Boolean
Default: false
Required: no
foldMinLimit="0"Description: Min. folding time to attach trees
Type: Float
Default: 0
Required: no
rotLimit="10"Description: Defines the rotation limit on all axis
Type: Angle
Default: 10
Required: no
foldMaxLimit="1"Description: Max. folding time to attach trees
Type: Float
Default: 1
Required: no
jointRoot="node"Description: Joint root node
Type: Index to i3d node or i3d mapping identifier
Required: no
>

<clawAnimation foldMinLimit="0"Description: Min. folding time to control claw
Type: Float
Default: 0
Required: no
name="string"Description: Claw animation name
Type: String
Required: no
controlGroupIndex="integer"Description: Control group that needs to be active
Type: Integer
Required: no
initialState="true"Description: Initial state of the grab (true: closed, false: open)
Type: Boolean
Default: true
Required: no
inputAction="IMPLEMENT_EXTRA2"Description: Input action to toggle animation
Type: String
Default: IMPLEMENT_EXTRA2
Required: no
textPos="action_foldBenchPos"Description: Input text to open the claw
Type: String or l10n key
Default: action_foldBenchPos
Required: no
foldMaxLimit="1"Description: Max. folding time to control claw
Type: Float
Default: 1
Required: no
closeDuringFolding="false"Description: Claw will be closed during folding
Type: Boolean
Default: false
Required: no
speedScale="1"Description: Animation speed scale
Type: Float
Default: 1
Required: no
textNeg="action_foldBenchNeg"Description: Input text to close the claw
Type: String or l10n key
Default: action_foldBenchNeg
Required: no
openDuringFolding="false"Description: Claw will be opened during folding
Type: Boolean
Default: false
Required: no
lockTime="1"Description: Animation time when trees are locked
Type: Float
Default: 1
Required: no
/>

<componentJointLimit jointIndex="1"Description: Index of component joint to change
Type: Integer
Default: 1
Required: no
limitInactive="x y z"Description: Limit when no tree is mounted
Type: Rotation values (x, y, z)
Required: no
limitActive="x y z"Description: Limit when tree is mounted
Type: Rotation values (x, y, z)
Required: no
/>

<treeDetection node="node"Description: Tree detection node
Type: Index to i3d node or i3d mapping identifier
Required: no
sizeZ="2"Description: Tree detection node size z
Type: Float
Default: 2
Required: no
sizeY="2"Description: Tree detection node size y
Type: Float
Default: 2
Required: no
/>

<claw componentJointIndex="integer"Description: Component joint index
Type: Integer
Required: no
axis="1"Description: Grab axis
Type: Integer
Default: 1
Required: no
rotationOffsetInverted="false"Description: Invert threshold
Type: Boolean
Default: false
Required: no
rotationOffsetTime="1000"Description: Rotation offset time until mount
Type: Float
Default: 1000
Required: no
dampingFactor="20"Description: Damping factor
Type: Float
Default: 20
Required: no
rotationOffsetThreshold="10"Description: Rotation offset threshold
Type: Angle
Default: 10
Required: no
>

<movingTool node="node"Description: Node of moving tool to block while limit is exceeded
Type: Index to i3d node or i3d mapping identifier
Required: no
closeDirection="integer"Description: Direction in which the grab is closed (if defined the trees are locked while fully closed)
Type: Integer
Required: no
direction="1"Description: Direction to block the moving tool
Type: Float
Default: 1
Required: no
/>

</claw>
<lockAnimation unlockSpeedScale="float"Description: Animation speed scale while trees are unlocked
Type: Float
Default: negative #speedScale
Required: no
name="string"Description: Lock animation played while tree joints are created and revered while joints are removed
Type: String
Required: no
speedScale="1"Description: Animation speed scale
Type: Float
Default: 1
Required: no
/>

<componentJointMassSetting minMass="0"Description: Mass of mounted trees to use min defined value (t)
Type: Float
Default: 0
Required: no
maxMass="1"Description: Mass of mounted trees to use max defined value (t)
Type: Float
Default: 1
Required: no
jointIndex="1"Description: Index of component joint to change
Type: Integer
Default: 1
Required: no
maxMaxRotDriveForce="x y z"Description: Max. rot drive force applied when the trees weight #maxMass
Type: Multiple values (x, y, z)
Required: no
minMaxRotDriveForce="x y z"Description: Max. rot drive force applied when the trees weight #minMass
Type: Multiple values (x, y, z)
Required: no
/>

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

</grab>
<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
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
node="node"Description: Component node
Type: Index to i3d node or i3d mapping identifier
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
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
transDampingFactor="float"Description: Factor that is applied to the trans damping of the component joint
Type: Float
Required: no
index="integer"Description: Index of the component joint to influence
Type: Integer
Required: no
/>

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

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

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

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

</xmlOverwrites>
<weedSpotSpraySensors>
<sensorNode id="string"Description: Sensor identifier of the type to use
Type: String
Required: no
translation="0 0 0"Description: Translation offset from node
Type: Translation values (x, y, z)
Default: 0 0 0
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>
<size width="float"Description: occupied width of the vehicle when loaded in this configuration
Type: Float
Required: no
minHeight="float"Description: Minimum height of the vehicle when loaded in this configuration
Type: Float
Required: no
heightOffset="float"Description: height offset
Type: Float
Required: no
minWidth="float"Description: Minimum 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
widthOffset="float"Description: width offset
Type: Float
Required: no
height="float"Description: occupied height of the vehicle when loaded in this configuration
Type: Float
Required: no
length="float"Description: occupied length of the vehicle when loaded in this configuration
Type: Float
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
/>

<aiAgent length="float"Description: AI vehicle length
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
frontWheelIndices="1 2 .. n"Description: List of wheels (indices) that are used for steering
Type: Multiple values
Required: no
lengthOffset="float"Description: AI vehicle length offset
Type: Float
Required: no
maxTurningRadius="float"Description: Max. turning radius (overwrites value detected from ackermann steering)
Type: Float
Required: no
frontOffset="float"Description: AI vehicle front offset
Type: Float
Required: no
height="float"Description: AI vehicle height
Type: Float
Required: no
width="float"Description: AI vehicle width
Type: Float
Required: no
maxBrakeAcceleration="float"Description: AI vehicle max brake acceleration
Type: Float
Required: no
maxCentripetalAcceleration="float"Description: AI vehicle max centripetal acceleration
Type: Float
Required: no
/>

<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
maxX="float"Description: Max. width
Type: Float
Required: no
indices="1 2 .. n"Description: Bending node indices
Type: Multiple values
Required: no
yOffset="float"Description: Y translation offset
Type: Float
Required: no
isActive="true"Description: Bending node is active
Type: Boolean
Default: true
Required: no
maxZ="float"Description: Max. length
Type: Float
Required: no
minX="float"Description: Min. width
Type: Float
Required: no
minZ="float"Description: Min. length
Type: Float
Required: no
/>

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

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

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

</logGrabConfiguration>
</logGrabConfigurations>
<grab foldMaxLimit="1"Description: Max. folding time to attach trees
Type: Float
Default: 1
Required: no
limitYAxis="false"Description: Limit joint y axis movement (only allows movement up, but not down)
Type: Boolean
Default: false
Required: no
jointNode="node"Description: Joint node
Type: Index to i3d node or i3d mapping identifier
Required: no
rotLimit="10"Description: Defines the rotation limit on all axis
Type: Angle
Default: 10
Required: no
jointRoot="node"Description: Joint root node
Type: Index to i3d node or i3d mapping identifier
Required: no
unmountOnTreeCut="false"Description: Unmount trees while the wood harvester cuts the tree (only if the vehicle is a wood harvester as well)
Type: Boolean
Default: false
Required: no
lockAllAxis="false"Description: Lock all axis
Type: Boolean
Default: false
Required: no
foldMinLimit="0"Description: Min. folding time to attach trees
Type: Float
Default: 0
Required: no
>

<lockAnimation unlockSpeedScale="float"Description: Animation speed scale while trees are unlocked
Type: Float
Default: negative #speedScale
Required: no
speedScale="1"Description: Animation speed scale
Type: Float
Default: 1
Required: no
name="string"Description: Lock animation played while tree joints are created and revered while joints are removed
Type: String
Required: no
/>

<clawAnimation openDuringFolding="false"Description: Claw will be opened during folding
Type: Boolean
Default: false
Required: no
textNeg="action_foldBenchNeg"Description: Input text to close the claw
Type: String or l10n key
Default: action_foldBenchNeg
Required: no
initialState="true"Description: Initial state of the grab (true: closed, false: open)
Type: Boolean
Default: true
Required: no
name="string"Description: Claw animation name
Type: String
Required: no
inputAction="IMPLEMENT_EXTRA2"Description: Input action to toggle animation
Type: String
Default: IMPLEMENT_EXTRA2
Required: no
foldMaxLimit="1"Description: Max. folding time to control claw
Type: Float
Default: 1
Required: no
closeDuringFolding="false"Description: Claw will be closed during folding
Type: Boolean
Default: false
Required: no
lockTime="1"Description: Animation time when trees are locked
Type: Float
Default: 1
Required: no
controlGroupIndex="integer"Description: Control group that needs to be active
Type: Integer
Required: no
textPos="action_foldBenchPos"Description: Input text to open the claw
Type: String or l10n key
Default: action_foldBenchPos
Required: no
speedScale="1"Description: Animation speed scale
Type: Float
Default: 1
Required: no
foldMinLimit="0"Description: Min. folding time to control claw
Type: Float
Default: 0
Required: no
/>

<componentJointLimit limitInactive="x y z"Description: Limit when no tree is mounted
Type: Rotation values (x, y, z)
Required: no
limitActive="x y z"Description: Limit when tree is mounted
Type: Rotation values (x, y, z)
Required: no
jointIndex="1"Description: Index of component joint to change
Type: Integer
Default: 1
Required: no
/>

<claw componentJointIndex="integer"Description: Component joint index
Type: Integer
Required: no
rotationOffsetThreshold="10"Description: Rotation offset threshold
Type: Angle
Default: 10
Required: no
dampingFactor="20"Description: Damping factor
Type: Float
Default: 20
Required: no
rotationOffsetInverted="false"Description: Invert threshold
Type: Boolean
Default: false
Required: no
axis="1"Description: Grab axis
Type: Integer
Default: 1
Required: no
rotationOffsetTime="1000"Description: Rotation offset time until mount
Type: Float
Default: 1000
Required: no
>

<movingTool direction="1"Description: Direction to block the moving tool
Type: Float
Default: 1
Required: no
node="node"Description: Node of moving tool to block while limit is exceeded
Type: Index to i3d node or i3d mapping identifier
Required: no
closeDirection="integer"Description: Direction in which the grab is closed (if defined the trees are locked while fully closed)
Type: Integer
Required: no
/>

</claw>
<componentJointMassSetting minMaxRotDriveForce="x y z"Description: Max. rot drive force applied when the trees weight #minMass
Type: Multiple values (x, y, z)
Required: no
jointIndex="1"Description: Index of component joint to change
Type: Integer
Default: 1
Required: no
maxMaxRotDriveForce="x y z"Description: Max. rot drive force applied when the trees weight #maxMass
Type: Multiple values (x, y, z)
Required: no
minMass="0"Description: Mass of mounted trees to use min defined value (t)
Type: Float
Default: 0
Required: no
maxMass="1"Description: Mass of mounted trees to use max defined value (t)
Type: Float
Default: 1
Required: no
/>

<treeDetection sizeY="2"Description: Tree detection node size y
Type: Float
Default: 2
Required: no
node="node"Description: Tree detection node
Type: Index to i3d node or i3d mapping identifier
Required: no
sizeZ="2"Description: Tree detection node size z
Type: Float
Default: 2
Required: no
/>

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

</grab>
</logGrab>