With frightening regularity, I see people post TF2 videos with atrocious quality to Youtube, citing their "low-end hardware" as an excuse for the low settings and poor framerates in the video.
If you use FRAPS or any screen recording tool to make your TF2 videos, you are doing it wrong. Here's how you can create a video using max graphics settings with constant framerates even if your hardware sucks:
If you haven't already done so, you need to record a demo of the gameplay that you want to create a video from. Do this by typing "
record [demoname]" in the console while you are playing and "
stop" when you are done. Once you have your demo file, follow these steps:
- Load up TF2 using the settings that you want to show in the video. This includes screen resolution. If you are planning to upload to a low-quality Streaming site, I advise using 640x480 so that it will take less time to render and upload. If you're uploading an HD video to Youtube, use 1280x720.
- Open up the console and enter the following commands: "sv_cheats 1" and "host_framerate 30" (You can record at a higher framerate if you want a 60 FPS video for editing purposes, but most streaming sites like Youtube use 30 FPS.)
- Start playing the demo either via the console command "playdemo [demoname]" or the demo ui accessed via the command demoui or keyboard shortcut shift+f2
- When you get to the part of the demo that you want to record, type "startmovie [videofilename] avi"
- You should get a pop-up window with a list of codecs to choose from. I recommend using the XviD codecs. If the list doesn't include the codecs you need, you may want to grab CCCP or K-Lite (pick one, you can try the other if it's not working).
- After you've begun recording the movie, allow the game to play out. The playback will be choppy and look buggy and the sound may loop or be completely muted. Don't worry, this is normal and the finished video will not look like this. Just allow the demo to play until it's gotten as far as you want to record. If you have a lower-end system or you're recording a rather lengthy video segment, this could take awhile, so you might want to find something else to do while the video renders.
- Type "endmovie" in the console when you are done recording.
- The resulting AVI file will not be located in your TF folder. It will be put in your "team fortress 2" folder with the name you required, e.g. C:/Program Files/Steam/SteamApps/bobsmith/team fortress 2/mymovie.avi
- Now you can import the AVI into Windows Movie Maker or whatever program you use if you need to do any further editing.
Now you guys don't have an excuse to upload 10 FPS videos to Youtube.
Some other stuff:
Most problems involving the codec window not appearing can be solved by running the game in windowed mode. Open up your launch options and enter "-windowed -noborder" to enter windowed mode and eliminate the annoying border that usually comes with it. An added benefit to running windowed mode is that you can run the game using any resolution you'd like using "-h" and "-w" in the launch options, i.e. "-w 1280 -h 720". This can be very helpful if your display doesn't natively support the resolution that you want to use.
If you are having trouble with AVI codecs or need to record a long stretch of video, you can use the command "
startmovie [videofilename]" instead of "
startmovie [videofilename] avi". The difference between the two is that the first one will record a TGA sequence and a WAV file. You can import these into a program like Sony Vegas or VirtualDub and export them as video later, but keep in mind that a TGA sequence will chew up a LOT of disk space.
If you're really serious about TF2 moviemaking, I recommend checking out
the PLDX movie-making tool.
More advanced moviemaking tips can be found at
the Valve Developer Community Wiki. Le Duc De GuiSe has also made a
helpful forum post briefly listing some of the more useful settings to use when recording.
Also note that everything isn't exclusive to TF2, it works for all Source games. You can use this method to create videos for any games that run on the Source engine, like gmod, CS:S, and L4D.