Community Forum

Vehicle types

Forum Overview >> Farming Simulator 17

CategoryFarming Simulator 17
Created28.05.2017 12:02


Chandelier Mickael (shun7171) 28.05.2017 12:02
Hello everyone, I have a problem with the creation of the "vehicle type" for a nutrient applicator. I can take the "vehicle type sprayer_animated" but I need specializations: <specialization name = "speedRotatingParts" />, <specialization name = "workParticles" />. But my mod does not work and I have an error message.



LOG :
Enabled withering
C:/Users/shun7/Documents/My Games/FarmingSimulator2017/pdlc/kuhnPack/vehicles/tools/kuhn/kuhnDiscolanderXM.i3d (374.53) ms
Error loadVehicle: unknown type 'JohnDeere2510L.nutrient_applicator' in 'C:/Users/shun7/Documents/My Games/FarmingSimulator2017/mods/JohnDeere2510L/JohnDeere2510L.xml'
data/objects/bigBagContainer/bigBagContainerFertilizer.i3d (7.08) ms
data/objects/bigBagContainer/bigBagContainerSeeds.i3d (3.05) ms
data/objects/pallets/fertilizerTank.i3d (4.00) ms
data/placeables/shelters/storageShelter01.i3d (6.93) ms
data/placeables/shelters/storageShelter02.i3d (3.04) ms
data/placeables/shelters/vehicleShelter.i3d (2.11) ms
data/vehicles/train/locomotive.i3d (26.38) ms
data/vehicles/train/wagonTimber.i3d (12.88) ms
data/vehicles/train/wagonWoodChips.i3d (13.89) ms
data/vehicles/train/wagonGrain.i3d (13.42) ms
data/vehicles/train/wagonSugarbeets.i3d (14.15) ms
dataS2/character/player/player02.i3d (380.60) ms
Error loadVehicle: unknown type 'JohnDeere2510L.nutrient_applicator' in 'C:/Users/shun7/Documents/My Games/FarmingSimulator2017/mods/JohnDeere2510L/JohnDeere2510L.xml'

Modesc:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<modDesc descVersion="37">
<author> Copyright (C) Julian11, Shun7171 All Rights Reserved.</author>
<version>1.0</version>
<title>
<en>John Deere 2510L</en>
<de>John Deere 2510L</de>
<fr>John Deere 2510L</fr>
</title>
<description>
<en>
<![CDATA[2510L Nutrient applicator]]>
</en>
<de>
<![CDATA[2510L Nutrient applicator]]>
</de>
</description>
<iconFilename>icon_JohnDeere2510L.dds</iconFilename>
<multiplayer supported="true"/>

<extraSourceFiles>
<sourceFile filename="script/addStoreCategory.lua" />
</extraSourceFiles>

<type name="nutrient_applicator" className="Vehicle" filename="dataS/scripts/vehicles/Vehicle.lua">
<specialization name="attacherJoints" />
<specialization name="lights" />
<specialization name="workArea" />
<specialization name="workParticles" />
<specialization name="speedRotatingParts" />
<specialization name="attachable" />
<specialization name="animatedVehicle" />
<specialization name="cylindered" />
<specialization name="fillable" />
<specialization name="fillVolume" />
<specialization name="turnOnVehicle" />
<specialization name="foldable" />
<specialization name="sprayer" />
<specialization name="powerConsumer" />
<specialization name="washable" />
<specialization name="mountable" />
</type>

<storeItems>
<newCategories>
<newCategory name="NUTRIENTAPPLICATOR" previousCategory="placeables" imageFilename="script/category_store.dds" />
</newCategories>
<storeItem xmlFilename="JohnDeere2510L.xml"/>
</storeItems>

<brands>
<brand name="JOHNDEERE" title="John Deere" image="brand.dds"/>
</brands>

<inputBindings>
<input name="raise" key1="KEY_x" button="" />
<input name="lower" key1="KEY_z" button="" />
</inputBindings>


