Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Multi Ground Angle

From Farming Simulator Modding Wiki
Revision as of 00:17, 22 December 2024 by XPModder (talk | contribs)
Cultivating a circle with multi ground angles

This page shows you how to increase the number of possible ground angles on a mod map!

The number of ground angles defines in how many different orientation field ground textures can be (eg cultivated ground, plowed ground, etc).

The basegame maps have 8 ground angles. This page shows how to increase this to 256 ground angles!

Disclaimer: This will not increase the angles for planting rootcrops (carrot, parsnip, beetroot)!

Map i3d

To begin the i3d file of the map will need to be edited in a text editor. This can be done in notepad, but more advanced editors like Notepad++ or VisualStudio Code provide helpful features like syntax highlighting.

  1. Open the map i3d file in a text editor
  2. Search for "GroundAngle"
  3. Change numChannels="3" to numChannels="8"
  4. Delete all the lines starting with <Option between the line with "GroundAngle" and the next line down starting with </Group> (This should be a total of 7 lines)
  5. Insert the following lines in their place:
           <Option value="0" name="   0.000 Degrees"/>
           <Option value="1" name="  -0.703 Degrees"/>
           <Option value="2" name="  -1.406 Degrees"/>
           <Option value="3" name="  -2.109 Degrees"/>
           <Option value="4" name="  -2.812 Degrees"/>
           <Option value="5" name="  -3.516 Degrees"/>
           <Option value="6" name="  -4.219 Degrees"/>
           <Option value="7" name="  -4.922 Degrees"/>
           <Option value="8" name="  -5.625 Degrees"/>
           <Option value="9" name="  -6.328 Degrees"/>
           <Option value="10" name="  -7.031 Degrees"/>
           <Option value="11" name="  -7.734 Degrees"/>
           <Option value="12" name="  -8.438 Degrees"/>
           <Option value="13" name="  -9.141 Degrees"/>
           <Option value="14" name="  -9.844 Degrees"/>
           <Option value="15" name=" -10.547 Degrees"/>
           <Option value="16" name=" -11.250 Degrees"/>
           <Option value="17" name=" -11.953 Degrees"/>
           <Option value="18" name=" -12.656 Degrees"/>
           <Option value="19" name=" -13.359 Degrees"/>
           <Option value="20" name=" -14.062 Degrees"/>
           <Option value="21" name=" -14.766 Degrees"/>
           <Option value="22" name=" -15.469 Degrees"/>
           <Option value="23" name=" -16.172 Degrees"/>
           <Option value="24" name=" -16.875 Degrees"/>
           <Option value="25" name=" -17.578 Degrees"/>
           <Option value="26" name=" -18.281 Degrees"/>
           <Option value="27" name=" -18.984 Degrees"/>
           <Option value="28" name=" -19.688 Degrees"/>
           <Option value="29" name=" -20.391 Degrees"/>
           <Option value="30" name=" -21.094 Degrees"/>
           <Option value="31" name=" -21.797 Degrees"/>
           <Option value="32" name=" -22.500 Degrees"/>
           <Option value="33" name=" -23.203 Degrees"/>
           <Option value="34" name=" -23.906 Degrees"/>
           <Option value="35" name=" -24.609 Degrees"/>
           <Option value="36" name=" -25.312 Degrees"/>
           <Option value="37" name=" -26.016 Degrees"/>
           <Option value="38" name=" -26.719 Degrees"/>
           <Option value="39" name=" -27.422 Degrees"/>
           <Option value="40" name=" -28.125 Degrees"/>
           <Option value="41" name=" -28.828 Degrees"/>
           <Option value="42" name=" -29.531 Degrees"/>
           <Option value="43" name=" -30.234 Degrees"/>
           <Option value="44" name=" -30.938 Degrees"/>
           <Option value="45" name=" -31.641 Degrees"/>
           <Option value="46" name=" -32.344 Degrees"/>
           <Option value="47" name=" -33.047 Degrees"/>
           <Option value="48" name=" -33.750 Degrees"/>
           <Option value="49" name=" -34.453 Degrees"/>
           <Option value="50" name=" -35.156 Degrees"/>
           <Option value="51" name=" -35.859 Degrees"/>
           <Option value="52" name=" -36.562 Degrees"/>
           <Option value="53" name=" -37.266 Degrees"/>
           <Option value="54" name=" -37.969 Degrees"/>
           <Option value="55" name=" -38.672 Degrees"/>
           <Option value="56" name=" -39.375 Degrees"/>
           <Option value="57" name=" -40.078 Degrees"/>
           <Option value="58" name=" -40.781 Degrees"/>
           <Option value="59" name=" -41.484 Degrees"/>
           <Option value="60" name=" -42.188 Degrees"/>
           <Option value="61" name=" -42.891 Degrees"/>
           <Option value="62" name=" -43.594 Degrees"/>
           <Option value="63" name=" -44.297 Degrees"/>
           <Option value="64" name=" -45.000 Degrees"/>
           <Option value="65" name=" -45.703 Degrees"/>
           <Option value="66" name=" -46.406 Degrees"/>
           <Option value="67" name=" -47.109 Degrees"/>
           <Option value="68" name=" -47.812 Degrees"/>
           <Option value="69" name=" -48.516 Degrees"/>
           <Option value="70" name=" -49.219 Degrees"/>
           <Option value="71" name=" -49.922 Degrees"/>
           <Option value="72" name=" -50.625 Degrees"/>
           <Option value="73" name=" -51.328 Degrees"/>
           <Option value="74" name=" -52.031 Degrees"/>
           <Option value="75" name=" -52.734 Degrees"/>
           <Option value="76" name=" -53.438 Degrees"/>
           <Option value="77" name=" -54.141 Degrees"/>
           <Option value="78" name=" -54.844 Degrees"/>
           <Option value="79" name=" -55.547 Degrees"/>
           <Option value="80" name=" -56.250 Degrees"/>
           <Option value="81" name=" -56.953 Degrees"/>
           <Option value="82" name=" -57.656 Degrees"/>
           <Option value="83" name=" -58.359 Degrees"/>
           <Option value="84" name=" -59.062 Degrees"/>
           <Option value="85" name=" -59.766 Degrees"/>
           <Option value="86" name=" -60.469 Degrees"/>
           <Option value="87" name=" -61.172 Degrees"/>
           <Option value="88" name=" -61.875 Degrees"/>
           <Option value="89" name=" -62.578 Degrees"/>
           <Option value="90" name=" -63.281 Degrees"/>
           <Option value="91" name=" -63.984 Degrees"/>
           <Option value="92" name=" -64.688 Degrees"/>
           <Option value="93" name=" -65.391 Degrees"/>
           <Option value="94" name=" -66.094 Degrees"/>
           <Option value="95" name=" -66.797 Degrees"/>
           <Option value="96" name=" -67.500 Degrees"/>
           <Option value="97" name=" -68.203 Degrees"/>
           <Option value="98" name=" -68.906 Degrees"/>
           <Option value="99" name=" -69.609 Degrees"/>
           <Option value="100" name=" -70.312 Degrees"/>
           <Option value="101" name=" -71.016 Degrees"/>
           <Option value="102" name=" -71.719 Degrees"/>
           <Option value="103" name=" -72.422 Degrees"/>
           <Option value="104" name=" -73.125 Degrees"/>
           <Option value="105" name=" -73.828 Degrees"/>
           <Option value="106" name=" -74.531 Degrees"/>
           <Option value="107" name=" -75.234 Degrees"/>
           <Option value="108" name=" -75.938 Degrees"/>
           <Option value="109" name=" -76.641 Degrees"/>
           <Option value="110" name=" -77.344 Degrees"/>
           <Option value="111" name=" -78.047 Degrees"/>
           <Option value="112" name=" -78.750 Degrees"/>
           <Option value="113" name=" -79.453 Degrees"/>
           <Option value="114" name=" -80.156 Degrees"/>
           <Option value="115" name=" -80.859 Degrees"/>
           <Option value="116" name=" -81.562 Degrees"/>
           <Option value="117" name=" -82.266 Degrees"/>
           <Option value="118" name=" -82.969 Degrees"/>
           <Option value="119" name=" -83.672 Degrees"/>
           <Option value="120" name=" -84.375 Degrees"/>
           <Option value="121" name=" -85.078 Degrees"/>
           <Option value="122" name=" -85.781 Degrees"/>
           <Option value="123" name=" -86.484 Degrees"/>
           <Option value="124" name=" -87.188 Degrees"/>
           <Option value="125" name=" -87.891 Degrees"/>
           <Option value="126" name=" -88.594 Degrees"/>
           <Option value="127" name=" -89.297 Degrees"/>
           <Option value="128" name=" -90.000 Degrees"/>
           <Option value="129" name=" -90.703 Degrees"/>
           <Option value="130" name=" -91.406 Degrees"/>
           <Option value="131" name=" -92.109 Degrees"/>
           <Option value="132" name=" -92.812 Degrees"/>
           <Option value="133" name=" -93.516 Degrees"/>
           <Option value="134" name=" -94.219 Degrees"/>
           <Option value="135" name=" -94.922 Degrees"/>
           <Option value="136" name=" -95.625 Degrees"/>
           <Option value="137" name=" -96.328 Degrees"/>
           <Option value="138" name=" -97.031 Degrees"/>
           <Option value="139" name=" -97.734 Degrees"/>
           <Option value="140" name=" -98.438 Degrees"/>
           <Option value="141" name=" -99.141 Degrees"/>
           <Option value="142" name=" -99.844 Degrees"/>
           <Option value="143" name="-100.547 Degrees"/>
           <Option value="144" name="-101.250 Degrees"/>
           <Option value="145" name="-101.953 Degrees"/>
           <Option value="146" name="-102.656 Degrees"/>
           <Option value="147" name="-103.359 Degrees"/>
           <Option value="148" name="-104.062 Degrees"/>
           <Option value="149" name="-104.766 Degrees"/>
           <Option value="150" name="-105.469 Degrees"/>
           <Option value="151" name="-106.172 Degrees"/>
           <Option value="152" name="-106.875 Degrees"/>
           <Option value="153" name="-107.578 Degrees"/>
           <Option value="154" name="-108.281 Degrees"/>
           <Option value="155" name="-108.984 Degrees"/>
           <Option value="156" name="-109.688 Degrees"/>
           <Option value="157" name="-110.391 Degrees"/>
           <Option value="158" name="-111.094 Degrees"/>
           <Option value="159" name="-111.797 Degrees"/>
           <Option value="160" name="-112.500 Degrees"/>
           <Option value="161" name="-113.203 Degrees"/>
           <Option value="162" name="-113.906 Degrees"/>
           <Option value="163" name="-114.609 Degrees"/>
           <Option value="164" name="-115.312 Degrees"/>
           <Option value="165" name="-116.016 Degrees"/>
           <Option value="166" name="-116.719 Degrees"/>
           <Option value="167" name="-117.422 Degrees"/>
           <Option value="168" name="-118.125 Degrees"/>
           <Option value="169" name="-118.828 Degrees"/>
           <Option value="170" name="-119.531 Degrees"/>
           <Option value="171" name="-120.234 Degrees"/>
           <Option value="172" name="-120.938 Degrees"/>
           <Option value="173" name="-121.641 Degrees"/>
           <Option value="174" name="-122.344 Degrees"/>
           <Option value="175" name="-123.047 Degrees"/>
           <Option value="176" name="-123.750 Degrees"/>
           <Option value="177" name="-124.453 Degrees"/>
           <Option value="178" name="-125.156 Degrees"/>
           <Option value="179" name="-125.859 Degrees"/>
           <Option value="180" name="-126.562 Degrees"/>
           <Option value="181" name="-127.266 Degrees"/>
           <Option value="182" name="-127.969 Degrees"/>
           <Option value="183" name="-128.672 Degrees"/>
           <Option value="184" name="-129.375 Degrees"/>
           <Option value="185" name="-130.078 Degrees"/>
           <Option value="186" name="-130.781 Degrees"/>
           <Option value="187" name="-131.484 Degrees"/>
           <Option value="188" name="-132.188 Degrees"/>
           <Option value="189" name="-132.891 Degrees"/>
           <Option value="190" name="-133.594 Degrees"/>
           <Option value="191" name="-134.297 Degrees"/>
           <Option value="192" name="-135.000 Degrees"/>
           <Option value="193" name="-135.703 Degrees"/>
           <Option value="194" name="-136.406 Degrees"/>
           <Option value="195" name="-137.109 Degrees"/>
           <Option value="196" name="-137.812 Degrees"/>
           <Option value="197" name="-138.516 Degrees"/>
           <Option value="198" name="-139.219 Degrees"/>
           <Option value="199" name="-139.922 Degrees"/>
           <Option value="200" name="-140.625 Degrees"/>
           <Option value="201" name="-141.328 Degrees"/>
           <Option value="202" name="-142.031 Degrees"/>
           <Option value="203" name="-142.734 Degrees"/>
           <Option value="204" name="-143.438 Degrees"/>
           <Option value="205" name="-144.141 Degrees"/>
           <Option value="206" name="-144.844 Degrees"/>
           <Option value="207" name="-145.547 Degrees"/>
           <Option value="208" name="-146.250 Degrees"/>
           <Option value="209" name="-146.953 Degrees"/>
           <Option value="210" name="-147.656 Degrees"/>
           <Option value="211" name="-148.359 Degrees"/>
           <Option value="212" name="-149.062 Degrees"/>
           <Option value="213" name="-149.766 Degrees"/>
           <Option value="214" name="-150.469 Degrees"/>
           <Option value="215" name="-151.172 Degrees"/>
           <Option value="216" name="-151.875 Degrees"/>
           <Option value="217" name="-152.578 Degrees"/>
           <Option value="218" name="-153.281 Degrees"/>
           <Option value="219" name="-153.984 Degrees"/>
           <Option value="220" name="-154.688 Degrees"/>
           <Option value="221" name="-155.391 Degrees"/>
           <Option value="222" name="-156.094 Degrees"/>
           <Option value="223" name="-156.797 Degrees"/>
           <Option value="224" name="-157.500 Degrees"/>
           <Option value="225" name="-158.203 Degrees"/>
           <Option value="226" name="-158.906 Degrees"/>
           <Option value="227" name="-159.609 Degrees"/>
           <Option value="228" name="-160.312 Degrees"/>
           <Option value="229" name="-161.016 Degrees"/>
           <Option value="230" name="-161.719 Degrees"/>
           <Option value="231" name="-162.422 Degrees"/>
           <Option value="232" name="-163.125 Degrees"/>
           <Option value="233" name="-163.828 Degrees"/>
           <Option value="234" name="-164.531 Degrees"/>
           <Option value="235" name="-165.234 Degrees"/>
           <Option value="236" name="-165.938 Degrees"/>
           <Option value="237" name="-166.641 Degrees"/>
           <Option value="238" name="-167.344 Degrees"/>
           <Option value="239" name="-168.047 Degrees"/>
           <Option value="240" name="-168.750 Degrees"/>
           <Option value="241" name="-169.453 Degrees"/>
           <Option value="242" name="-170.156 Degrees"/>
           <Option value="243" name="-170.859 Degrees"/>
           <Option value="244" name="-171.562 Degrees"/>
           <Option value="245" name="-172.266 Degrees"/>
           <Option value="246" name="-172.969 Degrees"/>
           <Option value="247" name="-173.672 Degrees"/>
           <Option value="248" name="-174.375 Degrees"/>
           <Option value="249" name="-175.078 Degrees"/>
           <Option value="250" name="-175.781 Degrees"/>
           <Option value="251" name="-176.484 Degrees"/>
           <Option value="252" name="-177.188 Degrees"/>
           <Option value="253" name="-177.891 Degrees"/>
           <Option value="254" name="-178.594 Degrees"/>
           <Option value="255" name="-179.297 Degrees"/>
  1. Find the line starting with <Group name="Spraytype" which should be directly below the lines you just added
  2. Replace firstChannel="7" with firstChannel="12"
  3. A few lines below that in the line starting with <Group name="Water", replace firstChannel="10" with firstChannel="15"
  4. Scroll up to or search for the line starting with <DetailLayer name="terrainDetail"
  5. In this line edit/replace the following:
    • numDensityMapChannels="11" with numDensityMapChannels="16"
    • compressionChannels="11" with compressionChannels="16"
    • combinedValuesChannels="0 4 0;4 3 0;7 3 0;10 1 0" with combinedValuesChannels="0 4 0;4 8 0;12 3 0;15 1 0"
  6. In the same line there is also densityMapId= followed by a number. Search for this number (include the quotes in the search) and find it in a line starting with <File fileId= (your number here). The filename in that line should end with densityMap_ground.png. If it ends with .gdm instead of .png, change this.
  7. Find the line containing $data/shaders/terrainShader.xml and remove the $data/ from it, so that it says filename="shaders/terrainShader.xml"
  8. Save the changes. If you are unsure, consider making a backup of your entire map first.

