// L4D gamematerial definitions from the code: // CHAR_TEX_ANTLION = 'A', // CHAR_TEX_BLOODYFLESH = 'B', // CHAR_TEX_CONCRETE = 'C', // CHAR_TEX_DIRT = 'D', // CHAR_TEX_FLESH = 'F', // CHAR_TEX_GRATE = 'G', // CHAR_TEX_ALIENFLESH = 'H', // CHAR_TEX_CLIP = 'I', // CHAR_TEX_GRASS = 'J', // L4D addition // CHAR_TEX_MUD = 'K', // L4D addition // CHAR_TEX_PLASTIC = 'L', // CHAR_TEX_METAL = 'M', // CHAR_TEX_SAND = 'N', // CHAR_TEX_LEAVES = 'O', // L4D: renamed from CHAR_TEX_FOLIAGE // CHAR_TEX_COMPUTER = 'P', // CHAR_TEX_ASPHALT = 'Q', // L4D addition // CHAR_TEX_BRICK = 'R', // L4D addition // CHAR_TEX_SLOSH = 'S', // CHAR_TEX_TILE = 'T', // CHAR_TEX_CARDBOARD = 'U', // L4D addition // CHAR_TEX_VENT = 'V', // CHAR_TEX_WOOD = 'W', // CHAR_TEX_FAKE = 'X', // Fake material for ladders, wading, skybox, etc // CHAR_TEX_GLASS = 'Y', // CHAR_TEX_WARPSHIELD = 'Z', // wierd-looking jello effect for advisor shield. // CHAR_TEX_CLAY = 1, // L4D addition // CHAR_TEX_PLASTER = 2, // L4D addition // CHAR_TEX_ROCK = 3, // L4D addition // CHAR_TEX_RUBBER = 4, // L4D addition // CHAR_TEX_SHEETROCK = 5, // L4D addition // CHAR_TEX_CLOTH = 6, // L4D addition // CHAR_TEX_CARPET = 7, // L4D addition // CHAR_TEX_PAPER = 8, // L4D addition // CHAR_TEX_UPHOLSTERY = 9, // L4D addition // CHAR_TEX_PUDDLE = 10, // L4D addition // "surface group" // { // "property" "value" // ... // } // // thickness: If this value is present, the material is not volumetrically solid // it means that the volume should be computed as the surface area times this // thickness (for automatic mass). The inside space beneath the thickness value is air. // // physics parameters are: // density: this is the material density in kg / m^3 (water is 1000) // elasticity: This is the collision elasticity (0 - 1.0, 0.01 is soft, 1.0 is hard) // friction: this is the physical friction (0 - 1.0, 0.01 is slick, 1.0 is totally rough) // dampening: this is the physical drag on an object when in contact with this surface (0 - x, 0 none to x a lot) // // !!! Do not edit the physics properties (especially density) without the proper references !!! // // Sounds // // stepleft: footstep sound for left foot // stepright: footstep sound for right foot // impactsoft: Physical impact sound when hitting soft surfaces // impacthard: Physical impact sound when hitting hard surfaces // scrapesmooth: Looping physics friction sound (when scraping smooth surfaces) // scraperough: Looping physics friction sound (when scraping rough surfaces) // bulletimpact: bullet impact sound // gamematerial: game material index (can be a single letter or a number) // // NOTE: The properties of "default" will get copied into EVERY material who does not // override them!!! // // "base" means to use the parameters from that material as a base. // "base" must appear as the first key in a material // // ----------------------------- // world materials // ----------------------------- // NOTE: "default" properties are assigned to ALL other materials unless overriden!!! "default" { "density" "2000" "elasticity" "0.25" "friction" "0.8" "dampening" "0.0" "runleft" "default.RunLeft" "runright" "default.RunRight" "walkleft" "default.WalkLeft" "walkright" "default.WalkRight" "bulletimpact" "Default.BulletImpact" "scraperough" "Default.ScrapeRough" "scrapesmooth" "Default.ScrapeSmooth" "impacthard" "Default.ImpactHard" "impactsoft" "Default.ImpactSoft" "audioreflectivity" "0.66" "audiohardnessfactor" "1.0" "audioroughnessfactor" "1.0" "scrapeRoughThreshold" "0.5" "impactHardThreshold" "0.5" "gamematerial" "D" "jumpfactor" "1.0" "maxspeedfactor" "1.0" "climbable" "0" } // NOTE: Almost nothing is solid metal - so "metal" is sheet metal "solidmetal" { "density" "2700" "elasticity" "0.1" "audioreflectivity" "0.83" "friction" "0.8" "runleft" "SolidMetal.RunLeft" "runright" "SolidMetal.RunRight" "walkleft" "SolidMetal.WalkLeft" "walkright" "SolidMetal.WalkRight" "impacthard" "SolidMetal.ImpactHard" "impactsoft" "SolidMetal.ImpactSoft" "scraperough" "SolidMetal.ScrapeRough" "scrapesmooth" "SolidMetal.ScrapeSmooth" "bulletimpact" "SolidMetal.BulletImpact" // "strain" "SolidMetal.Strain" "gamematerial" "M" } // metal box - smaller metal box (< 2' width/height/depth) "Metal_Box" { "base" "solidmetal" "thickness" "0.1" "runleft" "SolidMetal.RunLeft" "runright" "SolidMetal.RunRight" "walkleft" "SolidMetal.WalkLeft" "walkright" "SolidMetal.WalkRight" "bulletimpact" "Metal_Box.BulletImpact" "scraperough" "Metal_Box.ScrapeRough" "scrapesmooth" "Metal_Box.ScrapeSmooth" "impacthard" "Metal_Box.ImpactHard" "impactsoft" "Metal_Box.ImpactSoft" "break" "Metal_Box.Break" // "strain" "Metal_Box.Strain" } // Assume that everything we are building // is large enough to be constructed out of a thin sheet of metal // only flag a few things as "solidmetal" (I-Beams, anvils, etc) "metal" { "base" "solidmetal" "elasticity" "0.25" "thickness" "0.1" } "metalvehicle" { "base" "metal" "thickness" "0.1" "density" "2700" "elasticity" "0.2" "friction" "0.8" "audioreflectivity" "0.33" "audioroughnessfactor" "0.1" "audioHardMinVelocity" "500" // 500 "impactHardThreshold" "0.5" "impacthard" "SolidMetal.ImpactHard" "impactsoft" "SolidMetal.ImpactSoft" "scraperough" "SolidMetal.ScrapeRough" "scrapesmooth" "SolidMetal.ScrapeSmooth" "gamematerial" "M" } "metal_bouncy" { "base" "solidmetal" "elasticity" "1000" "friction" "0" "density" "10000" } // Airboat pontoons have very low friction // TODO: make the pontoon material separate from the rest of the airboat? "slipperymetal" { "base" "metal" "friction" "0.1" "elasticity" "0.15" "audioreflectivity" "0.83" "audioroughnessfactor" "0.1" } // metal grating, used for decking "metalgrate" { "thickness" "0.5" "density" "1600" "elasticity" "0.25" "friction" "0.8" "runleft" "Metalgrate.RunLeft" "runright" "Metalgrate.RunRight" "walkleft" "Metalgrate.WalkLeft" "walkright" "Metalgrate.WalkRight" "impacthard" "MetalGrate.ImpactHard" "impactsoft" "MetalGrate.ImpactSoft" "scraperough" "MetalGrate.ScrapeRough" "scrapeSmooth" "MetalGrate.ScrapeSmooth" "bulletimpact" "MetalGrate.BulletImpact" "audioreflectivity" "0.83" // "strain" "Metal_Box.Strain" "gamematerial" "M" } "grate" { "base" "metalgrate" } // ~1mm thick metal "metalvent" { "base" "metal_box" "thickness" "0.04" "density" "2700" "elasticity" "0.1" "friction" "0.8" "runleft" "metalvent.RunLeft" "runright" "metalvent.RunRight" "walkleft" "metalvent.WalkLeft" "walkright" "metalvent.WalkRight" "impacthard" "MetalVent.ImpactHard" "audioreflectivity" "0.33" "audioroughnessfactor" "0.1" "gamematerial" "V" } // thick solid steel panel - used for solid wall, floor, machine construction "metalpanel" { "base" "metal" "thickness" "0.1" "density" "2700" "elasticity" "0.2" "friction" "0.8" "audioreflectivity" "0.33" "audioroughnessfactor" "0.1" "gamematerial" "V" } "dirt" { "density" "1600" "elasticity" "0.01" "friction" "0.8" "runleft" "dirt.RunLeft" "runright" "dirt.RunRight" "walkleft" "dirt.WalkLeft" "walkright" "dirt.WalkRight" "impacthard" "Dirt.Impact" "scraperough" "Dirt.Scrape" "bulletimpact" "Dirt.BulletImpact" "audioreflectivity" "0.03" "audiohardnessfactor" "0.25" "gamematerial" "D" } "mud" { "base" "dirt" "friction" "0.6" "dampening" "6.0" "runleft" "mud.RunLeft" "runright" "mud.RunRight" "walkleft" "mud.WalkLeft" "walkright" "mud.WalkRight" "audiohardnessfactor" "0.0" "audioroughnessfactor" "0.1" "gamematerial" "K" // L4D: new gamematerial } "slipperyslime" { "base" "dirt" "friction" "0.1" "jumpfactor" "0.7" "runleft" "slipperyslime.RunLeft" "runright" "slipperyslime.RunRight" "walkleft" "slipperyslime.WalkLeft" "walkright" "slipperyslime.WalkRight" "audiohardnessfactor" "0.0" "audioroughnessfactor" "0.1" } "grass" { "base" "dirt" "runleft" "grass.RunLeft" "runright" "grass.RunRight" "walkleft" "grass.WalkLeft" "walkright" "grass.WalkRight" "gamematerial" "J" // L4D: new gamematerial } "sugarcane" { "base" "dirt" "runleft" "sugarcane.RunLeft" "runright" "sugarcane.RunRight" "walkleft" "sugarcane.WalkLeft" "walkright" "sugarcane.WalkRight" "gamematerial" "J" // L4D: new gamematerial } "tile" { "thickness" "0.5" "density" "2700" "elasticity" "0.3" "friction" "0.8" "runleft" "tile.RunLeft" "runright" "tile.RunRight" "walkleft" "tile.WalkLeft" "walkright" "tile.WalkRight" "audioreflectivity" "0.99" "audioroughnessfactor" "0.1" "bulletimpact" "Tile.BulletImpact" "gamematerial" "T" } // generic wood (NOTE: materials should use wood_box, wood_crate, wood_plank, wood_panel etc) "Wood" { "density" "700" "elasticity" "0.1" "friction" "0.8" "runleft" "Wood.RunLeft" "runright" "Wood.RunRight" "walkleft" "Wood.WalkLeft" "walkright" "Wood.WalkRight" "bulletimpact" "Wood.BulletImpact" "scraperough" "Wood.ScrapeRough" "scrapesmooth" "Wood.ScrapeSmooth" "impacthard" "Wood.ImpactHard" "impactsoft" "Wood.ImpactSoft" // "strain" "Wood.Strain" "break" "Wood.Break" "audioreflectivity" "0.33" "audiohardnessfactor" "0.25" "gamematerial" "W" } "Wood_lowdensity" { "base" "wood" "density" "300" } // small crate "Wood_Box" { "base" "Wood" "runleft" "Wood.RunLeft" "runright" "Wood.RunRight" "walkleft" "Wood.WalkLeft" "walkright" "Wood.WalkRight" "bulletimpact" "Wood_Box.BulletImpact" "scraperough" "Wood_Box.ScrapeRough" "scrapesmooth" "Wood_Box.ScrapeSmooth" "impacthard" "Wood_Box.ImpactHard" "impactsoft" "Wood_Box.ImpactSoft" // "strain" "Wood_Box.Strain" "break" "Wood_Box.Break" } // large crate, large wood furniture (bookcases, tables) "Wood_Crate" { "base" "Wood" "runleft" "Wood_Crate.RunLeft" "runright" "Wood_Crate.RunRight" "walkleft" "Wood_Crate.WalkLeft" "walkright" "Wood_Crate.WalkRight" "scraperough" "Wood_Crate.ScrapeRough" "scrapesmooth" "Wood_Crate.ScrapeSmooth" "impacthard" "Wood_Crate.ImpactHard" "impactsoft" "Wood_Crate.ImpactSoft" // "strain" "Wood_Crate.Strain" "break" "Wood_Crate.Break" } // wood board, floorboard, plank "Wood_Plank" { "base" "Wood_Box" "bulletimpact" "Wood_Plank.BulletImpact" "scraperough" "Wood_Plank.ScrapeRough" "scrapesmooth" "Wood_Plank.ScrapeSmooth" "impacthard" "Wood_Plank.ImpactHard" "impactsoft" "Wood_Plank.ImpactSoft" // "strain" "Wood_Plank.Strain" "break" "Wood_Plank.Break" } // solid 6x6 or greater block, post or tree "Wood_Solid" { "base" "Wood" "bulletimpact" "Wood_Solid.BulletImpact" "scraperough" "Wood_Solid.ScrapeRough" "scrapesmooth" "Wood_Solid.ScrapeSmooth" "impacthard" "Wood_Solid.ImpactHard" "impactsoft" "Wood_Solid.ImpactSoft" // "strain" "Wood_Solid.Strain" "break" "Wood_Solid.Break" } // small wood furniture - chairs, small tables "Wood_Furniture" { "base" "Wood_Box" "impactsoft" "Wood_Furniture.ImpactSoft" // "strain" "Wood_Furniture.Strain" "break" "Wood_Furniture.Break" } // wood panel - plywood panel, wood door panel "Wood_Panel" { "base" "Wood_Crate" "thickness" "1.0" "runleft" "Wood_Panel.RunLeft" "runright" "Wood_Panel.RunRight" "walkleft" "Wood_Panel.WalkLeft" "walkright" "Wood_Panel.WalkRight" "bulletimpact" "Wood_Panel.BulletImpact" "scraperough" "Wood_Panel.ScrapeRough" "scrapesmooth" "Wood_Panel.ScrapeSmooth" "impacthard" "Wood_Panel.ImpactHard" "impactsoft" "Wood_Panel.ImpactSoft" // "strain" "Wood_Panel.Strain" "break" "Wood_Panel.Break" } "water" { "density" "1000" "elasticity" "0.1" "friction" "0.8" "runleft" "water.RunLeft" "runright" "water.RunRight" "walkleft" "water.WalkLeft" "walkright" "water.WalkRight" "bulletimpact" "Water.BulletImpact" "audioreflectivity" "0.33" "audioroughnessfactor" "0.1" "audiohardnessfactor" "0.0" "gamematerial" "S" } "wet" { "gamematerial" "S" } "puddle" { "gamematerial" "10" } "slime" { "density" "2000" "elasticity" "0.1" "friction" "0.9" "dampening" "200.0" "runleft" "slipperyslime.RunLeft" "runright" "slipperyslime.RunRight" "walkleft" "slipperyslime.WalkLeft" "walkright" "slipperyslime.WalkRight" "bulletimpact" "Water.BulletImpact" "gamematerial" "S" "audioreflectivity" "0.33" "audiohardnessfactor" "0.0" "audioroughnessfactor" "0.1" } "quicksand" { "density" "600" "elasticity" "2.0" "audioreflectivity" "0.33" "audiohardnessfactor" "0.0" "audioroughnessfactor" "1.0" } // wade is a water material for walking in/on water at knee height "wade" { "base" "water" "runleft" "wade.RunLeft" "runright" "wade.RunRight" "walkleft" "wade.WalkLeft" "walkright" "wade.WalkRight" "audioreflectivity" "0.33" "gamematerial" "X" } // ladder is a fake material for walking on ladders "ladder" { "base" "metal" "climbable" "1.0" "runleft" "ladder.RunLeft" "runright" "ladder.RunRight" "walkleft" "ladder.WalkLeft" "walkright" "ladder.WalkRight" "audioreflectivity" "0.33" "gamematerial" "X" } "woodladder" { "base" "wood" "climbable" "1.0" "runleft" "wood_panel.RunLeft" "runright" "wood_panel.RunRight" "walkleft" "wood_panel.WalkLeft" "walkright" "wood_panel.WalkRight" "audioreflectivity" "0.33" "gamematerial" "X" } // pane of glass, computer screen, window, glass door "glass" { "thickness" "0.5" "density" "2700" "elasticity" "0.2" "friction" "0.5" "runleft" "glass.RunLeft" "runright" "glass.RunRight" "walkleft" "glass.WalkLeft" "walkright" "glass.WalkRight" "scraperough" "Glass.ScrapeRough" "scrapesmooth" "Glass.ScrapeSmooth" "impacthard" "Glass.ImpactHard" "impactsoft" "Glass.ImpactSoft" "bulletimpact" "Glass.BulletImpact" // "strain" "Glass.Strain" "break" "Glass.Break" "audioreflectivity" "0.66" "audiohardnessfactor" "1.0" "audioroughnessfactor" "0.0" "gamematerial" "Y" } // computer case, tech equipment case "computer" { "base" "metal_box" "bulletimpact" "Computer.BulletImpact" "impacthard" "Computer.ImpactHard" "impactsoft" "Computer.ImpactSoft" "gamematerial" "P" } "concrete" { "density" "2400" "elasticity" "0.2" "friction" "0.8" "runleft" "concrete.RunLeft" "runright" "concrete.RunRight" "walkleft" "concrete.WalkLeft" "walkright" "concrete.WalkRight" "scraperough" "Concrete.ScrapeRough" "scrapesmooth" "Concrete.ScrapeSmooth" "impacthard" "Concrete.ImpactHard" "impactsoft" "Concrete.ImpactSoft" "bulletimpact" "Concrete.BulletImpact" "audioreflectivity" "0.66" "gamematerial" "C" } "asphalt" { "base" "concrete" "gamematerial" "Q" } // Solid rock (small sounds) "rock" { "base" "concrete" "impacthard" "Rock.ImpactHard" "impactsoft" "Rock.ImpactSoft" "scraperough" "Rock.ImpactHard" "scrapesmooth" "Rock.ImpactSoft" "gamematerial" "3" } // tubs, urinals, sinks "porcelain" { "base" "rock" } // Large solid rock (large sounds) "boulder" { "base" "rock" "scraperough" "Boulder.ScrapeRough" "scrapesmooth" "Boulder.ScrapeSmooth" "impacthard" "Boulder.ImpactHard" "impactsoft" "Boulder.ImpactSoft" "gamematerial" "3" } "gravel" { "base" "dirt" "runleft" "gravel.RunLeft" "runright" "gravel.RunRight" "walkleft" "gravel.WalkLeft" "walkright" "gravel.WalkRight" } "brick" { "base" "rock" "gamematerial" "R" } // 9x12 prefabricated concrete cinder blocks "concrete_block" { "base" "concrete" "impacthard" "Concrete_Block.ImpactHard" } // chainlink fencing material "chainlink" { "thickness" "0.5" "density" "1600" "elasticity" "0.25" "friction" "0.8" "runleft" "chainlink.RunLeft" "runright" "chainlink.RunRight" "walkleft" "chainlink.WalkLeft" "walkright" "chainlink.WalkRight" "impacthard" "ChainLink.ImpactHard" "impactsoft" "ChainLink.ImpactSoft" "scraperough" "ChainLink.ScrapeRough" "scrapesmooth" "ChainLink.ScrapeSmooth" "bulletimpact" "ChainLink.BulletImpact" "gamematerial" "G" } // metal chain "chain" { "base" "chainlink" "impacthard" "ChainLink.ImpactHard" "impactsoft" "ChainLink.ImpactSoft" "scraperough" "ChainLink.ScrapeRough" "scrapesmooth" "ChainLink.ScrapeSmooth" "bulletimpact" "ChainLink.BulletImpact" "gamematerial" "G" } // medium sized body "flesh" { "density" "900" "runleft" "flesh.RunLeft" "runright" "flesh.RunRight" "walkleft" "flesh.WalkLeft" "walkright" "flesh.WalkRight" "bulletimpact" "Flesh.BulletImpact" "impacthard" "Flesh.ImpactHard" "impactsoft" "Flesh.ImpactSoft" "scraperough" "Flesh.ScrapeRough" "scrapesmooth" "Flesh.ScrapeSmooth" // "strain" "Flesh.Strain" "break" "Flesh.Break" "audiohardnessfactor" "0.25" "audioHardMinVelocity" "500" "audioroughnessfactor" "0.1" "gamematerial" "F" } // gibs "bloodyflesh" { "base" "flesh" "impacthard" "Flesh_Bloody.ImpactHard" "gamematerial" "B" } "alienflesh" { "base" "flesh" "gamematerial" "H" } // Flesh for physics, metal for bullet fx "armorflesh" { "base" "flesh" "bulletimpact" "ArmorFlesh.BulletImpact" "audiohardnessfactor" "1.0" "audioroughnessfactor" "0.1" "gamematerial" "M" } // "watermelon" // { // "density" "900" // "bulletimpact" "Watermelon.BulletImpact" // "impacthard" "Watermelon.Impact" // "scraperough" "Watermelon.Scrape" // "audiohardnessfactor" "0.25" // "audioroughnessfactor" "0.1" // "gamematerial" "W" // } "snow" { "base" "dirt" "density" "800" "friction" "0.35" "audiohardnessfactor" "0.25" "friction" "0.8" "runleft" "grass.RunLeft" "runright" "grass.RunRight" "walkleft" "grass.WalkLeft" "walkright" "grass.WalkRight" } "ice" { "density" "917" "friction" "0.1" "elasticity" "0.1" "audioroughnessfactor" "0.1" } // UNDONE: Do proper values for these - I made them up so I would have good // initial values for all VMTs "carpet" { "base" "dirt" "density" "500" "thickness" "0.1" "elasticity" "0.01" "friction" "0.8" "impacthard" "Carpet.Impact" "bulletimpact" "Carpet.BulletImpact" "scraperough" "Carpet.Scrape" "audioreflectivity" "0.03" "audiohardnessfactor" "0.25" "audioroughnessfactor" "0.1" "gamematerial" "7" } // UNDONE: Do proper values for these - I made them up so I would have good // initial values for all VMTs "upholstery" { "base" "dirt" "density" "500" "thickness" "0.1" "elasticity" "0.01" "friction" "0.8" "impacthard" "Carpet.Impact" "bulletimpact" "Carpet.BulletImpact" "scraperough" "Carpet.Scrape" "audioreflectivity" "0.03" "audiohardnessfactor" "0.25" "audioroughnessfactor" "0.1" "gamematerial" "9" } // drywall, office wall material, sheetrock "plaster" { "base" "dirt" "audiohardnessfactor" "0.5" "audioroughnessfactor" "0.1" "runleft" "plaster.RunLeft" "runright" "plaster.RunRight" "walkleft" "plaster.WalkLeft" "walkright" "plaster.WalkRight" "bulletimpact" "drywall.ImpactHard" "scraperough" "ceiling_tile.ScrapeRough" "scrapesmooth" "ceiling_tile.ScrapeSmooth" "impacthard" "drywall.ImpactHard" "impactsoft" "drywall.ImpactSoft" // "strain" "Cardboard.Strain" "break" "Cardboard.Break" "gamematerial" "2" } "sheetrock" { "base" "dirt" "audiohardnessfactor" "0.5" "audioroughnessfactor" "0.1" "runleft" "default.RunLeft" "runright" "default.RunRight" "walkleft" "default.WalkLeft" "walkright" "default.WalkRight" "bulletimpact" "drywall.ImpactHard" "scraperough" "ceiling_tile.ScrapeRough" "scrapesmooth" "ceiling_tile.ScrapeSmooth" "impacthard" "drywall.ImpactHard" "impactsoft" "drywall.ImpactSoft" // "strain" "Cardboard.Strain" "break" "Cardboard.Break" "gamematerial" "5" } // carboard box "cardboard" { "base" "dirt" "density" "500" "thickness" "0.25" "audiohardnessfactor" "0.25" "audioroughnessfactor" "0.25" "runleft" "cardboard.RunLeft" "runright" "cardboard.RunRight" "walkleft" "cardboard.WalkLeft" "walkright" "cardboard.WalkRight" "bulletimpact" "Cardboard.BulletImpact" "scraperough" "Cardboard.ScrapeRough" "scrapesmooth" "Cardboard.ScrapeSmooth" "impacthard" "Cardboard.ImpactHard" "impactsoft" "Cardboard.ImpactSoft" // "shake" "Cardboard.Shake" // "strain" "Cardboard.Strain" "break" "Cardboard.Break" "gamematerial" "U" } // larger plastic barrel, hollow, soft plastic "plastic_barrel" { "density" "500" "thickness" "0.25" "elasticity" "0.01" "friction" "0.8" "audiohardnessfactor" "0.25" "audioroughnessfactor" "0.25" "runleft" "plastic_barrel.RunLeft" "runright" "plastic_barrel.RunRight" "walkleft" "plastic_barrel.WalkLeft" "walkright" "plastic_barrel.WalkRight" "bulletimpact" "Plastic_Barrel.BulletImpact" "scraperough" "Plastic_Barrel.ScrapeRough" "scrapesmooth" "Plastic_Barrel.ScrapeSmooth" "impacthard" "Plastic_Barrel.ImpactHard" "impactsoft" "Plastic_Barrel.ImpactSoft" // "shake" "Plastic_Barrel.Shake" // "strain" "Plastic_Barrel.Strain" "break" "Plastic_Barrel.Break" // "roll" "Plastic_Barrel.Roll" "gamematerial" "L" } // small - medium plastic box, hard plastic "Plastic_Box" { "density" "500" "elasticity" "0.01" "friction" "0.8" "thickness" "0.25" "audiohardnessfactor" "0.25" "audioroughnessfactor" "0.25" "runleft" "plastic_box.RunLeft" "runright" "plastic_box.RunRight" "walkleft" "plastic_box.WalkLeft" "walkright" "plastic_box.WalkRight" "bulletimpact" "Plastic_Box.BulletImpact" "scraperough" "Plastic_Box.ScrapeRough" "scrapesmooth" "Plastic_Box.ScrapeSmooth" "impacthard" "Plastic_Box.ImpactHard" "impactsoft" "Plastic_Box.ImpactSoft" // "strain" "Plastic_Box.Strain" "break" "Plastic_Box.Break" "gamematerial" "L" } // smaller generic hard plastic "plastic" { "base" "Plastic_Box" "audioroughnessfactor" "0.1" "bulletimpact" "Plastic_Box.ImpactHard" } // small med kit, smaller tech items, battery "item" { "base" "Plastic_Box" "density" "600" "bulletimpact" "Plastic_Box.ImpactHard" } // This one is used for puzzles where we want something that floats // but the player can stand on without it sinking beneath the water "floatingstandable" { "base" "dirt" "density" "800" } "sand" { "base" "dirt" "runleft" "sand.RunLeft" "runright" "sand.RunRight" "walkleft" "sand.WalkLeft" "walkright" "sand.WalkRight" "bulletimpact" "Sand.BulletImpact" "audioreflectivity" "0.03" } // solid rubber floor mat, solid rubber tire "rubber" { "base" "dirt" "elasticity" "0.2" "friction" "0.8" "runleft" "rubber.RunLeft" "runright" "rubber.RunRight" "walkleft" "rubber.WalkLeft" "walkright" "rubber.WalkRight" "impacthard" "Rubber.ImpactHard" "impactsoft" "Rubber.ImpactSoft" "bulletimpact" "Rubber.BulletImpact" "audioroughnessfactor" "0.1" "audiohardnessfactor" "0.2" "gamematerial" "4" } // hollow rubber tire "rubbertire" { "base" "rubber" "bulletimpact" "Rubber_Tire.BulletImpact" "impacthard" "Rubber_Tire.ImpactHard" "impactsoft" "Rubber_Tire.ImpactSoft" // "strain" "Rubber_Tire.Strain" "friction" "1.0" "gamematerial" "4" } "jeeptire" { "base" "rubber" "bulletimpact" "Rubber_Tire.BulletImpact" "impacthard" "Rubber_Tire.ImpactHard" "impactsoft" "Rubber_Tire.ImpactSoft" // "strain" "Rubber_Tire.Strain" "friction" "1.337" "gamematerial" "4" } "slidingrubbertire" { "base" "rubber" "friction" "0.2" } "brakingrubbertire" { "base" "rubber" "friction" "0.6" } "slidingrubbertire_front" { "base" "rubber" "friction" "0.2" } "slidingrubbertire_rear" { "base" "rubber" "friction" "0.2" } // ----------------------------- // objects // ----------------------------- // glass soda bottle, cup, plate, jar "glassbottle" { "base" "glass" "friction" "0.4" "elasticity" "0.3" "runleft" "glassbottle.RunLeft" "runright" "glassbottle.RunRight" "walkleft" "glassbottle.WalkLeft" "walkright" "glassbottle.WalkRight" "impacthard" "GlassBottle.ImpactHard" "impactsoft" "GlassBottle.ImpactSoft" "scraperough" "GlassBottle.ScrapeRough" "scrapesmooth" "GlassBottle.ScrapeSmooth" "bulletimpact" "GlassBottle.BulletImpact" "break" "GlassBottle.Break" } // ceramic jug, mug "pottery" { "base" "glassbottle" "friction" "0.4" "elasticity" "0.3" "impacthard" "Pottery.ImpactHard" "impactsoft" "Pottery.ImpactSoft" "bulletimpact" "Pottery.BulletImpact" "break" "Pottery.Break" "gamematerial" "1" } "clay" { "base" "tile" "gamematerial" "1" } // solid hand grenade "grenade" { "base" "metalpanel" "friction" "0.9" "elasticity" "0.01" "audiohardnessfactor" "1.0" "audioroughnessfactor" "0.4" "runleft" "grenade.RunLeft" "runright" "grenade.RunRight" "walkleft" "grenade.WalkLeft" "walkright" "grenade.WalkRight" "bulletimpact" "Grenade.ImpactHard" "scraperough" "Grenade.ScrapeRough" "scrapesmooth" "Grenade.ScrapeSmooth" "impacthard" "Grenade.ImpactHard" "impactsoft" "Grenade.ImpactSoft" // "roll" "Grenade.Roll" } // large oxygen tank, propane tank, welding tank "canister" { "base" "metalpanel" "impacthard" "Canister.ImpactHard" "impactsoft" "Canister.ImpactSoft" "scraperough" "Canister.ScrapeRough" "scrapesmooth" "Canister.ScrapeSmooth" // "roll" "Canister.Roll" } // larger metal barrel, metal oil drum "metal_barrel" { "base" "metal_box" "impacthard" "Metal_Barrel.ImpactHard" "impactsoft" "Metal_Barrel.ImpactSoft" "bulletimpact" "Metal_Barrel.BulletImpact" // "roll" "Metal_Barrel.Roll" } "floating_metal_barrel" { "base" "metal_barrel" "density" "500" } "plastic_barrel_buoyant" { "base" "plastic_barrel" "density" "150" } // ROLLER NPC "roller" { "base" "metalpanel" "friction" "0.7" "elasticity" "0.3" "impacthard" "Roller.Impact" } // small aluminum can, full "popcan" { "base" "metal_box" "friction" "0.3" "elasticity" "0.99" "impacthard" "Popcan.ImpactHard" "impactsoft" "Popcan.ImpactSoft" "scraperough" "Popcan.ScrapeRough" "scrapesmooth" "Popcan.ScrapeSmooth" "bulletimpact" "Popcan.BulletImpact" // strain // none // break // none } // paint can, smaller metal can "paintcan" { "base" "popcan" "friction" "0.3" "elasticity" "0.99" "impacthard" "Paintcan.ImpactHard" "impactsoft" "Paintcan.ImpactSoft" //"roll" "Paintcan.Roll" // strain // none // break // none } "paper" { "base" "cardboard" } "papercup" { "base" "paper" "friction" "0.8" "elasticity" "0.1" "impacthard" "Papercup.Impact" "scraperough" "Popcan.ScrapeRough" } // accoustic ceiling tiles, sound baffles, crumbly plaster "ceiling_tile" { "base" "cardboard" "runleft" "ceiling_tile.RunLeft" "runright" "ceiling_tile.RunRight" "walkleft" "ceiling_tile.WalkLeft" "walkright" "ceiling_tile.WalkRight" "bulletimpact" "ceiling_tile.BulletImpact" "scraperough" "ceiling_tile.ScrapeRough" "scrapesmooth" "ceiling_tile.ScrapeSmooth" "impacthard" "ceiling_tile.ImpactHard" "impactsoft" "ceiling_tile.ImpactSoft" "break" "ceiling_tile.Break" } // weapon models - sounds for when weapons drop // Maybe we'll want specific materials for each weapon? "weapon" { "base" "metal" "runleft" "weapon.RunLeft" "runright" "weapon.RunRight" "walkleft" "weapon.WalkLeft" "walkright" "weapon.WalkRight" "bulletimpact" "weapon.BulletImpact" "scraperough" "weapon.ScrapeRough" "scrapesmooth" "weapon.ScrapeSmooth" "impacthard" "weapon.ImpactHard" "impactsoft" "weapon.ImpactSoft" } // for invisible collision materials (like sky) "default_silent" { "gamematerial" "X" } // special materials for player controller "player" { "density" "1000" "friction" "0.5" "elasticity" "0.001" // player is soft & smooth for sound selection "audiohardnessfactor" "0.0" "audioroughnessfactor" "0.0" } "player_control_clip" { "gamematerial" "I" } "no_decal" { "density" "900" "gamematerial" "I" } "foliage" { "base" "Wood_Solid" "runleft" "Foliage.RunLeft" "runright" "Foliage.RunRight" "walkleft" "Foliage.WalkLeft" "walkright" "Foliage.WalkRight" "density" "700" "elasticity" "0.1" "friction" "0.8" "gamematerial" "O" } "slipperyslide" { "base" "solidmetal" "friction" "0.1" "jumpfactor" "0.7" "runleft" "SolidMetal.RunLeft" "runright" "SolidMetal.RunRight" "walkleft" "SolidMetal.WalkLeft" "walkright" "SolidMetal.WalkRight" "audiohardnessfactor" "0.0" "audioroughnessfactor" "0.1" } "strongman_bell" { "base" "solidmetal" "friction" "0.8" "runleft" "SolidMetal.RunLeft" "runright" "SolidMetal.RunRight" "walkleft" "SolidMetal.WalkLeft" "walkright" "SolidMetal.WalkRight" "impacthard" "Strongman.BellImpact" "impactsoft" "Strongman.BellImpact" "scraperough" "SolidMetal.ScrapeRough" "scrapeSmooth" "SolidMetal.ScrapeSmooth" "bulletimpact" "Strongman.BellImpact" "audioreflectivity" "0.83" }