<l10n>
<text name="NUTRIENTAPPLICATOR"><en>Nutrient Applicator</en><de>Nährstoff-Applikator</de><fr>Applicateur de nutriments</fr></text>
<text name="storeJohn Deere">
<en>John Deere 2510L</en>
<de>John Deere 2510L</de>
<fr>John Deere 2510L</fr>
</text>
</l10n>


</modDesc>

Bilbo Beutlin (BBeutlin) 29.05.2017 00:14
What about the vehicle.xml?
The modDesc <type name="myModType" .. MUST conform to vehicle.xml <vehicle type="myModType">
Note also: the names are case-sensitive!

Chandelier Mickael (shun7171) 29.05.2017 15:56
For the xml it is the same;

Xml :
<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<vehicle type="nutrient_applicator">
<annotation>Copyright (C) Julian11, Shun7171 All Rights Reserved.</annotation>

<storeData>
<name>John Deere 2510L</name>
<specs>
<workingWidth>12</workingWidth>
<neededPower>165</neededPower>
</specs>
<functions>
<function>$l10n_function_sprayer</function>
</functions>
<image>store.dds</image>
<price>75600</price>
<dailyUpkeep>45</dailyUpkeep>
<lifetime>600</lifetime>
<rotation>0</rotation>
<brand>JOHNDEERE</brand>
<category>NUTRIENTAPPLICATOR</category>
<fieldJob sizeCategory="2" typeCategory="sprayer" />
<vertexBufferMemoryUsage>3256152</vertexBufferMemoryUsage>
<indexBufferMemoryUsage>485580</indexBufferMemoryUsage>
<textureMemoryUsage>12583056</textureMemoryUsage>
<instanceVertexBufferMemoryUsage>0</instanceVertexBufferMemoryUsage>
<instanceIndexBufferMemoryUsage>0</instanceIndexBufferMemoryUsage>
</storeData>

<typeDesc>typeDesc_sprayer</typeDesc>
<filename>JohnDeere2510L.i3d</filename>

<size width="3" length="8" />

<powerConsumer neededPtoPower="0" forceNode="0>" maxForce="20" />
<speedLimit value="18" />

<wheelConfigurations>
<wheelConfiguration name="$l10n_configuration_valueDefault" price="0">
<wheels>
<wheel restLoad="2.0" repr="0>0|4|0" forcePointRatio="0.3" filename="roue/roues_JD2510L.xml" isLeft="true" initialCompression="30" suspTravel="0.2" spring="30" damper="30" hasTireTracks="true" hasParticles="true" />
<wheel restLoad="2.0" repr="0>0|4|1" forcePointRatio="0.3" filename="roue/roues_JD2510L1.xml" isLeft="false" initialCompression="30" suspTravel="0.2" spring="30" damper="30" hasTireTracks="true" hasParticles="true" />
<wheel restLoad="2.0" repr="0>0|4|2" forcePointRatio="0.3" filename="roue/roues_JD2510L1.xml" isLeft="true" initialCompression="30" suspTravel="0.2" spring="30" damper="30" hasTireTracks="true" hasParticles="true" />
<wheel restLoad="2.0" repr="0>0|4|3" forcePointRatio="0.3" filename="roue/roues_JD2510L.xml" isLeft="false" initialCompression="30" suspTravel="0.2" spring="30" damper="30" hasTireTracks="true" hasParticles="true" />
<wheel restLoad="2.0" repr="1>0|0|4|0" forcePointRatio="0.3" filename="roue/rouesJauges_JD2510L.xml" isLeft="false" initialCompression="10" suspTravel="0.2" spring="30" damper="30" hasTireTracks="true" hasParticles="true" />
<wheel restLoad="2.0" repr="1>0|1|4|0" forcePointRatio="0.3" filename="roue/rouesJauges_JD2510L.xml" isLeft="true" initialCompression="10" suspTravel="0.2" spring="30" damper="30" hasTireTracks="true" hasParticles="true" />
</wheels>
</wheelConfiguration>
</wheelConfigurations>

