﻿<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<vehicle type="M620">
	<annotation>Copyright (C) GIANTS Software GmbH, All Rights Reserved.</annotation>
    <name>
        <en>Deutz Agrotron M620</en>
        <de>Deutz Agrotron M620</de>
    </name>
    <filename>deutzAgrotronM620.i3d</filename>

    <size width="3.5" length="6"/>

    <wheels autoRotateBackSpeed="2">
        <wheel rotSpeed="70" rotMax="34" rotMin="-34" driveMode="2" repr="1>1" driveNode="1>1|0" radius="0.77" deltaY="0.1" suspTravel="0.2" spring="100" damper="50" mass="0.13" longitudalStiffness="0.9" lateralStiffness="2" />
        <wheel rotSpeed="70" rotMax="34" rotMin="-34" driveMode="2" repr="2>1" driveNode="2>1|0" radius="0.77" deltaY="0.1" suspTravel="0.2" spring="100" damper="50" mass="0.13" longitudalStiffness="0.9" lateralStiffness="2" />
        <wheel rotSpeed="0" driveMode="1" repr="3>1" radius="0.92" deltaY="0.0" suspTravel="0.05" spring="200" damper="50" mass="0.2" longitudalStiffness="0.9" lateralStiffness="2" />
        <wheel rotSpeed="0" driveMode="1" repr="4>1" radius="0.92" deltaY="0.0" suspTravel="0.05" spring="200" damper="50" mass="0.2" longitudalStiffness="0.9" lateralStiffness="2" />
    </wheels>
    <motor minRpm="100" maxRpm="750 1200 2250 500" maxTorques="-1 -1 -1 -1" brakeForce="3" lowBrakeForceScale="0.3" compensateWheelRadius="true" lowBrakeForceSpeedLimit="0.7" forwardGearRatio="15.5" backwardGearRatio="17" differentialRatio="1" rpmFadeOutRange="120">
		<torque rpm="500" torque="0.36"/>
		<torque rpm="2250" torque="0.37"/>
		<backwardTorque rpm="600" torque="0.35"/>
		<backwardTorque rpm="720" torque="0"/>
    </motor>
	<accelerationSpeed maxAcceleration="0.25" deceleration="1" backwardDeceleration="0.7" />
    <fuelCapacity>270</fuelCapacity>
    <fuelUsage>0.0027</fuelUsage>
    <downForce>7</downForce>
	<bunkerSiloCompacter compactingScale="32.5"/>
	
	<components count="5">
	<!-- main component -->
    <component1 centerOfMass="0 0.01 0.1" solverIterationCount="10" />
	<!-- front right wheel component -->
	<component2 centerOfMass="0 -0.8 0" solverIterationCount="190" />
	<!-- front left wheel component -->
	<component3 centerOfMass="0 -0.8 0" solverIterationCount="190" />
	<!-- back right wheel component -->
	<component4 centerOfMass="0 -0.8 0" solverIterationCount="190" />
	<!-- back left wheel component -->
	<component5 centerOfMass="0 -0.8 0" solverIterationCount="190" />
	
	<!-- front right wheel joint (componentJointIndex = 1) -->
	<joint component1="0" component2="1" index="1>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
	<!-- front left wheel joint (componentJointIndex = 2) -->
	<joint component1="0" component2="2" index="2>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
	<!-- back right wheel joint (componentJointIndex = 3) -->
	<joint component1="0" component2="3" index="3>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
	<!-- back left wheel joint (componentJointIndex = 4) -->
	<joint component1="0" component2="4" index="4>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
			
	<!-- disable collisions between existing components -->
	<collisionPair component1="0" component2="1" enabled="false"/>
	<collisionPair component1="0" component2="2" enabled="false"/>
	<collisionPair component1="0" component2="3" enabled="false"/>
	<collisionPair component1="0" component2="4" enabled="false"/>
    </components>
	
	<!-- front right wheel joint (componentJointIndex = 1) -->
	<joint component1="0" component2="1" index="1>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
	<!-- front left wheel joint (componentJointIndex = 2) -->
	<joint component1="0" component2="2" index="2>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
	<!-- back right wheel joint (componentJointIndex = 3) -->
	<joint component1="0" component2="3" index="3>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
	<!-- back left wheel joint (componentJointIndex = 4) -->
	<joint component1="0" component2="4" index="4>0" rotLimit="0 0 0" transLimit="0 0 0" breakable="false"/>
	
	<!-- main ploughing mod code -->
	<frontRightWheel wheelIndex="1" componentJointIndex="1" furrowDepth="0.22" fallSpeed="0.25" tireWidth="0.35" />
	<frontLeftWheel wheelIndex="2" componentJointIndex="2" furrowDepth="0.22" fallSpeed="0.25" tireWidth="0.35" />
	<backRightWheel wheelIndex="3" componentJointIndex="3" furrowDepth="0.22" fallSpeed="0.25" tireWidth="0.40" />
	<backLeftWheel wheelIndex="4" componentJointIndex="4" furrowDepth="0.22" fallSpeed="0.25" tireWidth="0.40" />
	<!-- end main ploughing mod code -->
	
	<!-- optional ploughing mod code -->
	<workExhaustParticleSystems count="1">
        <workExhaustParticleSystem1 node="25" file="$data/vehicles/particleSystems/exhaustParticleSystemBig.i3d" />
	</workExhaustParticleSystems>
	
	<increaseRpmDuringPloughing value="true" />
	<!-- end optional ploughing mod code -->
	
    <cameras count="2">
        <camera1 index="0>4|0" rotatable="true" rotateNode="4" limit="true" useWorldXZRotation="true" rotMinX="-1.4" rotMaxX="1" transMin="4" transMax="35" >
			<raycastNode index="0>6"/>
			<raycastNode index="0>7"/>
		</camera1>
        <camera2 index="0>5" rotatable="true" limit="true" rotMinX="-1.1" rotMaxX="0.4" transMin="0" transMax="0" />
	</cameras>
	
    <lights>
        <light realLight="0>9" fakeLight="0>26" decoration="0>27" lightType="0"/>
        <light realLight="0>10" decoration="0>29" lightType="1"/>
    </lights>
	
	<brakeLights>
		<brakeLight index="0>30" />
	</brakeLights>
	
	<beaconLights> 
		<beaconLight index="0>28" speed="0.016" />
	</beaconLights>	

    <steering index="0>22|0" rotationSpeed="6" />
    <enterReferenceNode index="0>" />
    <exitPoint index="0>8" />

    <trailerAttacherJoints>
        <trailerAttacherJoint index="0>18" maxRotLimit="10 80 80" ptoOutputNode="0>19" ptoFilename="PS/powerTakeoff.i3d"/>
        <trailerAttacherJoint index="0>20" low="true" ptoOutputNode="0>19" ptoFilename="PS/powerTakeoff.i3d"/>	
    </trailerAttacherJoints>

    <attacherJoints>
        <attacherJoint index="0>11|0|0" rotationNode="0>11" minRot="5 0 0" minRot2="4 0 0" maxRot="-15 0 0" rotationNode2="0>11|0" maxRot2="15 0 0" maxTransLimit="0 0.5 0" maxRotLimit="8 0 20" moveTime="2" ptoOutputNode="0>19" ptoFilename="PS/powerTakeoff.i3d">
            <bottomArm rotationNode="0>12" translationNode="0>12|0" referenceNode="0>12|0|0" zScale="-1" />
            <topArm baseNode="0>13" filename="PS/upperLinkMedium.i3d" zScale="-1" />
        </attacherJoint>
        <attacherJoint index="0>15|0|0" rotationNode="0>15" minRot="-5 0 0" minRot2="-2 0 0" maxRot="16 0 0" rotationNode2="15|0" maxRot2="-14 0 0" maxTransLimit="0 0.5 0" maxRotLimit="8 0 20" moveTime="2" ptoOutputNode="0>21" ptoFilename="PS/powerTakeoff.i3d">
            <bottomArm rotationNode="0>16" translationNode="16|0" referenceNode="16|0|0" zScale="1" />
            <topArm baseNode="0>17" filename="PS/upperLinkMedium.i3d" zScale="1" />
        </attacherJoint>
		<attacherJoint index="0>38" jointType="sigma"/>
    </attacherJoints>
		
    <movingTools>
		<!-- attacher joint back bottom-->
        <movingTool index="0>12">
            <!-- cylinder 2 -->
            <dependentPart index="0>14" />
        </movingTool>
    </movingTools>
	
	<movingParts>
        <!-- attacher joint back bottom cylinder 2 -->
        <movingPart index="0>14" referencePoint="0>12|0|1" localReferencePoint="0>14|0" referenceFrame="0>" invertZ="false">
            <dependentPart index="0>14|0" />
        </movingPart>
        <!-- attacher joint back bottom cylinder 2b -->
        <movingPart index="0>14|0" referencePoint="0>12|0|1" referenceFrame="0>14|1" invertZ="false">
        </movingPart>
    </movingParts>	
	
    <characterNode index="0>23" cameraMinDistance="1.5" />
	
    <aiTrafficCollisionTrigger index="0>24" />
	
    <exhaustParticleSystems count="1">
        <exhaustParticleSystem1 node="0>25" file="PS/realParticles.i3d" />
    </exhaustParticleSystems>
	<realExhaustParticleSystem parameter="exhaustingSystem" minAlpha="0.1" maxAlpha="1" />
	
    <motorStartDuration>2500</motorStartDuration>
    <attachSound file="sounds/attach.wav" pitchOffset="1" />
    <motorStartSound file="sounds/agro620_start.wav" pitchOffset="1" volume="1.0" />
    <motorSound file="sounds/agro620_idle.wav" pitchOffset="1" pitchScale="0.03" pitchMax="1.65" volume="1.0" radius="50" innerRadius="20" />
    <motorSoundRun file="sounds/agro620_run.wav" pitchOffset="0.5" pitchScale="0.02" pitchMax="1.05" volume="1" />
    <motorStopSound file="sounds/agro620_out.wav" pitchOffset="1" />
    <compressedAirSound file="sounds/brakeBig.wav" pitchOffset="1" volume="1.0"/>
    <compressionSound file="sounds/compressorWork.wav" pitchOffset="1" volume="1.5"/>
	<honkSound file="sounds/horn.wav" volume="1" radius="80" innerRadius="35" />
	
	<schemaOverlay file="PS/vehicleSchema.png" fileSelected="PS/vehicleSchemaSelected.png" width="0.5" height="0.5" attacherJointPosition="0.5 0">
        <attacherJoint position="1 0" rotation="0" invertX="false" />
        <attacherJoint position="0 0" rotation="0" invertX="true" />
        <attacherJoint position="1 0" rotation="0" invertX="false" />
        <attacherJoint position="1 0" rotation="0" invertX="false" />
    </schemaOverlay>
	
	<shiftableMass massPerDisc="0" massNode="0>" defaultMass="0">
		<disc1 index="0>38"/>
	</shiftableMass>
	
	<animParts>
		<animPart index="16|0|2" id="FHGEO" showHelp="false" rotMin="-95 -28 12" rotMax="0 -28 0" moveTime="3.5" />
		<animPart index="16|0|3" id="FHGEO" showHelp="false" rotMin="-95 28 -12" rotMax="0 28 0" moveTime="3.5" />
	</animParts>
	
	<interactiveComponents>
		<buttons count="6">
			<button1 name="BEL3WARN" mark="21|3" size="0.03" event="toggleWarningLights"/>
			<button2 name="BEL3RIGHT" mark="21|4" size="0.01" event="toggleRightIndicator"/>
			<button3 name="BEL3LEFT" mark="21|5" size="0.01" event="toggleLeftIndicator"/>
			<button4 name="AbL" mark="21|6" size="0.07" event="toggleFrontlights"/>
			<button5 name="ALHinten" mark="21|8" size="0.01" event="toggleFrontWorklights"/>
			<button6 name="ALVorne" mark="21|9" size="0.01" event="toggleBackWorklights"/>
		</buttons>
	</interactiveComponents>
	<controlPanels count="2" >
		<controlPanel1 index="0|16|1|0" />
		<controlPanel2 index="0|16|1|1" />
	</controlPanels>
	
	<wheelParticleSystems file="PS/wheelParticleSystem.i3d" >
        <wheelParticleSystem node="0>39|0" />
        <wheelParticleSystem node="0>39|1" />
        <wheelParticleSystem node="0>39|2" />
	    <wheelParticleSystem node="0>39|3" />
    </wheelParticleSystems>
	
	<drivingParticles threshold="0.005">
        <drivingParticle position="-1.0 0 1.9" rotation="0 0 0" file="PS/dustParticleSystem.i3d" wheel="1" minSpeed="10" maxSpeed="60"/>
        <drivingParticle position="1.2 0 1.9" rotation="0 0 0" file="PS/dustParticleSystem.i3d" wheel="2" minSpeed="10" maxSpeed="60"/>
        <drivingParticle position="-1.0 0 -1.5" rotation="0 0 0" file="PS/dustParticleSystem.i3d" wheel="3" minSpeed="10" maxSpeed="60"/>
        <drivingParticle position="1.2 0 -1.5" rotation="0 0 0" file="PS/dustParticleSystem.i3d" wheel="4" minSpeed="10" maxSpeed="60"/>
    </drivingParticles>
	
	<blends1>
	    <blend1 index="1>1|0|1" />
	    <blend1 index="2>1|0|1" />	
	</blends1>
    	<blends2>
	    <blend2 index="3>1|1" />
	    <blend2 index="4>1|1" />
	</blends2>
	
	<lightsaddon lightsStayOn="true">
	   <light type="dirLeft" index="0>40|1|0" />
	   <light type="dirLeft" index="0>40|1|1" />
	   <light type="dirRight" index="0>40|0|0" />
	   <light type="dirRight" index="0>40|0|1" />
	   <light type="reverse" index="0>40|2|0" />
	   <light type="reverse" index="0>40|2|1" />
    </lightsaddon>
	
	<extraWeights count="2">
        <weight1 index="3>1|2" />
        <weight2 index="4>1|2" />
    </extraWeights>
	
	<dirt dirtInterval="2" cleaningInterval="15" updateInterval="0.01">
		<dirtComponent index="0>12" />
		<dirtComponent index="0>12|0" />
		<dirtComponent index="0>14" />
		<dirtComponent index="0>14|0" />
		<dirtComponent index="0>16" />
		<dirtComponent index="0>16|0" />
		<dirtComponent index="0>16|0|1" />
		<dirtComponent index="0>16|0|2" />
		<dirtComponent index="0>16|0|3" />
		<dirtComponent index="0>31" />
		<dirtComponent index="0>38" />
		<dirtComponent index="1>1" />
		<dirtComponent index="1>1|0" />
		<dirtComponent index="1>1|0|0" />
		<dirtComponent index="1>1|0|1" />
		<dirtComponent index="1>1|0|1|0" />
		<dirtComponent index="2>1" />
		<dirtComponent index="2>1|0" />
		<dirtComponent index="2>1|0|0" />
		<dirtComponent index="2>1|0|1" />
		<dirtComponent index="2>1|0|1|0" />
		<dirtComponent index="3>1" />
		<dirtComponent index="3>1|0" />
		<dirtComponent index="3>1|1" />
		<dirtComponent index="3>1|1|0" />
		<dirtComponent index="3>1|2" />
		<dirtComponent index="4>1" />
		<dirtComponent index="4>1|0" />
		<dirtComponent index="4>1|1" />
		<dirtComponent index="4>1|1|0" />
		<dirtComponent index="4>1|2" />
	</dirt>
	
	
</vehicle>
