Type the following into your console:
where <filename> is the filename of the demo.
So if you wanted to record a demo called "Demomanp0wnz0r" you'd put this in the console:
Code:
record Demomanp0wnz0r
Your Demo will continue to map changes and round changes. If the map changes during recording, you'll have a second demo file with "_2" appended to the file name. So your Demomanp0wnz0r demo will be Demomanp0wnz0r_2 if the demo is recording on the map change.
To stop recording just put the following in the console:
{code]stop[/code]
File size will depend on the the length of the round. I have Dustbowl demos that are about 40MB.
The performance hit isn't noticeable on my computer, but it may very so test it out first.
EDIT: Damn you Bane