Density Map

Now the densityMap_ground gdm file will need to be converted in order to be adjusted to the extra channels needed.

  1. Get the grle converter from GDN
  2. Open the data folder of your map. Inside you should have a densityMap_ground.gdm file
  3. Drag and drop this file onto convert.cmd which is part of the grle converter. A densityMap_ground.png image file should now be created automatically.
  4. If this image file is in the folder of the grle converter, move it to the maps data folder (where the gdm file is)
  5. Delete the densityMap_ground.gdm file, but keep the densityMap_ground.png file

Field Ground xml

The map will now need a custom fieldGround.xml

  1. Check if you already have a fieldGround.xml or maps_fieldGround.xml. if you do, you can either edit it or delete it and replace it with a new one.
  2. Go to the games installation folder (on windows this is C:/Program Files (x86)/FarmingSimulator2025 by default). Go into data -> maps and copy the maps_fieldGround.xml file there
  3. Paste this file in your maps config or xml folder or alternatively in the same folder as the map i3d
  4. Open this maps_fieldGround.xml file in a text editor
  5. Go back to the game installation folder where you copied the file from and go into mapEU -> config (You may choose mapAS or mapUS instead of mapEU)
  6. Open the fieldGround.xml file that can be found in this folder in a text editor and copy everything starting with <sprayLevel and ending with </fieldType>
  7. Paste this text into your new maps_fieldGrounds.xml file just above </densityMaps>. You can close the fieldGround.xml from the games installation now. Make sure to NOT save when doing so.
  8. In your maps_fieldGround.xml find the line that starts with <groundAngle and in this line change numChannels="3" to numChannels="8"
  9. Find the line starting with <sprayTypes and change firstChannel="7" to firstChannel="12"
  10. Find the line starting with <water and change firstChannel="10" to firstChannel="15"
  11. If you wish to use custom infoLayers, change the paths in the filename attributes in the file to point to your own infoLayer files respectively. This is not necessary for the ground angles to work!
  12. Save the file and close it

