FS25 Maps Adding Modifiable Trees Estimated reading: 11 minutes 791 views This guide is meant for FS25 vanilla trees that we want to modify for our Farming Simulator map. It means we grab the data files (asset files) used by an FS25 tree type and place them in a new directory for a modded map. Modifiable Apple Tree I’m going to use the apple tree for Farming Simulator 25 as an example. What you need for this guide is a modded map or a map generated with GIANTS Editor, and maybe also NotePad Plus (see https://notepad-plus-plus.org/). You may also download a template map from AlfaMods here: https://alfamods.no/farming-simulator-25-template-maps/ Creating A New Directory Inside A Map’s Directory I’m going to use a modified Zielonka map I have as “my playground” for testing things. This map has two parent directories called data and maps. Those two are the common directory setup GIANT Software uses for vanilla maps. Other modded maps for Farming Simulator may use different directory structures, and some mods may have no directories at all. To keep this very simple with file paths, I will just create a new directory and call it trees. Copying Vanilla Data Files A video game without data files wouldn’t be a video game. Farming Simulator uses many types of data files that can be modified, which is why the game is particularly modding-friendly. So to find the files for our modifiable apple tree, we’ll have to browse. So to do this, we’ll have to use the file explorer inside our operating system (ex Windows 11), and look up the directory called data. And, as the address line below shows, we’ll continue browsing files to another folder within the data/maps directory. And there we go, here’s our Apple Tree files. Let’s open that folder and take a look at what’s inside. The first folder, called saplings, is not so important. This folder contains data files related to planting trees, and, in some cases, these are the files for a sapling that appears in Farming Simulator when the player wants to plant this tree. Anyway, if you want to modify the saplings for a mod, you can copy this folder into your mod as well. I’m not going to cover that topic in this guide. The files I want to copy to my trees folder are these ones: apple_stage03.i3d (i3D file) apple_stage03.i3d.shapes (SHAPES file) apple_stage03.xml (XML Configuration File) If I want to change the textures (the visual graphics) of this apple tree, I may also copy the texture files, which are these ones: apple_stage03LOD_depth (DDS Depth/Height Map) apple_stage03LOD_diffuse (DDS Diffuse Map) apple_stage03LOD_mask (DDS Season Mask) apple_stage03LOD_normal (DDS Normal Map) apple_stage03LOD_seasonalCurve (DDS Seasonal Curve) *very interesting* apple_stage03LOD_specular (DDS Specular Map) appleBranch_diffuse (DDS Diffuse Map – Tree Branches) appleBranch_mask (DDS Season Mask – Tree Branches) appleBranch_normal (DDS Normal Map – Tree Branches) appleBranch_specular (DDS Specular Map – Tree Branches) appleTrunk_diffuse (DDS Diffuse Map – Tree Trunk) appleTrunk_height (DDS Depth/Height Map – Tree Trunk) appleTrunk_normal (DDS Normal Map – Tree Trunk) I’m going to copy all of these files. Now they are all rooted inside my map’s trees folder. Examine The Apple Tree’s i3D If we open up the file named apple_stage03.i3d in NotePad++, we’ll see these lines of XML information: XML<Files> <File fileId="5" filename="$data/maps/trees/apple/appleBranch_diffuse.png" /> <File fileId="9" filename="$data/maps/trees/apple/appleBranch_mask.png" /> <File fileId="6" filename="$data/maps/trees/apple/appleBranch_normal.png" /> <File fileId="7" filename="$data/maps/trees/apple/appleBranch_specular.png" /> <File fileId="1" filename="$data/maps/trees/apple/appleTrunk_diffuse.png" /> <File fileId="4" filename="$data/maps/trees/apple/appleTrunk_height.png" /> <File fileId="2" filename="$data/maps/trees/apple/appleTrunk_normal.png" /> <File fileId="14" filename="$data/maps/trees/apple/apple_stage03LOD_depth.png" /> <File fileId="10" filename="$data/maps/trees/apple/apple_stage03LOD_diffuse.png" /> <File fileId="15" filename="$data/maps/trees/apple/apple_stage03LOD_mask.png" /> <File fileId="11" filename="$data/maps/trees/apple/apple_stage03LOD_normal.png" /> <File fileId="16" filename="$data/maps/trees/apple/apple_stage03LOD_seasonalCurve.png" /> <File fileId="12" filename="$data/maps/trees/apple/apple_stage03LOD_specular.png" /> <File fileId="13" filename="$data/shaders/billboardSemiOctahedronShader.xml" /> <File fileId="8" filename="$data/shaders/treeBranchShader.xml" /> <File fileId="3" filename="$data/shaders/treeTrunkShader.xml" /> </Files><Files> <File fileId="5" filename="$data/maps/trees/apple/appleBranch_diffuse.png" /> <File fileId="9" filename="$data/maps/trees/apple/appleBranch_mask.png" /> <File fileId="6" filename="$data/maps/trees/apple/appleBranch_normal.png" /> <File fileId="7" filename="$data/maps/trees/apple/appleBranch_specular.png" /> <File fileId="1" filename="$data/maps/trees/apple/appleTrunk_diffuse.png" /> <File fileId="4" filename="$data/maps/trees/apple/appleTrunk_height.png" /> <File fileId="2" filename="$data/maps/trees/apple/appleTrunk_normal.png" /> <File fileId="14" filename="$data/maps/trees/apple/apple_stage03LOD_depth.png" /> <File fileId="10" filename="$data/maps/trees/apple/apple_stage03LOD_diffuse.png" /> <File fileId="15" filename="$data/maps/trees/apple/apple_stage03LOD_mask.png" /> <File fileId="11" filename="$data/maps/trees/apple/apple_stage03LOD_normal.png" /> <File fileId="16" filename="$data/maps/trees/apple/apple_stage03LOD_seasonalCurve.png" /> <File fileId="12" filename="$data/maps/trees/apple/apple_stage03LOD_specular.png" /> <File fileId="13" filename="$data/shaders/billboardSemiOctahedronShader.xml" /> <File fileId="8" filename="$data/shaders/treeBranchShader.xml" /> <File fileId="3" filename="$data/shaders/treeTrunkShader.xml" /> </Files> These are all SDATA ($data) file paths we don’t want, especially if we want to modify the texture files for this tree. So, to give us more flexibility for modding, we can change these file paths so the GIANTS Engine knows these files are located within our mod map. Since the i3D file apple_stage03.i3d is at the same location as the listed file paths, I will need to remove $data/maps/trees/apple from the file paths. So when we are changing that XML information, we are doing modding for REAL. The file paths that have anything to do with shaders, like these three below, we want to keep them as they are. XML<File fileId="13" filename="$data/shaders/billboardSemiOctahedronShader.xml" /> <File fileId="8" filename="$data/shaders/treeBranchShader.xml" /> <File fileId="3" filename="$data/shaders/treeTrunkShader.xml" /><File fileId="13" filename="$data/shaders/billboardSemiOctahedronShader.xml" /> <File fileId="8" filename="$data/shaders/treeBranchShader.xml" /> <File fileId="3" filename="$data/shaders/treeTrunkShader.xml" /> After fixing the file paths, this section of the i3Ds XML will look like this: XML<Files> <File fileId="5" filename="appleBranch_diffuse.png" /> <File fileId="9" filename="appleBranch_mask.png" /> <File fileId="6" filename="appleBranch_normal.png" /> <File fileId="7" filename="appleBranch_specular.png" /> <File fileId="1" filename="appleTrunk_diffuse.png" /> <File fileId="4" filename="appleTrunk_height.png" /> <File fileId="2" filename="appleTrunk_normal.png" /> <File fileId="14" filename="apple_stage03LOD_depth.png" /> <File fileId="10" filename="apple_stage03LOD_diffuse.png" /> <File fileId="15" filename="apple_stage03LOD_mask.png" /> <File fileId="11" filename="apple_stage03LOD_normal.png" /> <File fileId="16" filename="apple_stage03LOD_seasonalCurve.png" /> <File fileId="12" filename="apple_stage03LOD_specular.png" /> <File fileId="13" filename="$data/shaders/billboardSemiOctahedronShader.xml" /> <File fileId="8" filename="$data/shaders/treeBranchShader.xml" /> <File fileId="3" filename="$data/shaders/treeTrunkShader.xml" /> </Files><Files> <File fileId="5" filename="appleBranch_diffuse.png" /> <File fileId="9" filename="appleBranch_mask.png" /> <File fileId="6" filename="appleBranch_normal.png" /> <File fileId="7" filename="appleBranch_specular.png" /> <File fileId="1" filename="appleTrunk_diffuse.png" /> <File fileId="4" filename="appleTrunk_height.png" /> <File fileId="2" filename="appleTrunk_normal.png" /> <File fileId="14" filename="apple_stage03LOD_depth.png" /> <File fileId="10" filename="apple_stage03LOD_diffuse.png" /> <File fileId="15" filename="apple_stage03LOD_mask.png" /> <File fileId="11" filename="apple_stage03LOD_normal.png" /> <File fileId="16" filename="apple_stage03LOD_seasonalCurve.png" /> <File fileId="12" filename="apple_stage03LOD_specular.png" /> <File fileId="13" filename="$data/shaders/billboardSemiOctahedronShader.xml" /> <File fileId="8" filename="$data/shaders/treeBranchShader.xml" /> <File fileId="3" filename="$data/shaders/treeTrunkShader.xml" /> </Files> When done, please just hit the save button inside NotePad++. Examine The Apple Tree In GIANTS Editor (Visual Inspection) To examine the modded apple tree inside your modded map, import the i3D file apple_stage03.i3d into GIANTS Editor using File > Import… To see that the file paths are correct for the i3D, bring up the Material Editing panel from Window > Material Editing and expand apple_stage03 inside the Scenegraph. Click the blue cube labelled LOD0, then hover your mouse cursor over the texture map types named Diffuse Map and Normal Map in the Material Editing Panel. A small pop-up will show you the file path for that texture, and the important one is that the file path contains: The directory name for your mod (FS25_ZielonkaLight) The directory name for your modified tree (trees) The file name for your texture map (appleTrunk_diffuse.png) If all these are correct, you may later change the file names and use the Material Editing Panel in the editor to browse for the new filenames. Remember that the new information will be written to your map’s i3D. You may also open up the i3D file for your modifiable apple tree, change the Diffuse Map and Normal Map, and all other information related to the assigned material shaders, and then import the new version of the i3D into your Farming Simulator map. If you are going to make a mod for Farming Simulator that is going to be published, and you have vanilla trees that were modified and are a part of the mod, consider changing the file names if possible. In some cases, a debugger called Test Runner may detect vanilla duplicates, which it doesn’t appreciate so much… https://gdn.giants-software.com/downloads.php Summary This guide covers how to grab files used by the vanilla game, and place these files into an existing mod – in this case, a modded map. This is the basics of modding, copying and pasting files, changing the XML file paths inside an asset’s i3D file, and doing a visual inspection by importing/opening the asset’s i3D in GIANTS Editor. And as a modder, I must remind you that anything you do afterwards to imported i3D files will be written to your map’s i3D file. The same goes for any other assets. It means that apple_stage03.i3d and apple_stage03.i3d.shapes are no longer necessary to include in your mod. The apple tree is now an embedded asset, and its shape data (geometry data) is written in your map’s SHAPE file (ex, mapEU.i3d.shapes).You’ll find other guides here at AlfaMods later on about importing assets as references. Related GuidesAdding New File Names (i3D XML) Tagged:assetscubedatafilesfolderfs25GIANTS Editori3DmapmodsaplingsSDATATestRunnertexturetreevanillaXMLZielonka