Setting up ground textures

First, you need to get your textures. You can make your own (check out this tutorial) but now with Operation Arrowhead (and also the ArmA1 textures) there should be enough variety for most kinds of terrain. You can find the BI island textures in the following PBOs:

    • Chernarus: chernarus_Data.pbo\ca\chernarus\data
    • Takistan: takistan_data.pbo\ca\takistan\data
    • Sahrani: sara.pbo\ca\sara\data\

The textures are all named in Czech, so you can either break out the online Czech dictionary to find out what's what or just go through them with TexView 2. The ground textures are usually tagged by the island they're for after ArmA 2, so Chernarus textures all start with cr_ and Takistan textures with tk_.

This is the important part: after copying these textures to your island's Data folder, rename them with your own prefix. This is extremely important because when you define surfaces later, they will take a wildcard that defines which textures that clutter applies to, and if you apply a wildcard to, say, "cr_sterk*", you will also be overwriting the Chernarus clutter for that texture, causing all sorts of complaints that your addon is breaking the default islands.

You can prefix the textures' names with whatever you want, but using the (shortened) name of the island is ideal since it allows you to use the same texture with different clutter configurations across different islands.

Next, you will need a Layers.cfg file. This file lets Visitor 3 know what textures to map the colors in your texture mask (Mask_LCO.png) to. It has the following format:

class Layers {
   
    class sand {
        texture = "testIsland\data\cct_sterk_mco.paa";
        material = "testIsland\data\cct_sterk.rvmat";
    };
   
    class rock {
        texture = "testIsland\data\cct_skala_mco.paa";
        material = "testIsland\data\cct_skala.rvmat";
    };
   
};
class Legend {
    picture = "testIsland\Source\mapLegend.png";
    class Colors {
        sand[] = {{255,255,0}};
        rock[] = {{255,0,0}};
    };
};

In the Layers class there should be a class defined for each different texture. The texture value is a string pointing to the _mco version of the texture, and the material value should point to the rvmat for that texture (which references the _detail_co and _detail_nopx versions of the texture, which you should also copy over).

In the Legend class, the picture value must point to the mapLegend.png file (which can be found on the BI wiki - this is mandatory), and the Colors class associates the texture classes you defined to RGB values. In this case the "sand" class is assigned to 255,255,0 (yellow) and the "rock" class is assigned to 255,0,0 (red). The areas in your Mask_LCO.png file painted with these colors will show the corresponding detail textures ingame. The Layers.cfg file is usually placed in your island's Source directory.