Difference between revisions of "Replay"
Zombie James (talk | contribs) (Added patch notes.) |
m (→Bugs: This appears to be fixed https://youtu.be/UDw2lA5puJo) |
||
(183 intermediate revisions by 94 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {{hatnote|For a help guide on using the Replay tool, see [[Help:Replay Editor]].}} | |
− | + | {{quotation|'''The Sniper''' showing a Replay to his latest victim|There was you, very full of yourself. Then, very briefly surprised. Then, dead.|sound=Sniper_revenge25.wav}} | |
− | |||
− | + | [[File:Replaymanagerscreen.png|right|400px|thumb|The Replays section of the menu.]] | |
− | |||
− | + | The '''Replay''' tool is a feature introduced in the [[Replay Update]]. The Replay tool enables players to record video footage of gameplay in ''[[Team Fortress 2]]'' and edit it directly from the game client. The feature was initially added to ''[[Team Fortress 2 Beta]]'' on {{Patch name|3|9|2011|beta|date=true}}, but was added to the full game on May 5 as the main focus of the Replay Update. | |
− | |||
− | == | + | On servers that enable the feature, video replays of a player's life are recorded and saved directly onto the server. After a player dies, they can choose to download these recordings for editing within the game. The editing features enable scenes to be cut from different angles and include a variety of options including field of view and motion blur. After editing, the Replay tool allows for cut videos to be uploaded directly to [[YouTube]]. |
− | + | ||
+ | With the introduction of the Replay tool and the Replay Update, the [[First Annual Saxxy Awards]] were announced as a contest to encourage players to create and upload videos recorded with the tool, as well as eight [[Replay achievements]] which have been added to the game. | ||
+ | |||
+ | == Recording == | ||
+ | [[File:Replaydownloaded.png|thumb|250px|right|middle|HUD notification that appears upon replay download completion.]] | ||
+ | [[File:F6_Notification.png|thumb|250px|right|middle|HUD notification that appears when recording is available.]] | ||
+ | |||
+ | To record replays, the player must connect to a server that has enabled the feature. A server that supports video replays can be identified by the filmstrip icon ([[File:Icon replay.png]]) next to the server's name in the [[Server Browser|browser list]]. Note that replays cannot be recorded on [[Server#Listen/Local server|listen server]]s, i.e. local servers created through the 'Create Server' option in the [[main menu]]. | ||
+ | |||
+ | After the player has died, the recording can be downloaded by pressing F6 (default) or using the [[console]] command {{code|save_replay}}. A dialog window appears to confirm the name of the video (by default, it contains the map name, the date and time of the recording) and once confirmed, the recording begins to download directly from the server. After the download has completed, a notification pops up to inform the player and from there, the player can access the recording from the 'Replays' screen accessed from the main menu. | ||
+ | |||
+ | == Replay menu == | ||
+ | The Replay menu can be accessed from the button in the main menu. The screen shows all saved replays and movies. Each replay is accompanied by statistics related to that particular life, such as the class played, the player's score and kill count, and the map featured in the video. Replays can also be filtered via the search function in the menu. | ||
+ | |||
+ | Individual replays can be viewed and edited by clicking on the 'Watch / Edit' button. This loads the replay file and enables the Replay tool's editing functions for use. From the menu, the player can also save a selected replay to a movie file (for encoding options in greater detail, see [[Help:Replay Editor]]). | ||
+ | |||
+ | Replays can be deleted at any time by the player. Replays, before being encoded into movie files, exist in the [[Source Engine]] demo format (with the file extension {{code|.dem}}) under the directory {{code|/Steam/steamapps/common/Team Fortress 2/tf/replay/client/replays}}. The main limitation of replays in this format is that they are likely to become unreadable in the event of a [[Patches|game update]]. As such, before exiting the game the player is warned by a dialog message to save existing replays as movie files instead. However, once saved as a movie file, the clip cannot be edited unless using external software. | ||
+ | |||
+ | == Editing == | ||
+ | [[File:Replayeditor.png|thumb|250px|right|middle|Replay Editor interface]] | ||
+ | |||
+ | {{hatnote|For further editing help, see the guide at [[Help:Replay Editor]].}} | ||
+ | |||
+ | The Replay tool's editing functions can be accessed by opening the replay and pressing Space (default). The editing [[Heads-up display|HUD]] contains play, pause, rewind, and fast-forward functions and the first-person, third-person, and free camera viewing angle options. Class icons in the bottom-left corner also allow for quick identification of the whereabouts of particular players at the selected time in the video. | ||
+ | |||
+ | Editing with the Replay tool is done in takes. Each 'take' is a selection of video defined by in and out points. The player can set the in and out points (or 'start' and 'end' points) with the buttons on either side of the Play button. The three viewing angle options (first-person, third-person and free camera) can be manipulated at any time to alter the position of the camera by selecting their respective icons in bottom-right corner. | ||
+ | |||
+ | The sequence of the video between the two points including the angles can be saved as a take by clicking the icon in the top-left corner and selecting 'Save'. | ||
+ | |||
+ | == Saving == | ||
+ | Whole replays or previously-edited takes can be rendered from replay files ({{code|.dem}}) into movie files. In the Replay menu, the player can select the 'Save to Movie' button to bring up the Save options dialog. The filename, resolution and video quality settings can be selected in the dialog, and filesize and time to render estimates are also provided based on the current settings. Checking the 'Show Advanced Options' box displays further options including video codec, render quality, motion blur quality, and an 'Enable Glow Effect' checkbox. | ||
+ | |||
+ | The save feature supports rendering of replay files with two codecs ([[w:H.264|H.264]] and [[w:MJPEG|MJPEG]]) with 5 preset resolutions (480p, 720p, 1080p, Web, and iPhone). Alternatively, the replay file can also be saved to raw files in the form of a {{code|.tga}} sequence and an accompanying {{code|.wav}} file. This method renders each frame in the video to an individual {{code|.tga}} file at maximum quality and renders the audio for the scene to a {{code|.wav}} file. The sequence and the audio file can then be encoded together using a video processing program such as [http://www.virtualdub.org/ VirtualDub] (see [[Help:Replay Editor]] for further detail). | ||
+ | |||
+ | Rendered movie files are saved to the {{code|/Steam/steamapps/common/Team Fortress 2/tf/replay/client/rendered}} directory. After rendering, the video can also be uploaded directly from inside the game. | ||
+ | |||
+ | Note that rendering and exporting replays requires [[w:QuickTime|QuickTime]] installed. | ||
+ | |||
+ | == Uploading == | ||
+ | [[File:Upload to YouTube.png|200px|thumb|The login prompt for YouTube]] | ||
+ | |||
+ | Replay movie files can be uploaded directly to [[YouTube]] from inside the game. Inside the Replay menu, selecting a rendered movie files appearing in the 'Saved Movies' list and pressing the 'YouTube It' button opens a YouTube login window and prompts the player to login. The player can then edit the video's title and description while it uploads. | ||
+ | |||
+ | Upon a player reaching 1,000 YouTube views, they are awarded the [[Frontline Field Recorder]]. | ||
+ | |||
+ | Uploading Replays to YouTube is currently not functional, making the Frontline Field Recorder '''impossible''' to obtain. | ||
+ | |||
+ | == Server command variables == | ||
+ | {{See also|Servers}} | ||
+ | {| width="100%" | ||
+ | |- | ||
+ | | width="50%" valign="top" | | ||
+ | ; {{code|replay_add_fake_replays}} | ||
+ | : Adds a set of fake replays. | ||
+ | |||
+ | ; {{code|replay_block_dump_interval}} | ||
+ | : default: 10 | ||
+ | : The server will write partial replay files at this interval when recording. | ||
+ | |||
+ | ; {{code|replay_buffersize}} | ||
+ | : default: 32 | ||
+ | : Maximum size for the replay memory buffer. | ||
+ | |||
+ | ; {{code|replay_cache_client_ragdolls}} | ||
+ | : default: 0 | ||
+ | : Record ragdolls on the client during. | ||
+ | |||
+ | ; {{code|replay_clearqueuedtakes}} | ||
+ | : Clears takes in the current queue. | ||
+ | |||
+ | ; {{code|replay_data_lifespan}} | ||
+ | : default: 1 | ||
+ | : The number of days before cleaning up replay demos. Modifying this number will not affect the lifespan of existing replays. | ||
+ | |||
+ | ; {{code|replay_deathcammaxverticaloffset}} | ||
+ | : default: 150 | ||
+ | : Vertical offset for player Deathcam. | ||
+ | |||
+ | ; {{code|replay_debug}} | ||
+ | : default: 0 | ||
+ | : Show replay debug info. | ||
+ | |||
+ | ; {{code|replay_deleteclientreplays}} | ||
+ | : Deletes all replays from client replay history, as well as all files associated with each replay. | ||
+ | |||
+ | ; {{code|replay_docleanup}} | ||
+ | : Deletes stale session data from the fileserver. "replay_docleanup force" will remove all replay session data. | ||
+ | |||
+ | ; {{code|replay_dofileserver_cleanup_on_start}} | ||
+ | : default: 1 | ||
+ | : Cleanup any stale replay data (both locally and on fileserver) at startup. | ||
+ | |||
+ | ; {{code|replay_dopublishtest}} | ||
+ | : Do a replay publish test using the current setup. | ||
+ | |||
+ | ; {{code|replay_editor_camera_length}} | ||
+ | : default: 15 | ||
+ | : Sets the length of the camera, which affects the editor's camera shake. Larger numbers result in greater camera shake. | ||
+ | |||
+ | ; {{code|replay_editor_fov_mousewheel_invert}} | ||
+ | : default: 0 | ||
+ | : Invert FOV zoom/unzoom on mousewheel in the Replay Editor. | ||
+ | |||
+ | ; {{code|replay_editor_fov_mousewheel_multiplier}} | ||
+ | : default: 5 | ||
+ | : The multiplier on mousewheel input for adjusting camera "FOV" in the Replay Editor. | ||
+ | |||
+ | ; {{code|replay_enable}} | ||
+ | : default: 0 | ||
+ | : Enable Replay recording on server. | ||
+ | |||
+ | ; {{code|replay_enableeventbasedscreenshots}} | ||
+ | : default: 0 | ||
+ | : If disabled, only take a screenshot when a replay is saved. If enabled, take up to replay_maxscreenshotsperreplay screenshots. | ||
+ | |||
+ | ; {{code|replay_enablerenderpreview}} | ||
+ | : default: 1 | ||
+ | : Enable preview during Replay render. | ||
+ | |||
+ | ; {{code|replay_fileserver_autocleanup}} | ||
+ | : default: 0 | ||
+ | : If enabled, replay_fileserver_docleanup will run automatically between rounds. | ||
+ | |||
+ | ; {{code|replay_fileserver_host}} | ||
+ | : default: 0 | ||
+ | : The hostname of the Web server hosting replays. This can be an IP or a hostname, e.g. "1.2.3.4" or "www.myserver.com". | ||
+ | |||
+ | ; {{code|replay_fileserver_offload_aborttime}} | ||
+ | : default: 60 | ||
+ | : In minutes, the number determines the time after which publishing will be aborted for a session block or session info file. | ||
+ | |||
+ | ; {{code|replay_fileserver_path}} | ||
+ | : default: 0 | ||
+ | : If your Replays are stored at {{code|<nowiki>http://123.123.123.123:4567/tf/replays</nowiki>}}, replay_fileserver_path should be set to {{code|/tf/replays}}. | ||
+ | |||
+ | ; {{code|replay_fileserver_port}} | ||
+ | : default: 80 | ||
+ | : The port for the Web server hosting replays. | ||
+ | |||
+ | ; {{code|replay_fileserver_protocol}} | ||
+ | : default: 0 | ||
+ | : Can be "http" or "https". | ||
+ | |||
+ | ; {{code|replay_flushinterval}} | ||
+ | : default: 15 | ||
+ | : Replay system will flush to disk a maximum of every replay_flushinterval seconds. | ||
+ | |||
+ | ; {{code|replay_forcereconstruct}} | ||
+ | : default: 0 | ||
+ | : Force the reconstruction of Replays each time. | ||
+ | |||
+ | ; {{code|replay_hidebrowser}} | ||
+ | : Hides Replay browser. | ||
+ | |||
+ | ; {{code|replay_ignorereplayticks}} | ||
+ | : default: 0 | ||
+ | : Ignores ticks in Replays. | ||
+ | |||
+ | ; {{code|replay_local_fileserver_path}} | ||
+ | : default: 0 | ||
+ | : The file server local path. For example, "c:\MyWebServer\htdocs\replays" or "/MyWebServer/htdocs/replays". | ||
+ | |||
+ | ; {{code|replay_max_publish_threads}} | ||
+ | : default: 4 | ||
+ | : The max number of threads allowed for publishing replay data, such as FTP threads. | ||
+ | |||
+ | ; {{code|replay_maxconcurrentdownloads}} | ||
+ | : default: 3 | ||
+ | : The maximum number of concurrent downloads allowed. | ||
+ | |||
+ | ; {{code|replay_maxscreenshotsperreplay}} | ||
+ | : default: 8 | ||
+ | : The maximum number of screenshots that can be taken for any given replay. | ||
+ | |||
+ | | width="50%" valign="top" | | ||
+ | ; {{code|replay_mintimebetweenscreenshots}} | ||
+ | : default: 5 | ||
+ | : The minimum time (in seconds) that must pass between screenshots being taken. | ||
+ | |||
+ | ; {{code|replay_msgduration_connectrecording}} | ||
+ | : default: 8 | ||
+ | : Duration for the message that pops up when you connect to a server already recording replays. | ||
+ | |||
+ | ; {{code|replay_msgduration_error}} | ||
+ | : default: 6 | ||
+ | : Duration of error message in Replay server. | ||
+ | |||
+ | ; {{code|replay_msgduration_misc}} | ||
+ | : default: 5 | ||
+ | : Duration for miscellaneous replays messages (server errors and such). | ||
+ | |||
+ | ; {{code|replay_msgduration_replaysavailable}} | ||
+ | : default: 6 | ||
+ | : Duration for replays available message. | ||
+ | |||
+ | ; {{code|replay_msgduration_startrecord}} | ||
+ | : default: 6 | ||
+ | : Duration for start record message. | ||
+ | |||
+ | ; {{code|replay_msgduration_stoprecord}} | ||
+ | : default: 6 | ||
+ | : Duration for stop record message. | ||
+ | |||
+ | ; {{code|replay_name}} | ||
+ | : default: 0 | ||
+ | : Replay bot name. | ||
+ | |||
+ | ; {{code|replay_playerdeathscreenshotdelay}} | ||
+ | : default: 2 | ||
+ | : Amount of time to wait after player is killed before taking a screenshot. | ||
+ | |||
+ | ; {{code|replay_postdeathrecordtime}} | ||
+ | : default: 5 | ||
+ | : The amount of time (seconds) to be recorded after you die for a given replay. | ||
+ | |||
+ | ; {{code|replay_postwinreminderduration}} | ||
+ | : default: 5 | ||
+ | : The number of seconds to show a replay reminder, post-win/lose. | ||
+ | |||
+ | ; {{code|replay_printclientreplays}} | ||
+ | : Prints out all client replay info. | ||
+ | |||
+ | ; {{code|replay_printqueuedtakes}} | ||
+ | : Prints info for takes currently in the queue. | ||
+ | |||
+ | ; {{code|replay_printsessioninfo}} | ||
+ | : Print session info. | ||
+ | |||
+ | ; {{code|replay_publish_simulate_delay_local_http}} | ||
+ | : default: 0 | ||
+ | : Simulates a delay (in seconds) when publishing replay data via local HTTP. | ||
+ | |||
+ | ; {{code|replay_publish_simulate_rename_fail}} | ||
+ | : default: 0 | ||
+ | : If enabled, simulates a rename failure during local HTTP publishing, which will force a manual copy & delete. | ||
+ | |||
+ | ; {{code|replay_quitmsg_dontaskagain}} | ||
+ | : default: 0 | ||
+ | : The replay system will ask you to render your replays on quit, unless this cvar is 1. | ||
+ | |||
+ | ; {{code|replay_ragdoll_dbg}} | ||
+ | : default: 0 | ||
+ | : Display replay ragdoll debugging information. | ||
+ | |||
+ | ; {{code|replay_record}} | ||
+ | : Starts Replay demo recording. | ||
+ | |||
+ | ; {{code|replay_record_voice}} | ||
+ | : default: 1 | ||
+ | : If enabled, voice data is recorded into the replay files. | ||
+ | |||
+ | ; {{code|replay_reloadbrowser}} | ||
+ | : Reloads Replay data and displays Replay browser. | ||
+ | |||
+ | ; {{code|replay_removeclientreplay}} | ||
+ | : Remove the Replay at the given index. | ||
+ | |||
+ | ; {{code|replay_renderpause}} | ||
+ | : Pause Replay rendering. | ||
+ | |||
+ | ; {{code|replay_rendersetting_encodingquality}} | ||
+ | : default: 100 | ||
+ | : Render quality: the higher the quality, the larger the resulting movie file size. | ||
+ | |||
+ | ; {{code|replay_rendersetting_exportraw}} | ||
+ | : default: 0 | ||
+ | : Export raw TGA frames as a .wav file instead of encoding it as a .mov file. | ||
+ | |||
+ | ; {{code|replay_rendersetting_motionblur_can_toggle}} | ||
+ | : default: 0 | ||
+ | : Allows motion blur to be toggled on or off in the Replay Editor. | ||
+ | |||
+ | ; {{code|replay_rendersetting_motionblurenabled}} | ||
+ | : default: 1 | ||
+ | : Motion blur enabled/disabled. | ||
+ | |||
+ | ; {{code|replay_rendersetting_motionblurquality}} | ||
+ | : default: 0 | ||
+ | : Motion blur quality. | ||
+ | |||
+ | ; {{code|replay_rendersetting_quitwhendone}} | ||
+ | : default: 0 | ||
+ | : Quit after rendering is completed. | ||
+ | |||
+ | ; {{code|replay_rendersetting_renderglow}} | ||
+ | : default: 0 | ||
+ | : Glow effect enabled/disabled. | ||
+ | |||
+ | ; {{code|replay_renderunpause}} | ||
+ | : Unpause Replay rendering. | ||
+ | |||
+ | ; {{code|replay_screenshotkilldelay}} | ||
+ | : default: 0 | ||
+ | : Delay before taking a screenshot when you kill someone, in seconds. | ||
+ | |||
+ | ; {{code|replay_screenshotresolution}} | ||
+ | : default: 0 | ||
+ | : 0 for low-res screenshots (width=512), 1 for hi-res (width=1024). | ||
+ | |||
+ | ; {{code|replay_screenshotsentrykilldelay}} | ||
+ | : default: 0 | ||
+ | : Delay before taking a screenshot when you kill someone, in seconds. | ||
+ | |||
+ | ; {{code|replay_sentrycammaxverticaloffset}} | ||
+ | : default: 10 | ||
+ | : Vertical offset from a Sentry on Sentry kill. | ||
+ | |||
+ | ; {{code|replay_sentrycamoffset_frontback}} | ||
+ | : default: -50 | ||
+ | : Front/back offset for sentry POV screenshot. | ||
+ | |||
+ | ; {{code|replay_sentrycamoffset_leftright}} | ||
+ | : default: -25 | ||
+ | : Left/right offset for sentry POV screenshot. | ||
+ | |||
+ | ; {{code|replay_sentrycamoffset_updown}} | ||
+ | : default: 22 | ||
+ | : Up/down offset for sentry POV screenshot. | ||
+ | |||
+ | ; {{code|replay_sessioninfo_updatefrequency}} | ||
+ | : default: 5 | ||
+ | : If a replay has not been downloaded, the Replay browser will update the status of a given replay on the server based on this "cv". | ||
+ | |||
+ | ; {{code|replay_stoprecord}} | ||
+ | : Stop Replay demo recording. | ||
+ | |||
+ | ; {{code|replay_test_take_save_dlg}} | ||
+ | : Open Replay save take dlg. | ||
+ | |||
+ | ; {{code|replay_voice_during_playback}} | ||
+ | : default: 0 | ||
+ | : Play player voice chat during replay playback. | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | == Related achievements == | ||
+ | === {{Achiev type link|replay}} === | ||
+ | {{Replay achievement list}} | ||
== Update history == | == Update history == | ||
− | ''' | + | {{Update history| |
− | *Added Replay system that allows you to edit and publish movies of your play experiences (full Mac support in the next few days) | + | '''{{Patch name|3|9|2011|beta}}''' |
− | ''' | + | * Added Replay system that allows you to edit and publish movies of your play experiences (full Mac support in the next few days) |
+ | |||
+ | '''{{Patch name|3|10|2011|beta}}''' | ||
* Show all resolutions available when setting up a replay to render | * Show all resolutions available when setting up a replay to render | ||
− | * Added the ability to specify an output directory from the [[command line]]. Running a [[server]] with the optional parameter ‘–replayserverdir <dir name>’ will output all replay data to ‘tf/replay/<dir name>’. For anyone running multiple servers out of the same directory, you’ll want to specify a different output directory for each server. This will avoid collisions and potential issues running replay. Look for confirmation on startup – you should see something like this: | + | * Added the ability to specify an output directory from the [[Launch options|command line]]. Running a [[Servers|server]] with the optional parameter ‘–replayserverdir <dir name>’ will output all replay data to ‘tf/replay/<dir name>’. For anyone running multiple servers out of the same directory, you’ll want to specify a different output directory for each server. This will avoid collisions and potential issues running replay. Look for confirmation on startup – you should see something like this: |
** Using custom replay dir name: "replay/<dir name>" | ** Using custom replay dir name: "replay/<dir name>" | ||
* For admins who have their server(s) configured to server replay data out of a local Web server: the ‘replay_local_fileserver_path’ bug is now fixed. Even if replay_local_fileserver_path pointed to a valid directory, the server would lie and say the directory was invalid. | * For admins who have their server(s) configured to server replay data out of a local Web server: the ‘replay_local_fileserver_path’ bug is now fixed. Even if replay_local_fileserver_path pointed to a valid directory, the server would lie and say the directory was invalid. | ||
− | ''' | + | |
+ | '''{{Patch name|3|11|2011|beta}}''' | ||
* Fixed ‘save all’ crash in replay browser | * Fixed ‘save all’ crash in replay browser | ||
* Fixed ‘save movies now, then quit’ crash | * Fixed ‘save movies now, then quit’ crash | ||
− | ''' | + | |
+ | '''{{Patch name|3|18|2011|beta}}''' | ||
* Movies upload to YouTube now contain a ‘match’ tag, which includes a unique ID for the round during which the replay was saved | * Movies upload to YouTube now contain a ‘match’ tag, which includes a unique ID for the round during which the replay was saved | ||
* Added check-box on the advanced settings dialog to enable/disable the glow effect while rendering replays (default is disabled) | * Added check-box on the advanced settings dialog to enable/disable the glow effect while rendering replays (default is disabled) | ||
* Bug and crash fixes | * Bug and crash fixes | ||
− | ''' | + | |
− | *Added "replay_printsessioninfo <full path>" command for server admins to monitor session files, aid in debugging problems | + | '''{{Patch name|3|21|2011|beta}}''' |
− | ''' | + | * Added "replay_printsessioninfo <full path>" command for server admins to monitor session files, aid in debugging problems |
+ | |||
+ | '''{{Patch name|3|23|2011|beta}}''' | ||
* [[UI]] now saves the "last directory" used for exporting a movie | * [[UI]] now saves the "last directory" used for exporting a movie | ||
* Added a specific error message when trying to upload a movie to YouTube that cannot be found | * Added a specific error message when trying to upload a movie to YouTube that cannot be found | ||
* Fixed a bug where replay recording would stop after [[Dead Ringer|feigning death]] | * Fixed a bug where replay recording would stop after [[Dead Ringer|feigning death]] | ||
− | ''' | + | |
+ | '''{{Patch name|3|24|2011|beta}}''' | ||
* Fixed audio and video sync issues | * Fixed audio and video sync issues | ||
* Fixed a crash when replay filenames exceeded a certain length | * Fixed a crash when replay filenames exceeded a certain length | ||
* Fixed start-up issues related to library files | * Fixed start-up issues related to library files | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==External links== | + | '''{{Patch name|4|26|2011|beta}}''' |
− | *[https://support.steampowered.com/kb_article.php?ref=1461-WPLC-4202 | + | * Fixed audio sync issues on the Mac |
+ | |||
+ | '''{{Patch name|5|5|2011}}''' ([[Replay Update]]) | ||
+ | * Added the Replay feature: http://www.teamfortress.com/replayupdate | ||
+ | ** Known issue with Mac replay rendering being blurry will be fixed in the next update | ||
+ | * Added 8 new Replay achievements and 2 achievement items | ||
+ | |||
+ | '''{{Patch name|5|6|2011}}''' | ||
+ | * Fixed a bug that caused Mac replay renders to be blurry | ||
+ | |||
+ | '''{{Patch name|5|9|2011}}''' | ||
+ | * Replay publishing system will try to do a rename for local HTTP mode but will manually copy and delete the file if the rename fails, which can happen if the source and destination are on different volumes. | ||
+ | * Fixed replay data cleanup system, which cleans up stale data at the end of each round. This asynchronous operation can be explicitly invoked by executing a replay_docleanup command on the server. | ||
+ | * Removed unused convar, {{code|replay_cleanup_time}}. | ||
+ | |||
+ | '''{{Patch name|5|10|2011}}''' | ||
+ | * Fixed a server lockup during data cleanup | ||
+ | * Fixed a viewmodel fov bug during rendering | ||
+ | * Renamed the ConVar {{code|replay_demolifespan}} to {{code|replay_data_lifespan}} | ||
+ | |||
+ | '''{{Patch name|5|12|2011}}''' | ||
+ | * Added a new command line parameter {{code|-replay}} that will increase maxplayers by 1 at startup and automatically execute replay.cfg for the server | ||
+ | * Fixed another bug that caused Mac replay renders to be blurry | ||
+ | * Fixed a bug where Replay FTP offloading was not using {{code|replay_fileserver_offload_port}} | ||
+ | * Improved detection of Replay server config problems | ||
+ | * Replay is automatically disabled on servers if the Replay publish test fails | ||
+ | * Saved Replay movies that were exported as TGA's/WAV will report more descriptive errors if YouTube(TM) upload or "Export" is attempted | ||
+ | |||
+ | '''{{Patch name|5|18|2011}}''' | ||
+ | * Fixed server crashes related to replays and new items | ||
+ | |||
+ | '''{{Patch name|5|19|2011}}''' | ||
+ | * Fixed the third-person camera options dialog not displaying correctly in the Replay performance editor. | ||
+ | |||
+ | '''{{Patch name|5|25|2011}}''' | ||
+ | * Fixed a few server crashes caused by the replay system. | ||
+ | |||
+ | '''{{Patch name|6|15|2011}}''' | ||
+ | *Fixed some server replay publishing bugs | ||
+ | *Added a new ConVar {{code|replay_fileserver_offload_aborttime}} | ||
+ | |||
+ | '''{{Patch name|6|17|2011}}''' | ||
+ | * Fixed a servercrash caused by the replay system. | ||
+ | |||
+ | '''{{Patch name|7|22|2011}}''' | ||
+ | * Fixed a Linux dedicated server crash caused by the Replay director | ||
+ | ** Crash would happen whether the server was capturing Replays or not | ||
+ | |||
+ | '''{{Patch name|7|26|2011}}''' | ||
+ | * Client | ||
+ | ** Added basic/rough render queue for internal use to increase replay output for relaunch trailer | ||
+ | ** Block files are now deleted on replay reconstruction (i.e. viewing), to conserve disk space | ||
+ | ** Unneeded block files are now cleaned up automatically on startup | ||
+ | * Server | ||
+ | ** Fixed fileserver cleanup | ||
+ | ** Any time replay_fileserver_offload_hostname is modified, the corresponding IP is resolved and cached, if possible. This fixes a crash, as well as failed publishing due to "unresolved hostname" errors. | ||
+ | ** Added a fileserver IP lookup test to replay publish test | ||
+ | ** Setting replay_enable to 0 now halts recording and does cleanup automatically, the way replay_stoprecord does. This fixes a crash that would occur when replay_enable was set to 0 and a changelevel was executed. | ||
+ | * Replay temp directories automatically cleared on startup on both client and server | ||
+ | * Memory management improvements | ||
+ | |||
+ | '''{{Patch name|7|27|2011}}''' | ||
+ | * Fixed a couple of replay issues | ||
+ | |||
+ | '''{{Patch name|7|29|2011}}''' | ||
+ | * Fixed Mac-only replay editor crash. | ||
+ | |||
+ | '''{{Patch name|8|2|2011}}''' | ||
+ | * Fix a bug where the increased_maxplayers server tag was being set when the 25th internal player slot was added for replay. | ||
+ | |||
+ | '''{{Patch name|8|18|2011}}''' | ||
+ | * Fixed a replay render bug where .wav files did not get written for raw TGA/WAV export | ||
+ | |||
+ | '''{{Patch name|10|13|2011}}''' ([[Manniversary Update & Sale]]) | ||
+ | * New dramatic editing tools were added to help players make replays more dramatic. | ||
+ | |||
+ | '''{{Patch name|10|17|2011}}''' | ||
+ | * Fixed a server crash that occurred when running both SourceTV and Replay. | ||
+ | |||
+ | '''{{Patch name|11|7|2011}}''' | ||
+ | * Fixed a client crash in the replay editor | ||
+ | |||
+ | '''{{patch name|1|26|2012}}''' | ||
+ | * Fixed a demo/replay playback crash | ||
+ | |||
+ | '''{{patch name|1|27|2012}}''' | ||
+ | * Fixed a bug with the Replay icon in the [[Server Browser|server browser]] | ||
+ | |||
+ | '''{{Patch name|2|23|2012}}''' | ||
+ | * Fixed dedicated server console spew related to the Replay client and viewangles | ||
+ | * Fixed some instances of corrupted text when the save_replay key isn't bound | ||
+ | |||
+ | '''{{Patch name|3|28|2012}}''' | ||
+ | * Updated YouTube replay publishing functionality to automatically include a link to the uploader's Steam Community profile | ||
+ | |||
+ | '''{{Patch name|7|23|2012}}''' | ||
+ | * Fixed Replay/SourceTV clients getting kicked when quickplay servers hibernate | ||
+ | |||
+ | '''{{Patch name|9|4|2012}}''' | ||
+ | * Added replay_name ConVar to set the name of the replay bot | ||
+ | |||
+ | '''{{Patch name|10|17|2012}}''' | ||
+ | * Fixed a common "FindModel" crash for replays | ||
+ | |||
+ | '''{{Patch name|11|29|2012}}''' | ||
+ | * Fixed seeing an error model when watching replays with missing models | ||
+ | |||
+ | '''{{Patch name|2|1|2013}}''' | ||
+ | * Fixed uploading replays to YouTube™ on Linux | ||
+ | |||
+ | '''{{Patch name|5|20|2013}}''' | ||
+ | * Removed replay.cfg from depot and added replay_example.cfg to avoid clobbering user's replay.cfg | ||
+ | |||
+ | '''{{Patch name|10|29|2013}}''' | ||
+ | * Fixed the camera target not always being visible when using the replay editor | ||
+ | |||
+ | '''{{Patch name|10|15|2015}}''' | ||
+ | * Fixed a security issue related to the replay system (thanks to Nathaniel Theis and Zemnmez for this report) | ||
+ | }} | ||
+ | |||
+ | == Bugs == | ||
+ | * Saving a replay movie with the TGA/WAV option only saves the .tga image sequence. The audio stream does not save as the game appears to have problems creating the .wav file: | ||
+ | <pre> | ||
+ | WaveFixupTmpFile( '.mytempwave.WAV' ) failed to open file for editing | ||
+ | Unable to rename d:\games\Steam\steamapps\common\Team Fortress 2\tf\.mytempwave.wav to d:\games\Steam\steamapps\common\Team Fortress 2\tf\replay\client\rendered\movie_path\audio.wav! | ||
+ | </pre> | ||
+ | ** It is possible to work around this bug by manually saving an empty .wav file (signed 16 bit, stereo, 44100kHz) named {{code|".mytempwave.wav"}} to the user {{code|/Steam/steamapps/common/Team Fortress 2/tf}} location with a WAV file editor. The workaround needs to be performed each time a movie needs to be saved. | ||
+ | * Some viewmodels may appear incorrect or not appear at all in first-person mode. Some particle effects may also not be rendered. | ||
+ | * Replays which take place in maps with more than one light source may appear overlit if the last map played has uniform lighting. | ||
+ | * Upon creating, editing, and watching a Replay and then joining a match, no in-game text chat or voice commands are displayed until the player opens the text chat box. | ||
+ | * The Administrator's [[Administrator responses|responses]] in a Replay treat RED as the ally and BLU as the enemy, regardless of the Replay owner's team. | ||
+ | * Ragdolls in a Replay may fall or move differently each time the Replay is viewed and/or edited. | ||
+ | * The replay can be uploaded to a YouTube account before the account has an upload channel configured. After the upload finishes, a message indicating a connection problem is displayed. | ||
+ | * Kills made by [[Sentry Gun]]s belonging to the Replay's owner are not counted on its statistics. | ||
+ | * Occasionally, if the owner of the Replay uses a Dead Ringer during its length, the Replay ends when their feign death activates. | ||
+ | * Sometimes, slowing down or speeding up time and changing the view to first person, then changing the time again, the speed stays the same as if the time was not changed. Changing the view to third person or freecam usually fixes the problem. | ||
+ | * Critical hit sound cues are not played in Replays. | ||
+ | * If a replay starts while a [[Heavy]] has his [[Minigun]] spun up, he appears to not have it spun up even though it still fires albeit with a glitchy sound. | ||
+ | * When using slow motion, the backstabbing action is out of time and the victim dies and with a delay the knife action is played. | ||
+ | * Recording in Pyrovision and then watching a replay in Pyrovision can reverse bodies and point them in the opposite direction, with their weapon firing the way it did on recording. | ||
+ | * Switching from third person view to first in the Replay edit tool can make the active weapon disappear for a second and then appear. | ||
+ | * Occasionally, decals ([[Conscientious Objector]], [[Photo Badge]], [[Sprays]], etc.) and paints do not appear in replays. | ||
+ | * Since YouTube's API is no longer updated in ''Team Fortress 2'', users can no longer log in to upload a replay to YouTube. | ||
+ | * The replay system does not work on Workshop maps due to how Workshop maps are named. | ||
+ | |||
+ | == See also == | ||
+ | * [[Help:Replay Editor|Replay Editor]] | ||
+ | |||
+ | == External links == | ||
+ | * [https://support.steampowered.com/kb_article.php?ref=1461-WPLC-4202 How do I create a Team Fortress 2 replay?] – Steam Support | ||
+ | |||
+ | {{Replay Update Nav}} |
Latest revision as of 10:28, 14 October 2024
“ | There was you, very full of yourself. Then, very briefly surprised. Then, dead.
Click to listen
— The Sniper showing a Replay to his latest victim
|
” |
The Replay tool is a feature introduced in the Replay Update. The Replay tool enables players to record video footage of gameplay in Team Fortress 2 and edit it directly from the game client. The feature was initially added to Team Fortress 2 Beta on March 9, 2011, but was added to the full game on May 5 as the main focus of the Replay Update.
On servers that enable the feature, video replays of a player's life are recorded and saved directly onto the server. After a player dies, they can choose to download these recordings for editing within the game. The editing features enable scenes to be cut from different angles and include a variety of options including field of view and motion blur. After editing, the Replay tool allows for cut videos to be uploaded directly to YouTube.
With the introduction of the Replay tool and the Replay Update, the First Annual Saxxy Awards were announced as a contest to encourage players to create and upload videos recorded with the tool, as well as eight Replay achievements which have been added to the game.
Contents
Recording
To record replays, the player must connect to a server that has enabled the feature. A server that supports video replays can be identified by the filmstrip icon () next to the server's name in the browser list. Note that replays cannot be recorded on listen servers, i.e. local servers created through the 'Create Server' option in the main menu.
After the player has died, the recording can be downloaded by pressing F6 (default) or using the console command save_replay
. A dialog window appears to confirm the name of the video (by default, it contains the map name, the date and time of the recording) and once confirmed, the recording begins to download directly from the server. After the download has completed, a notification pops up to inform the player and from there, the player can access the recording from the 'Replays' screen accessed from the main menu.
The Replay menu can be accessed from the button in the main menu. The screen shows all saved replays and movies. Each replay is accompanied by statistics related to that particular life, such as the class played, the player's score and kill count, and the map featured in the video. Replays can also be filtered via the search function in the menu.
Individual replays can be viewed and edited by clicking on the 'Watch / Edit' button. This loads the replay file and enables the Replay tool's editing functions for use. From the menu, the player can also save a selected replay to a movie file (for encoding options in greater detail, see Help:Replay Editor).
Replays can be deleted at any time by the player. Replays, before being encoded into movie files, exist in the Source Engine demo format (with the file extension .dem
) under the directory /Steam/steamapps/common/Team Fortress 2/tf/replay/client/replays
. The main limitation of replays in this format is that they are likely to become unreadable in the event of a game update. As such, before exiting the game the player is warned by a dialog message to save existing replays as movie files instead. However, once saved as a movie file, the clip cannot be edited unless using external software.
Editing
The Replay tool's editing functions can be accessed by opening the replay and pressing Space (default). The editing HUD contains play, pause, rewind, and fast-forward functions and the first-person, third-person, and free camera viewing angle options. Class icons in the bottom-left corner also allow for quick identification of the whereabouts of particular players at the selected time in the video.
Editing with the Replay tool is done in takes. Each 'take' is a selection of video defined by in and out points. The player can set the in and out points (or 'start' and 'end' points) with the buttons on either side of the Play button. The three viewing angle options (first-person, third-person and free camera) can be manipulated at any time to alter the position of the camera by selecting their respective icons in bottom-right corner.
The sequence of the video between the two points including the angles can be saved as a take by clicking the icon in the top-left corner and selecting 'Save'.
Saving
Whole replays or previously-edited takes can be rendered from replay files (.dem
) into movie files. In the Replay menu, the player can select the 'Save to Movie' button to bring up the Save options dialog. The filename, resolution and video quality settings can be selected in the dialog, and filesize and time to render estimates are also provided based on the current settings. Checking the 'Show Advanced Options' box displays further options including video codec, render quality, motion blur quality, and an 'Enable Glow Effect' checkbox.
The save feature supports rendering of replay files with two codecs (H.264 and MJPEG) with 5 preset resolutions (480p, 720p, 1080p, Web, and iPhone). Alternatively, the replay file can also be saved to raw files in the form of a .tga
sequence and an accompanying .wav
file. This method renders each frame in the video to an individual .tga
file at maximum quality and renders the audio for the scene to a .wav
file. The sequence and the audio file can then be encoded together using a video processing program such as VirtualDub (see Help:Replay Editor for further detail).
Rendered movie files are saved to the /Steam/steamapps/common/Team Fortress 2/tf/replay/client/rendered
directory. After rendering, the video can also be uploaded directly from inside the game.
Note that rendering and exporting replays requires QuickTime installed.
Uploading
Replay movie files can be uploaded directly to YouTube from inside the game. Inside the Replay menu, selecting a rendered movie files appearing in the 'Saved Movies' list and pressing the 'YouTube It' button opens a YouTube login window and prompts the player to login. The player can then edit the video's title and description while it uploads.
Upon a player reaching 1,000 YouTube views, they are awarded the Frontline Field Recorder.
Uploading Replays to YouTube is currently not functional, making the Frontline Field Recorder impossible to obtain.
Server command variables
|
|
Related achievements
Replay achievements
|
|
Update history
- Added Replay system that allows you to edit and publish movies of your play experiences (full Mac support in the next few days)
- Show all resolutions available when setting up a replay to render
- Added the ability to specify an output directory from the command line. Running a server with the optional parameter ‘–replayserverdir <dir name>’ will output all replay data to ‘tf/replay/<dir name>’. For anyone running multiple servers out of the same directory, you’ll want to specify a different output directory for each server. This will avoid collisions and potential issues running replay. Look for confirmation on startup – you should see something like this:
- Using custom replay dir name: "replay/<dir name>"
- For admins who have their server(s) configured to server replay data out of a local Web server: the ‘replay_local_fileserver_path’ bug is now fixed. Even if replay_local_fileserver_path pointed to a valid directory, the server would lie and say the directory was invalid.
- Fixed ‘save all’ crash in replay browser
- Fixed ‘save movies now, then quit’ crash
- Movies upload to YouTube now contain a ‘match’ tag, which includes a unique ID for the round during which the replay was saved
- Added check-box on the advanced settings dialog to enable/disable the glow effect while rendering replays (default is disabled)
- Bug and crash fixes
- Added "replay_printsessioninfo <full path>" command for server admins to monitor session files, aid in debugging problems
- UI now saves the "last directory" used for exporting a movie
- Added a specific error message when trying to upload a movie to YouTube that cannot be found
- Fixed a bug where replay recording would stop after feigning death
- Fixed audio and video sync issues
- Fixed a crash when replay filenames exceeded a certain length
- Fixed start-up issues related to library files
- Fixed audio sync issues on the Mac
May 5, 2011 Patch (Replay Update)
- Added the Replay feature: http://www.teamfortress.com/replayupdate
- Known issue with Mac replay rendering being blurry will be fixed in the next update
- Added 8 new Replay achievements and 2 achievement items
- Fixed a bug that caused Mac replay renders to be blurry
- Replay publishing system will try to do a rename for local HTTP mode but will manually copy and delete the file if the rename fails, which can happen if the source and destination are on different volumes.
- Fixed replay data cleanup system, which cleans up stale data at the end of each round. This asynchronous operation can be explicitly invoked by executing a replay_docleanup command on the server.
- Removed unused convar,
replay_cleanup_time
.
- Fixed a server lockup during data cleanup
- Fixed a viewmodel fov bug during rendering
- Renamed the ConVar
replay_demolifespan
toreplay_data_lifespan
- Added a new command line parameter
-replay
that will increase maxplayers by 1 at startup and automatically execute replay.cfg for the server - Fixed another bug that caused Mac replay renders to be blurry
- Fixed a bug where Replay FTP offloading was not using
replay_fileserver_offload_port
- Improved detection of Replay server config problems
- Replay is automatically disabled on servers if the Replay publish test fails
- Saved Replay movies that were exported as TGA's/WAV will report more descriptive errors if YouTube(TM) upload or "Export" is attempted
- Fixed server crashes related to replays and new items
- Fixed the third-person camera options dialog not displaying correctly in the Replay performance editor.
- Fixed a few server crashes caused by the replay system.
- Fixed some server replay publishing bugs
- Added a new ConVar
replay_fileserver_offload_aborttime
- Fixed a servercrash caused by the replay system.
- Fixed a Linux dedicated server crash caused by the Replay director
- Crash would happen whether the server was capturing Replays or not
- Client
- Added basic/rough render queue for internal use to increase replay output for relaunch trailer
- Block files are now deleted on replay reconstruction (i.e. viewing), to conserve disk space
- Unneeded block files are now cleaned up automatically on startup
- Server
- Fixed fileserver cleanup
- Any time replay_fileserver_offload_hostname is modified, the corresponding IP is resolved and cached, if possible. This fixes a crash, as well as failed publishing due to "unresolved hostname" errors.
- Added a fileserver IP lookup test to replay publish test
- Setting replay_enable to 0 now halts recording and does cleanup automatically, the way replay_stoprecord does. This fixes a crash that would occur when replay_enable was set to 0 and a changelevel was executed.
- Replay temp directories automatically cleared on startup on both client and server
- Memory management improvements
- Fixed a couple of replay issues
- Fixed Mac-only replay editor crash.
- Fix a bug where the increased_maxplayers server tag was being set when the 25th internal player slot was added for replay.
- Fixed a replay render bug where .wav files did not get written for raw TGA/WAV export
October 13, 2011 Patch (Manniversary Update & Sale)
- New dramatic editing tools were added to help players make replays more dramatic.
- Fixed a server crash that occurred when running both SourceTV and Replay.
- Fixed a client crash in the replay editor
- Fixed a demo/replay playback crash
- Fixed a bug with the Replay icon in the server browser
- Fixed dedicated server console spew related to the Replay client and viewangles
- Fixed some instances of corrupted text when the save_replay key isn't bound
- Updated YouTube replay publishing functionality to automatically include a link to the uploader's Steam Community profile
- Fixed Replay/SourceTV clients getting kicked when quickplay servers hibernate
- Added replay_name ConVar to set the name of the replay bot
- Fixed a common "FindModel" crash for replays
- Fixed seeing an error model when watching replays with missing models
- Fixed uploading replays to YouTube™ on Linux
- Removed replay.cfg from depot and added replay_example.cfg to avoid clobbering user's replay.cfg
- Fixed the camera target not always being visible when using the replay editor
- Fixed a security issue related to the replay system (thanks to Nathaniel Theis and Zemnmez for this report)
Bugs
- Saving a replay movie with the TGA/WAV option only saves the .tga image sequence. The audio stream does not save as the game appears to have problems creating the .wav file:
WaveFixupTmpFile( '.mytempwave.WAV' ) failed to open file for editing Unable to rename d:\games\Steam\steamapps\common\Team Fortress 2\tf\.mytempwave.wav to d:\games\Steam\steamapps\common\Team Fortress 2\tf\replay\client\rendered\movie_path\audio.wav!
- It is possible to work around this bug by manually saving an empty .wav file (signed 16 bit, stereo, 44100kHz) named
".mytempwave.wav"
to the user/Steam/steamapps/common/Team Fortress 2/tf
location with a WAV file editor. The workaround needs to be performed each time a movie needs to be saved.
- It is possible to work around this bug by manually saving an empty .wav file (signed 16 bit, stereo, 44100kHz) named
- Some viewmodels may appear incorrect or not appear at all in first-person mode. Some particle effects may also not be rendered.
- Replays which take place in maps with more than one light source may appear overlit if the last map played has uniform lighting.
- Upon creating, editing, and watching a Replay and then joining a match, no in-game text chat or voice commands are displayed until the player opens the text chat box.
- The Administrator's responses in a Replay treat RED as the ally and BLU as the enemy, regardless of the Replay owner's team.
- Ragdolls in a Replay may fall or move differently each time the Replay is viewed and/or edited.
- The replay can be uploaded to a YouTube account before the account has an upload channel configured. After the upload finishes, a message indicating a connection problem is displayed.
- Kills made by Sentry Guns belonging to the Replay's owner are not counted on its statistics.
- Occasionally, if the owner of the Replay uses a Dead Ringer during its length, the Replay ends when their feign death activates.
- Sometimes, slowing down or speeding up time and changing the view to first person, then changing the time again, the speed stays the same as if the time was not changed. Changing the view to third person or freecam usually fixes the problem.
- Critical hit sound cues are not played in Replays.
- If a replay starts while a Heavy has his Minigun spun up, he appears to not have it spun up even though it still fires albeit with a glitchy sound.
- When using slow motion, the backstabbing action is out of time and the victim dies and with a delay the knife action is played.
- Recording in Pyrovision and then watching a replay in Pyrovision can reverse bodies and point them in the opposite direction, with their weapon firing the way it did on recording.
- Switching from third person view to first in the Replay edit tool can make the active weapon disappear for a second and then appear.
- Occasionally, decals (Conscientious Objector, Photo Badge, Sprays, etc.) and paints do not appear in replays.
- Since YouTube's API is no longer updated in Team Fortress 2, users can no longer log in to upload a replay to YouTube.
- The replay system does not work on Workshop maps due to how Workshop maps are named.
See also
External links
- How do I create a Team Fortress 2 replay? – Steam Support
|