Material surface properties
These are lists of physical surface types ($surfaceprop
) that Source recognizes, as defined by the files referenced in /scripts/surfaceproperties_manifest.txt
.
Surface types define the physical properties of an object including friction, density, collision/footstep sounds, the effect of bullet impacts and, if the object is destructible, health and gib type.
Both materials and models define their surfaces with the $surfaceprop command.


sounds/materials.txt
. This file usually has documentation at the top dictating which surface types are available in the given mod.Types
About the following first table:
- Each row represents a surface property available in multiple games. (The game-specific ones are below.)
- Games listed in the "Only in" column are the only ones that have that surfaceprop. If empty, the surfaceprop should be available in all games.
- Games listed in the "Not in" column had that surfaceprop removed. Such as
Zombieflesh
which was shipped with Half-Life 2 but is ironically not in the Left 4 Dead series anymore. - If a surface property is available in some game, one can expect that it is also available in mods of it, like Portal: Revolution being a mod of Portal 2.
Most of the following surface properties are shipped in scripts/surfaceproperties.txt
, which almost every game has.
Some HL2-specific surface properties are shipped in scripts/surfaceproperties_hl2.txt
. Those are only for the HL2 series, such as Strider
, but some games ship that file as well.

If a surfaceprop happens to also be in a third party mod, it will also be listed as "Only in" inside this first list.

















