User Tools

Site Tools


ArmA 3 CfgSurfaces

cfgSurfaces adds clutter configuration for ground detail texture (GDT) file names in the data\ directory. We also configure how rough the terrain is, what sound is played when driving/walking on it etc.


class CfgSurfaces
	class Default{};
	class Water{};
	class GdtStratisGreenGrass: Default
		access = 2;
		files = "gdt_strgreengrass_*";
		character = "StratisGreenGrassClutter";
		soundEnviron = "grass";
		soundHit = "soft_ground";
		rough = 0.08;
		maxSpeedCoef = 0.9;
		dust = 0.15;
		lucidity = 4;
		grassCover = 0.05;
		impact = "hitGroundSoft";
		surfaceFriction = 1.7;
		maxClutterColoringCoef = 1.35;
	class GdtStratisRocky: Default
		access = 2;
		files = "gdt_strrocky_*";
		character = "StratisRockyClutter";
		soundEnviron = "gravel";
		soundHit = "hard_ground";
		rough = 0.12;
		maxSpeedCoef = 0.85;
		dust = 0.4;
		lucidity = 1.5;
		grassCover = 0.02;
		impact = "hitGroundHard";
		surfaceFriction = 1.9;
		maxClutterColoringCoef = 1.35;
	// etc ...


Integer: Determines the manipulability of the class. All bis classes are ReadOnlyVerified and can only be inherited into a new class

access = 2; //ReadOnly


Integer: Allows restricting the AI from entering prone with two levels of emphasis

// 0 default
// 1 Less preference for going prone
// 2 Almost never going prone
AIAvoidStance = 0;


String: Points to a corresponding CfgSurfaceCharacters entry, which defines the clutter on this surface.

character = "Empty";		// No clutter will be used on this surface
character = "SeabedClutter";	// SeabedClutter defined in CfgSurfaceCharacters will be used on this surface


Float: Amount of dust vehicles will create on this surface (higher value = more dust)

dust = 0.75;	// High amount of dust, used for GdtStratisDryGrass
dust = 0.05;	// Almost no dust, used for GdtConcrete


String: Defines which ground texture and roadway texture filenames this surface will apply to

files = "gdt_grass_green_*";	// Tells the ground texture what surface it corresponds to
files = "surfint_wood_*";	// Tells the texture used in the roadway LOD what surface it corresponds to


float: unknown

friction = 0.9;	//Default value, used by all A3 surfaces


Float: Used to simulate grass cover at a distance by sinking the target into the ground (higher value = more sinking)

grassCover = 0;		// Used by GdtStratisConcrete, there will be no simulated grass cover at a distance
grassCover = 0.05;	// Used by GdtStratisGreenGrass, there will be some simulated grass cover at a distance


String: Defines what particle effect is shown when the surface is hit by a bullet, points to a corresponding entry in CfgAmmo

impact = "hitGroundHard";	// Used by GdtStony, particle effect will be chunks of rock flying when hit
impact = "hitGroundSoft";	// Used by GdtStratisDirt, particle effect will be dirt flying when hit


Integer: Declares whether the surface is water

isWater = 1;	// Used by SurfWater, declares the surface as water
isWater = 0;	// Used by Default, declares the surface is not water


Float: Unknown

lucidity = 0.3;	// Used by GdtStratisConcrete
lucidity = 3.5;	// Used by GdtStratisForestPine
lucidity = 150;	// Used by GdtStratisSeabed


Float: Defines the color coefficient on that surface

maxClutterColoringCoef = 1.35;	// Used by GdtStratisConcrete
maxClutterColoringCoef = 1.5;	// Used by GdtBeach


Float: Defines the maximum speed coefficient on that surface

maxSpeedCoef = 1;	// Used by GdtStratisConcrete, no change in speed
maxSpeedCoef = 0.9;	// Used by GdtStratisGreenGrass, 10% reduction in speed
maxSpeedCoef = 0.8;	// Used by GdtStratisForestPine, 20% reduction in speed



restitution= 0;	//Used by every surface


Float:Defines the roughness of the surface when driving over it in a vehicle (higher value = more bumps)

rough = 0.05;	// Used by GdtStratisConcrete, minimal bumps
rough = 0.15;	// Used by GdtMud, fairly bumpy


String:Defines the sound played when walking or driving a vehicle on the surface, points to sounds defined in SoundEnvironExt

soundEnviron = "drygrass";	// Used by GdtGrassDry, dry grass sound
soundEnviron = "gravel";	// Used by SurfRoadDirt, gravel sound
soundEnviron = "int_wood";	// Used by SurfIntWood, weapons fired while on this surface will have a reverb effect.

This value also determines the sound for footsteps inside of a building corresponding for the roadway LOD. It is important to use corresponding textures for surfaces that are indoors or outdoors, as it has an effect on the sound when firing weapons on that surface.


String:Defines the sound played when the surface is struck by a bullet

soundHit = "concrete";		// Used by GdtStratisConcrete, sound of bullet hitting concrete is played when this surface is hit
soundHit = "soft_ground";	// Used by GdtStratisDirt, sound of dirt is played when this surface is hit


Float: Defines the surface friction on this surface (lower value = more friction)

surfaceFriction = 2.5;	// Used by SurfRoadTarmac, highest surface friction value
surfaceFriction = 2;	// Used by SurfRoadConcrete, above average surface friction value
surfaceFriction = 1.8;	// Used by GdtDirt, below average surface friction value
surfaceFriction = 1.5;	// Used by GdtMarsh, low end of surface friction values


Integer: Defines the alpha value of vehicle tracks

tracksAlpha = 1;	// Default value used by all surfaces


Integer: Unknown

transparency = -1;	// Default value used by all surfaces

See also how_cfgsurfaces_cfgsurfacecharacters_and_clutter_work.

arma3/terrain/cfgsurfaces.txt · Last modified: 2017-11-03 13:41 by snakeman