<brakeForce>1.2</brakeForce>

<lights>
<low>
<light decoration="0>0|12|0" lightTypes="0 3" /> <!--BackLights-->
</low>
<high>
<light realLight="0>0|12|0|0|2" decoration="0>0|12|0" lightTypes="0 3" /> <!--BackLights-->
</high>
</lights>

<brakeLights>
<brakeLight realLight="0>0|12|0|0|2" decoration="0>0|12|2|0" />
</brakeLights>

<turnLights>
<turnLightLeft realLight="0>0|12|1|0|1" decoration="0>0|12|1|0|0" />
<turnLightRight realLight="0>0|12|1|1|1" decoration="0>0|12|1|1|0" />
</turnLights>

<groundReferenceNodes>
<groundReferenceNode index="0>0|13" threshold="0.2" depthNode="0>0|12"/>
</groundReferenceNodes>

<workAreas>
<workArea startIndex="0>0|9|0" widthIndex="0>0|9|1" heightIndex="0>0|9|2" refNodeIndex="0" type="sprayer" foldMinLimit="0" foldMaxLimit="0.1" chargeValue="1" />

</workAreas>

<onlyActiveWhenLowered value="true" />

<inputAttacherJoints>
<inputAttacherJoint index="0>0|8" jointType="trailerLow" attacherHeight="0.6" />
</inputAttacherJoints>

<groundParticleAnimations>
<groundParticleAnimation>
<node index="0>0|14|0" refNodeIndex="0" materialType="SOIL" />
</groundParticleAnimation>

<groundParticle>
<node index="0>0|14|1" refNodeIndex="0" particleType="SOIL" />
<node index="0>0|14|2" refNodeIndex="0" particleType="SOIL_SMOKE" />
<node index="0>0|14|3" refNodeIndex="0" particleType="SOIL_CHUNKS" worldSpace="false" />
</groundParticle>
</groundParticleAnimations>

<sprayUsageScales workingWidth="12.0" scale="1" />

<fillUnits>
<fillUnit unit="$l10n_unit_literShort" fillTypeCategories="sprayer" capacity="6800" />
</fillUnits>

<fillLitersPerSecond>350</fillLitersPerSecond>

<sprayer fillUnitIndex="1" unloadInfoIndex="1" loadInfoIndex="1" />

<cylinderedHydraulicSound file="$data/sounds/hydraulicUp.wav" pitchOffset="0.8" volume="0.8" indoorVolumeFactor="0.85" />
<fillSound file="$data/maps/sounds/refuel.wav" pitchOffset="1.0" volume="1.0" volume3D="1.0" innerRadius="10" radius="40" linkNode="0>"/>
<spraySound file="$data/sounds/sprayer.wav" pitchOffset="1.0" volume="1.0" indoorVolumeFactor="0.35" />
<cultivatorSound file="$data/sounds/cultivatorSound.wav" pitchOffset="1.10" volume="1.00" indoorVolumeFactor="0.50" />

<speedRotatingParts>
<speedRotatingPart shaderNode="1>0|5|0" radius="0.26" foldMinLimit="0" foldMaxLimit="0.1" refNodeIndex="0"/>
<speedRotatingPart shaderNode="1>0|0|3|0" radius="0.26" foldMinLimit="0" foldMaxLimit="0.1" refNodeIndex="0"/>
<speedRotatingPart shaderNode="1>0|0|0|1|0" radius="0.26" foldMinLimit="0" foldMaxLimit="0.1" refNodeIndex="0"/>
<speedRotatingPart shaderNode="1>0|1|3|0" radius="0.26" foldMinLimit="0" foldMaxLimit="0.1" refNodeIndex="0"/>
<speedRotatingPart shaderNode="1>0|1|0|1|0" radius="0.26" foldMinLimit="0" foldMaxLimit="0.1" refNodeIndex="0"/>
</speedRotatingParts>