Special |
Description | Only in | Not in |
---|---|---|---|
Default
|
|||
Default_silent
|
For invisible collision materials, like sky. Bullet impacts are neither visible nor audible, giving the illusion that there is no impact. | ||
Floatingstandable
|
This one is used for puzzles where we want something that floats but the player can stand on without it sinking beneath the water. | ||
Item
|
Small med kit, smaller tech items, battery. | ||
Ladder
|
Ladder is a fake material for walking on ladders. | ||
Woodladder
|
Same as Ladder, but with wooden climbing sounds. | ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() |
No_decal
|
|||
Player
|
Special materials for player controller. | ||
Player_control_clip
|
Special materials for player controller. | ||
Concrete/Rock |
Description | Only in | Not in |
Baserock
|
Missing in most games. Why is it listed here? | ||
Boulder
|
Will cause material glitches if used in models | ||
Brick
|
|||
Cavern_rock
|
![]() ![]() |
||
Concrete
|
|||
Concrete_block
|
9x12 prefabricated concrete cinder blocks. | ||
Gravel
|
|||
Rock
|
Solid rock (small sounds). | ||
Sheetrock
|
Plaster like walls, except without paper-like particles. Uses rocks instead. | ![]() ![]() |
|
Metal |
Description | Only in | Not in |
brass_bell_large brass_bell_medium brass_bell_small brass_bell_smallest
|
Various bells, playing different notes when shot. | ![]() ![]() |
|
Canister
|
Large oxygen tank, propane tank, welding tank. | ||
Chain
|
Metal chain. | ||
Chainlink
|
Chainlink fencing material. | ||
Combine_metal
|
Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
Crowbar
|
Sounds for specifically the crowbar. Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
Grenade
|
Sounds like a small metal object when dropped, but sounds like dirt when stepped on. | ![]() | |
Gunship
|
Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
Metal
|
|||
Metal_barrel
|
Larger metal barrel, metal oil drum. In CS:GO, a thickness of 1 unit already blocks all bullets. |
||
Floating_metal_barrel
|
Surfaceprop alone does not define whether item can float. At least in ![]() |
||
Metal_bouncy
|
prop_physics and func_physbox with this surfaceprop will bounce around when dropped. | ||
Metal_Box
|
Smaller metal box (< 2' width/height/depth) | ||
Metal_seafloorcar
|
Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
Metalgrate
|
Metal grating, used for decking | ||
Grate
|
Uses "Metalgrate" as base and has no properties of its own. Probably a leftover. | ![]() ![]() |
|
Metalpanel
|
Thick solid steel panel - used for solid wall, floor, machine construction. | ||
Metalvent
|
~1mm thick metal | ||
Metalvehicle
|
Part of scripts/surfaceproperties_hl2.txt . Theoretically native to Half-Life 2 series only, but many other games also use it.Its easier listing which game doesn't have this. |
![]() ![]() ![]() ![]() | |
Paintcan
|
Smaller metal can | ![]() | |
Popcan
|
Small aluminum can, full. | ![]() | |
Roller
|
Combine Roller mine material. | ![]() | |
Slipperymetal
|
Very low friction on which you slip and slide, just like ice. | ||
Solidmetal
|
Almost nothing is solid metal - so metal is sheet metal | ||
Strider
|
![]() ![]() ![]() | ||
Weapon
|
Sounds for when weapons drop. | ![]() | |
Strongman_bell
|
Sounds like a boxing ring bell when hit. | ![]() ![]() |
|
Slipperyslide
|
Like SlipperyMetal, but uses SolidMetal sounds. | ![]() ![]() |
|
Wood |
Description | Only in | Not in |
Wood
|
Generic wood ![]() |
||
Wood_Box
|
|||
Wood_Crate
|
Large crate, large wood furniture (bookcases, tables). | ![]() ![]() ![]() ![]() ![]() |
|
Wood_Furniture
|
small wood furniture - chairs, small tables. | ||
Wood_LowDensity
|
Small crate. | ![]() ![]() ![]() ![]() ![]() |
![]() |
Wood_Plank
|
Wood board, floorboard, plank. | ||
Wood_Panel
|
Plywood panel, wood door panel. | ||
Wood_Solid
|
Solid 6x6 or greater block, post or tree. | ||
Terrain |
Description | Only in | Not in |
Dirt
|
|||
Grass
|
|||
Gravel
|
|||
Mud
|
|||
Quicksand
|
Does not let you sink like in quicksand. | ||
Sand
|
|||
Slipperyslime
|
Very low friction on which you slip and slide, just like ice. | ||
Antlionsand
|
Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
Sugarcane
|
Same Sounds as Foliage, but uses "Dirt" as base, with lower density. As foliage uses higher density. | ![]() ![]() |
|
Liquid |
Description | Only in | Not in |
Slime
|
|||
Water
|
If applied to brushes/models that are not using %compilewater, it will sound like water and spawn water particles when shot. But it will also draw bullet decals. | ||
Wade
|
Wade is a water material for walking in/on water at knee height. If applied to brushes/models it will sound like water and spawn water particles when shot. But it will also draw bullet decals. |
||
Puddle
|
When shot, spawns refracting water splash particles | ![]() ![]() ![]() ![]() |
|
Wet
|
Doesn't actually do anything. | ![]() ![]() ![]() |
|
Frozen |
Description | Only in | Not in |
Ice
|
Very low friction on which you slip and slide. | ||
Snow
|
|||
Organic |
Description | Only in | Not in |
Alienflesh
|
![]() | ||
Antlion
|
Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
Antlion_eggshell
|
![]() |
||
Armorflesh
|
Flesh for physics, metal for bullet fx. | ||
Bloodyflesh
|
Does not spawn bloody bullet decals in ![]() |
![]() | |
Flesh
|
Medium-sized body. | ![]() | |
Foliage
|
|||
Hay
|
![]() ![]() |
||
Hunter
|
![]() ![]() |
||
Watermelon
|
![]() ![]() ![]() | ||
Zombieflesh
|
Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
Manufactured |
Description | Only in | Not in |
Advisor_shield
|
![]() |
||
Asphalt
|
![]() ![]() ![]() |
||
Glass
|
Pane of glass, computer screen, window, glass door... Use Glassfloor in CS:GO if a glass floor shouldn't be more slippery than usual. |
||
Glassbottle
|
Glass soda bottle, cup, plate, jar... | ||
Combine_glass
|
Part of scripts/surfaceproperties_hl2.txt . Native to HL2, and the games shipping with this script.
|
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
Tile
|
|||
Paper
|
|||
Papercup
|
![]() | ||
Cardboard
|
|||
Plaster
|
Drywall, office wall material, sheetrock. | ||
Plastic_barrel
|
Larger plastic barrel, hollow, soft plastic. | ||
Plastic_barrel_buoyant
|
Surfaceprop alone does not define whether item can float. At least in ![]() |
![]() | |
Plastic_Box
|
Small - Medium plastic box, hard plastic. | ||
Plastic
|
Smaller generic hard plastic. | ||
Rubber
|
Solid rubber floor mat, solid rubber tire. | ||
Rubbertire
|
Hollow rubber tire | ||
Slidingrubbertire
|
Special material for monitoring vehicle handling per wheel. | ||
Slidingrubbertire_front
|
Special material for monitoring vehicle handling per axle. | ||
Slidingrubbertire_rear
|
Special material for monitoring vehicle handling per axle. | ||
Jeeptire
|
Tired for the drivable vehicles. | ![]() | |
Brakingrubbertire
|
Special material for monitoring vehicle handling per axle. | ||
Jalopy
|
![]() ![]() ![]() |
||
Jalopytire
|
Special material for monitoring vehicle handling per axle. | ![]() ![]() ![]() |
|
Slidingrubbertire_jalopyfront
|
Special material for monitoring vehicle handling per axle. | ![]() ![]() ![]() |
|
Slidingrubbertire_jalopyrear
|
Special material for monitoring vehicle handling per axle. | ![]() ![]() ![]() |
|
Clay
|
Ceramic jug, mug. | ![]() ![]() |
|
Porcelain
|
Tubs, urinals, sinks, ect. | ||
Upholstery
|
For Couches, sofas, car seats, ect. | ![]() ![]() |
|
Miscellaneous |
Description | Only in | Not in |
Carpet
|
|||
Ceiling_tile
|
Acoustic ceiling tiles, sound baffles, crumbly plaster. | ![]() | |
Computer
|
Technical equipment. Glass and plastic impact noises, but plastic bullet decals. | ||
Helmet
|
special sounds when a helmet is shot. | ![]() |
|
Pottery
|
Ceramic pots. |
Game-specific
The following surface types are only available in one game.
Alien Swarm
$surfaceprop | Description |
---|---|
Ammo_pickup
|
Ammo supply boxes |
Ice_noslide
|
Ice, but without the ability to slide. |
Snow_noslide
|
Snow, but without the ability to slide. |
Steam_pipe
|
|
stim_prop
|
Stops glass breaking sounds from playing when stims are kicked around/shot |
Counter-Strike: Global Offensive
$surfaceprop | Description |
---|---|
Blockbullets
|
Blocks bullets entirely, because the Tools/ToolsBlockBullets doesn't really block bullets.
|
dufflebag_survivalCase
|
Used for prop_money_crate. |
Glassfloor
|
Like Glass, but with a normal friction value. |
metal_barrel_explodingSurvival
|
Used for prop_exploding_barrel. |
metal_barrelSoundOverride
|
|
Metal_sand_barrel
|
Barrel of sand. A thickness of 1 unit already blocks all bullets. |
Metal_shield
|
Uses weapon sounds for weapon_shield. |
metal_survivalCase
|
Base for metal_survivalCase_unpunchable .
|
metal_survivalCase_unpunchable
|
Used for prop_metal_crate. |
metal_vehicleSoundOverride
|
|
metaldogtags
|
Used for item_dogtags. |
plastic_survivalCase
|
Used for the yellow prop_loot_crate. |
slowgrass
|
Used for the tall grass material seen on ![]() hidetargetid 1 .
|
soccerball
|
Used by the soccer ball prop seen on ![]() |
stucco
|
|
tile_survivalCase
|
Used by the blue and red prop_loot_crate, and prop_paradrop_crate. |
tile_survivalCase_GIB
|
|
weapon_magazine
|
|
Wood_Basket
|
Like Wood_Box but with different step sounds.
|
Wood_Dense
|
Allows much less bullet penetration. |
Left 4 Dead 2
$surfaceprop | Description |
---|---|
Bat Blade Chainsaw Cricketbat Crowbar Fireaxe Fryingpan Golfclub Guitar Pitchfork Shovel Sword
|
Like "Weapon" but used for the melee weapons to give specific sounds when they are dropped. |
Foliage_leaf
|
Same as Foliage, but uses Foliage sounds, instead of Dirt sounds. |
Portal
$surfaceprop | Description |
---|---|
Energyball
|
Unsure what this is. But its listed in the portal surfaceprop file, based on "Glass". "The portal energy ball needs perfectly reflective collisions, reguardless of what it hits". |
Sphere
|
Unsre what this is. But its listed in the portal surfaceprop file, based on "Metal". The sphere needs to have elasticity and dampening set to create a more realistic bounce |
Sphere2
|
Portal2's spehere is made of metal and isn't quite as bouncey |
Portal 2
$surfaceprop | Description |
---|---|
brokenglass
|
|
hard_light_bridge
|
|
PaintBomb
|
Based on metal. Unsure what this really is used for. |
painted_surface
|
Has paint step sounds, but no other functions. |
Reflective
|
Unsre what this is. But its listed in the portal surfaceprop file, based on "metalpanel". Same description as "Energyball" in Portal 1 had. "The portal energy ball needs perfectly reflective collisions, reguardless of what it hits". |
Turret_Gib
|
Gib models of turrets use this. |
Underground_Cube
|
|
WeightedCube_Bounce
|
Extremely bouncy storage cube. |
Team Fortress 2
$surfaceprop | Description |
---|---|
ball_bouncy
|
Rubber bouncy ball |
demoman_grenade
|
|
grenade_napalm
|
pyro napalm grenade. |
passtime_ball
|
Rubber Pass time ball from Tf2 |
scout_baseball
|
Rubber baseball Projectile. |
scout_ornament
|
Glass christmas tree ornament Projectile. |
wasabiball
|
Based on "Rubber. |
Wrecking_ball
|
Third Party Games/mods
The following surfaceprops are added in popular non-Valve games, which can't be found in any official valve titles.
Black Mesa
$surfaceprop | Description |
---|---|
Concretegrit
|
|
Conveyor_off Conveyor_on
|
Special properties for the conveyor belts. |
Floating_metal_barrel_bms
|
Special version just for Black Mesa |
floating_plastic_barrel_bms
|
|
friction_metal_00 friction_metal_10 friction_metal_15 friction_metal_25 friction_metal_35 friction_metal_45
|
Metals with various friction settings. |
hornet_bouncy
|
|
Inttower
|
Flesh walk sound used in the interloper tower interior |
Leaves
|
Black Mesa's version of "Foliage_leaf" |
Metalpipe
|
|
Satchel
|
Dufflebag material, or backpack. |
Xen_Root
|
Fleshy tentacle roots in Xen. |
Garry's Mod
$surfaceprop | Description |
---|---|
frictionM_00 frictionM_10 frictionM_25 friction_00 friction_10 friction_25
|
Material with default sounds, but with various friction settings. |
gmod_bouncy
|
|
gmod_ice
|
Very low friction on which you slip and slide. |
gmod_silent
|
|
gm_ps_egg
|
|
gm_ps_metaltire
|
|
gm_ps_soccerball
|
|
gm_ps_woodentire
|
|
gm_torpedo
|
|
phx_explosiveball
|
|
phx_flakshell
|
|
phx_rubbertire
|
|
phx_rubbertire2
|
|
phx_tire_normal
|
|
phx_ww2bomb
|
|
plastic_barrel_verybuoyant
|
Even more buoyant barrel. |
INFRA
$surfaceprop | Description |
---|---|
Alttile
|
Only has different step sounds |
Bag
|
Dufflebag material, or backpack. |
Balloon
|
Based on plastic, but has a balloon popping sound when broken. |
Crpt
|
Same as Carpet in every way. |