Not really quick explanasion which should suffice for your use:
Let’s say your custom texture is located at:
etmain/textures/willf91/floor1.tga
and you want to make it cushion, so people don’t die when the fall on it.
Then do this:
-Inside your etmain folder there should be a folder called scripts
-Inside etmain/scripts/ make a new txt file, call it willf91.shader
Make sure that the file type is .shader not .txt:
willf91.shader -> Right 
willf91.shader.txt -> Wrong 
-Next up add your shader to the list
-Go to etmain/scripts/shaderlist.txt
-Open it in notepad, scroll to the bottom and add willf91 to the list.
This basically tells your ET that you’ve added a new shader.
-Save and close shaderlist.txt
Now we will make the floor1 texture have the cushion surfaceparm
-Open your shader up in notepad (willf91.shader)
-Paste this code
textures/willf91/floor1
{
surfaceparm nodamage
implicitMap -
}
-Save and close
That’s it now that floor has the cushion parameter, if you want to add more textures then just add the next one under it for example:
textures/willf91/floor1
{
surfaceparm nodamage
implicitMap -
}
textures/willf91/floor2
{
surfaceparm metalsteps
surfaceparm nomarks
surfaceparm nodamage
implicitMap -
}
Here is the Q3 shader manual with a list of all available settings and surfaceparms:
http://toolz.nexuizninjaz.com/shader/