<movingTools>
<!-- main arm -->
<movingTool index="0>0|15">
<componentJoint index="0" anchorActor="0"/>
<dependentPart index="0>0|1|0" />
<dependentPart index="0>0|1|1" />
<dependentPart index="0>0|1|2" />
<dependentPart index="0>0|1|3" />
</movingTool>
<movingTool index="0>0|1|0">
<dependentPart index="0>0|6" />
</movingTool>
<movingTool index="0>0|1|2">
<dependentPart index="0>0|7" />
</movingTool>
<movingTool index="0>0|1|1">
<dependentPart index="0>0|15" />
</movingTool>
<movingTool index="0>0|1|3">
<dependentPart index="0>0|15" />
</movingTool>
<movingTool index="1>0|0" wheelIndices="3">
<dependentPart index="1>0|6" />
</movingTool>
<movingTool index="1>0|1" wheelIndices="4">
<dependentPart index="1>0|7" />
</movingTool>
<movingTool index="1>0|0|0">
<dependentPart index="1>0|0|0|3" />
</movingTool>
<movingTool index="1>0|0|0|3" ><!-- Linkages -->
<dependentPart index="1>0|0|5" /><!-- Cylinders -->
</movingTool>
<movingTool index="1>0|1|0">
<dependentPart index="1>0|1|0|3" />
</movingTool>
<movingTool index="1>0|1|0|3"><!-- Linkages -->
<dependentPart index="1>0|1|5" /><!-- Cylinders -->
</movingTool>
</movingTools>

<movingParts>
<movingPart index="0>0|5" referencePoint="0>0|1|0|0" referenceFrame="0>0|1|0|0" isActiveDirty="true" playSound="false">
<translatingPart index="0>0|5|0" />
</movingPart>
<movingPart index="0>0|6" referencePoint="0>0|1|2|0" referenceFrame="0>0|1|2|0" isActiveDirty="true" playSound="false">
<translatingPart index="0>0|6|0" />
</movingPart>
<movingPart index="1>0|6" referencePoint="1>0|0|8" referenceFrame="1>0|0|8" playSound="true">
<translatingPart index="1>0|6|0" />
</movingPart>
<movingPart index="1>0|7" referencePoint="1>0|1|8" referenceFrame="1>0|1|8" playSound="true">
<translatingPart index="1>0|7|0" />
</movingPart>
<movingPart index="1>0|0|5" referencePoint="1>0|0|0|3|1" referenceFrame="1>0|0|0|3|1" playSound="true">
<translatingPart index="1>0|0|5|0" />
</movingPart>
<movingPart index="1>0|1|5" referencePoint="1>0|1|0|3|1" referenceFrame="1>0|1|0|3|1" playSound="true">
<translatingPart index="1>0|1|5|0" />
</movingPart>
<movingPart index="1>0|0|0|3|0" referencePoint="1>0|0|9" referenceFrame="1>0|0|9" isActiveDirty="true" playSound="false" scaleZ="true"/>
<movingPart index="1>0|1|0|3|0" referencePoint="1>0|1|9" referenceFrame="1>0|1|9" isActiveDirty="true" playSound="false" scaleZ="true"/>

<movingPart index="0>0|1|0" referencePoint="1>0|8" referenceFrame="1>" isActiveDirty="true" scaleZ="true" />
<movingPart index="0>0|1|1" referencePoint="1>0|9" referenceFrame="1>" isActiveDirty="true" scaleZ="true" />
<movingPart index="0>0|1|2" referencePoint="1>0|10" referenceFrame="1>" isActiveDirty="true" scaleZ="true" />
<movingPart index="0>0|1|3" referencePoint="1>0|11" referenceFrame="1>" isActiveDirty="true" scaleZ="true" />
</movingParts>

<foldingParts startMoveDirection="1" foldMiddleAnimTime="0.35">
<foldingPart animationName="folding" speedScale="0.5" />
</foldingParts>


<animations>
<animation name="folding">
<part node="0>0|15" startTime="0.0" endTime="3.0" startTrans="0 0.799 0.126" endTrans="0 0.999 0.126"/>