Terrain Shader

Now a small adjustment to the terrain shader needs to be made

  1. In the folder where your map i3d is located, create a new folder and name it shaders, unless you already have a shaders folder there
  2. Go to your games installation and there go to data -> shaders and copy terrainShader.xml
  3. Paste the file into the shaders folder you created 2 steps above here and open the file in a text editor
  4. Find this line: #define NUM_ROTATION_ANGLES 8 and change the number 8 at the end of the line to 256. The line should now read #define NUM_ROTATION_ANGLES 256
  5. Save the file and then you can close it

Map xml and Giants Editor

To finish adding the ground angles, the new maps_fieldGround.xml created above needs to be linked in the map xml and finally the map needs to be opened and saved in Giants Editor once to generate a new density map gdm.

  1. Open your map.xml in a text editor
  2. Check if it already contains a line starting with <fieldGround.
    • If it does, adjust the path in the filename attribute in that line to point to your new maps_fieldGround.xml
    • If it does NOT, add the following line: <fieldGround filename="map/maps_fieldGround.xml" /> and adjust the path in filename="" to point to your maps_fieldGround.xml
  3. Save the map xml
  4. In Giants Editor, open your map and then save it. Then you can close it again
  5. You can now delete the densityMap_ground.png in your maps data folder, as a new .gdm file should have been created

DONE!

Your map should now have 256 ground angles!

Open it ingame and cultivate some circles or something! :)

Note: This will probably break any existing savegames of that map!

Cookies help us deliver our services. By using our services, you agree to our use of cookies.