Demo Recording
Demo Recording feature is the best way to record your speedrun and also share your recordings with ease.
While recording demos, you don't stress your game at all (although some artifacts are possible), and the produced files are lightweight. Everyone can playback the demo as long as they have the right version of the game. Recording a demo is a very simple process.
Recording
- Make sure you have enabled the Developer console in your game.
- Load up any level, and go to the console
- Write a command record <demoname>. The game will begin recording.
- Go back In-Game, and do anything you want to get recorded.
- After that, open up console again and write stop. The demo recording will stop. You can see the length of your demo, which is useful for timing a speedrun.
- That's it! You can find your demo in your game's directory, for example \steamapps\half-life 2\hl2.
Segment stop bind
Source Engine demos have a glitch where the start of each demo has a couple of jumpy frames (also known as broken frames). In order to avoid/fix this, a custom bind is used to stop the demo recording in Segmented runs.
bind <key> "save <savename>;echo #SAVE#;sensitivity 0;wait 100;stop"
The additional frames recorded can be overlapped later in the video editor on top of the broken frames. Demos using a bind can be timed using an external tool such as listdemo+ which detects the #SAVE# flag and doesn't time the extra footage recorded.
Load binds
Those load binds work best with Source Pause Tool and prevent you from accidentally moving your view while the game is loading.
alias load "sensitivity 0;load <savename>" alias record "record <demoname>" alias unpause "sensitivity <sens>;unpause"
Bind those three to some keys, and use them like that: hit the l04d key and then quickly the r3c0rd key, after the game loads and is paused by the Source Pause Tool press unp4us3 and run.
Playback
There are several ways to playback your recorded demo. If you want to turn your demo into a movie file, you'll have to use this feature. Here's how you do it:
- Open up console.
- Write a command playdemo <nameofyourdemo>
- The demo will start playing back.
Alternatively you can use viewdemo in Half-Life 1 or demoui (Shift+F2) in any Source Game for playback options like slow-motion, rewinding, pausing etc.
viewdemo won't disconnect you when the demo ends. This however can be advantageous when fixing audio transitions easily, more of this in the GoldSrc Video Creation page below.
See Also
GoldSrc Video Creation
Source Video Creation
Speedrunning Guide