<part node="1>0|0" startTime="6.0" endTime="9.0" startRot="0 0 0" endRot="0 0 -95"/>
<part node="1>0|1" startTime="6.0" endTime="9.0" startRot="0 0 0" endRot="0 0 95"/>
<part node="1>0|0|0" startTime="3.0" endTime="6.0" startRot="0 0 0" endRot="0 0 -165"/>
<part node="1>0|1|0" startTime="3.0" endTime="6.0" startRot="0 0 0" endRot="0 0 165"/>
<part node="1>0|0|0|3" startTime="3.0" endTime="6.0" startRot="-95.585 -90 0" endRot="0 -90 0"/>
<part node="1>0|1|0|3" startTime="3.0" endTime="6.0" startRot="-95.585 90 0" endRot="0 90 0"/>

<part componentJointIndex="0" startTime="0.0" endTime="0.0" endTransLimit="0 0 0" endRotLimit="0 0 0"/>
</animation>
<animation name="moveSupport">
<part node="0>0|0|1" startTime="0" endTime="0.1" startTrans="0.011 -0.614 -0.092" endTrans="0.011 -0.866 -0.092" />
<part node="0>0|0" startTime="0" endTime="0.1" startRot="-46 0 0" endRot="0 0 0" />
<part node="0>0|0|0" startTime="0" endTime="0.1" startRot="0 0 0" endRot="1080 0 0" />
</animation>
</animations>

<support animationName="moveSupport" />

<ai>
<areaMarkers leftIndex="0>0|10|0|0" rightIndex="0>0|10|0|1" backIndex="0>0|10|0|2" />
<sizeMarkers leftIndex="0>0|10|1|0" rightIndex="0>0|10|1|1" backIndex="0>0|10|1|2" />
<trafficCollisionTrigger index="0>0|10|0|3" />
<needsLowering value="false"/>
<forceTurnNoBackward value="true" />
<toolReverserDirectionNode index="0>0|10|1|2" />
</ai>

<washable dirtDuration="180" washDuration="1" workMultiplier="4" />

<components count="2">
<component1 centerOfMass="-0.00 1.62 -1.43" solverIterationCount="10" />
<component2 centerOfMass="0.00 1.25 0.32" solverIterationCount="10" />

<joint component1="0" component2="1" index="0>0|15" rotLimit="0 0 0" transLimit="0 1 0" />
</components>

<schemaOverlay file="$dataS2/menu/schemas/implementSchema.png" fileSelected="$dataS2/menu/schemas/implementSchemaSelected.png" fileTurnedOn="$dataS2/menu/schemas/implementSchemaTurnedOn.png" fileSelectedTurnedOn="$dataS2/menu/schemas/implementSchemaSelectedTurnedOn.png" width="0.5" height="0.5" attacherJointPosition="0 0"/>

</vehicle>

Bilbo Beutlin (BBeutlin) 29.05.2017 17:06
In your modDesc you have
<type ... filename="dataS/scripts/vehicles/Vehicle.lua">

From outside the installation folder you must use "$"
<type ... filename="$dataS/scripts/vehicles/Vehicle.lua">


An error in your vehicle.xml
<typeDesc>typeDesc_sprayer</typeDesc>
must be
<typeDesc>$l10n_typeDesc_sprayer</typeDesc>

Chandelier Mickael (shun7171) 29.05.2017 20:40
thanks for your help,
I have fix the errors but it still does not work (I always have the same error message)


Bilbo Beutlin (BBeutlin) 30.05.2017 00:20
I found another error:
The "type" description must be within the tag <vehicleTypes>
<vehicleTypes>
<type name= ...
<specialization ...
...
</type>
</vehicleTypes>


Perhaps also try at first without the extra LUA "addStoreCategory.lua" and use a standard category.

Chandelier Mickael (shun7171) 30.05.2017 17:03
That's it, it works :), it was the <vehicleTypes> that was missing,
Thank you for taking the time to help me.


Note: Log in to post. Create a new account here.