CfgSurfaces Config Reference – Arma 3

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\[https?\:\/\/community\.bistudio\.com\/wiki\/(.*) (.*)\]" to "$2")
m (Text replacement - "{{Feature | Warning | " to "{{Feature|warning|")
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{warning | This reference page was created for Arma 3  v1.60+, some fields may not exist in prior games and versions.}}
{{Feature|warning|This reference page was created for {{arma3}} v1.60+, some fields may not exist in prior games and versions.}}
{{Cfg ref|start}}
{{ConfigPage|start}}
{{Cfg ref|abc}}
{{ConfigPage|abc}}
=== A ===
=== A ===


Line 7: Line 7:
[[TokenNameValueTypes|Integer]]: Determines the manipulability of the class.
[[TokenNameValueTypes|Integer]]: Determines the manipulability of the class.


{| class="bikitable"
{| class="wikitable"
! Value !! Type !! Description
! Value !! Type !! Description
|-
|-
| <tt>0</tt> || ReadAndWrite ||| Additional values can be added
| {{hl|0}} || ReadAndWrite || Additional values can be added
|-
|-
| <tt>1</tt> || ReadAndCreate ||| Only adding new class members is allowed
| {{hl|1}} || ReadAndCreate || Only adding new class members is allowed
|-
|-
| <tt>2</tt> || ReadOnly ||| No modifications enabled
| {{hl|2}} || ReadOnly || No modifications enabled
|-
|-
| <tt>3</tt> || ReadOnlyVerified ||| No modifications enabled
| {{hl|3}} || ReadOnlyVerified || No modifications enabled
|}
|}


Line 29: Line 29:
[[TokenNameValueTypes|Integer]]: Allows restricting the AI from entering prone with two levels of emphasis
[[TokenNameValueTypes|Integer]]: Allows restricting the AI from entering prone with two levels of emphasis


{| class="bikitable"
{| class="wikitable"
! Value !! Description
! Value !! Description
|-
|-
| <tt>0</tt> || No change in behavior
| {{hl|0}} || No change in behavior
|-
|-
| <tt>1</tt> || Less preference for going prone - avoid prone (unless stealth or suppressed or *)
| {{hl|1}} || Less preference for going prone - avoid prone (unless stealth or suppressed or *)
|-
|-
| <tt>2</tt> || Almost never going prone - never prone (unless *)
| {{hl|2}} || Almost never going prone - never prone (unless *)
|}
|}


Line 324: Line 324:


==== transparency ====
==== transparency ====
[[TokenNameValueTypes|Integer]] 1: fully transparent. 0 and lower: fully opaque
<syntaxhighlight lang="cpp">
transparency = -1; // Default value used by surfaces if this property is not defined
</syntaxhighlight>
Used in the viewGeometry LOD to determine how transparent the surface is to the AI view.
In vanilla {{arma3}}, this property seems to be only used by [[Arma_3:_Vegetation_P3D#.5BViewGeometry.5D|APEX DLC vegetations]]: "a3\vegetation_f_exp\data\foliage_sparse.bisurf" (<syntaxhighlight lang="cpp" inline>transparency = 0.2</syntaxhighlight>) and "a3\vegetation_f_exp\data\foliage_dense.bisurf" (<syntaxhighlight lang="cpp" inline>transparency = 0.01</syntaxhighlight>).


Seems obsolete


[[TokenNameValueTypes|Integer]]: Unknown
{{ConfigPage|end}}
<syntaxhighlight lang="cpp">
transparency = -1; // Default value used by all surfaces
</syntaxhighlight>


{{Cfg ref|end}}


[[Category:Arma 3: Editing]]
{{GameCategory|arma3|Reference Lists}}

Latest revision as of 21:46, 16 May 2024

This reference page was created for Arma 3 v1.60+, some fields may not exist in prior games and versions.

A

access

Integer: Determines the manipulability of the class.

Value Type Description
0 ReadAndWrite Additional values can be added
1 ReadAndCreate Only adding new class members is allowed
2 ReadOnly No modifications enabled
3 ReadOnlyVerified No modifications enabled

All BIS classes are ReadOnlyVerified and can only be inherited into a new class

access = 2; // ReadOnly

AIAvoidStance

Arma 3 logo black.png1.60 Integer: Allows restricting the AI from entering prone with two levels of emphasis

Value Description
0 No change in behavior
1 Less preference for going prone - avoid prone (unless stealth or suppressed or *)
2 Almost never going prone - never prone (unless *)
* means commanded, injured, animated, forced, ...

C

character

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

D

dust

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

F

files

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

From commented configs of BI (binarize\bin)

Caution: wildcard pattern "files" is matched using special purpose matching

* may be used only as last character of the pattern
* matches any string in filename
? matches any single character in filename

when six trailing question-marks are detected "??????", two patterns are matched:
full pattern and short pattern with ?????? omitted

friction

Seems obsolete

Float: Unknown

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

G

grassCover

Float: Reduces visibleSize (taken from CfgMovesBasic) of unit for AI visibility movement computations (cannot make fully invisible) - it is NOT about visual drawing

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

I

impact

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


Check the spoiler for impact values used in vanilla A3 in 1.68:

default_Mat
hitWater
hitGroundHard
hitConcrete
hitGroundSoft
hitVirtual
HitGroundRed
hitGroundRed

isWater

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

L

lucidity

Float: how hard to detect a mine on this surface. Default: 1

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

M

maxClutterColoringCoef

Float: Defines the maximal coefficient of difference between the color of the surface and clutter (must be greater than or equal to 1)

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

maxSpeedCoef

Float: Defines the maximum speed coefficient on that surface for carEPE simulation. Default is 1

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

For cars also limited by terrainCoef factor defined in cfgVehicles. Max reduction is 50%.

R

restitution

Seems obsolete

Float: Unknown

restitution= 0;	// Used by every surface

rough

Seems disabled in A3.

Float: Defines the roughness of the surface when driving over it in a vehicle (higher value = more bumps). Seems to limit also speed of tanks somewhat

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

S

soundEnviron

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.

Relates also the sound controllers

Check the spoiler for soundEnviron values used in vanilla A3 in 1.68:

normalExt

water
seabed_exp

road - SurfSoundAsphalt
tarmac - SurfSoundAsphalt
concrete - SurfSoundAsphalt
concrete_exp
int_concrete
int_concrete_exp
asphalt_exp
pavement_exp
int_pavement_exp

gravel - SurfSoundGravel
gravel_exp
normal - SurfSoundGravel
debris - SurfSoundGravel
stony - SurfSoundGravel, SurfSoundGrass, SurfSoundDirt
stones_exp

rock - SurfSoundRock

sand - SurfSoundSand
sand_exp

grass - SurfSoundGrass
grass_exp
grasstall_exp
drygrass - SurfSoundGrass

forest - SurfSoundDirt, SurfSoundGrass
forest_exp
wood
int_wood
softwood_exp
int_softwood_exp

mud - SurfSoundDirt
mud_exp
dirt - SurfSoundDirt
dirt_exp

metal
int_metal
metalplate_exp
int_metalplate_exp
metalplatepressed_exp
steel_exp
gridmetal_exp
wavymetal
wavymetal_exp
roof_tiles
rooftiles_exp
int_tiles
tiling

virtual

int_solidwood_exp
int_carpet_exp
int_mat_exp
straw_exp
lino_exp
int_lino_exp
↑ Back to spoiler's top

soundHit

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

Seemingly valid values:

  • body
  • building
  • concrete
  • default
  • foliage
  • glass
  • glass_armored
  • hard_ground
  • iron
  • metal
  • metal_plate
  • plastic
  • rubber
  • soft_ground
  • water
  • wood

Check the spoiler for soundHit values used in vanilla A3 in 1.68:

hard_ground
concrete
soft_ground
building

surfaceFriction

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

T

terrainClutterFactor

Integer: Can enable clutter on roadway when above 0

terrainClutterFactor = 0;	// Default value used by all surfaces, except for Water = 1

tracksAlpha

Seems obsolete

Integer: Defines the alpha value of vehicle tracks

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

transparency

Integer 1: fully transparent. 0 and lower: fully opaque

transparency = -1;	// Default value used by surfaces if this property is not defined

Used in the viewGeometry LOD to determine how transparent the surface is to the AI view. In vanilla Arma 3, this property seems to be only used by APEX DLC vegetations: "a3\vegetation_f_exp\data\foliage_sparse.bisurf" (transparency = 0.2) and "a3\vegetation_f_exp\data\foliage_dense.bisurf" (transparency = 0.01).