回放系统

From Team Fortress Wiki
Jump to: navigation, search
关于回放工具的帮助指南,请见:回放编辑器
这就是你,狂妄自大。然后呢,被吓了一跳。再然后呢,嗝屁了。
狙击手正在向他手下败将展示回放
菜单中的回放板块

回放系统(Replay)工具是游戏于回放更新中引入的一项功能。回放工具可以让玩家在《军团要塞2》中将游戏过程录制为视频片段,以及可以直接在游戏客户端中对视频进行编辑。该功能最早初是在2011年3月9日《军团要塞2测试版》中添加的,但它在5月5日被作为回放更新的一大重点添加到完整的游戏中。

在启用该功能的服务器上,玩家存活时期的视频回放将会被录制并直接保存到服务器上。在玩家死亡后,他们可以选择下载这些视频,以便在游戏中进行编辑。编辑功能可以让玩家从不同的角度剪切场景,同时还包含有各种编辑选项,以及视角和动态模糊。编辑完成后,回放工具还能将剪辑后的视频直接上传至YouTube

随着回放工具和回放更新的引入,官方公布了一项名为第一届萨氏年度金像奖的比赛,以鼓励玩家创建和上传使用该工具进行录制的视频,并在游戏中添加了 8 个回放成就

录制

middle回放下载完成时HUD上显示的通知
录制可用时HUD上显示的通知

如要录制回放,必须得连接至已启用该功能的服务器。玩家可以通过浏览列表中服务器名称旁边是否有幻灯片图标(Icon replay.png)来判断该服务器是否支持视频回放。请注意,在监听服务器上是无法录制回放的,即通过主菜单中的“创建服务器”选项所创建的本地服务器。

在玩家死亡后,可以通过按下 F6(默认)或使用控制台指令 save_replay 来下载已录制的视频。下载时会弹出一个对话框,让玩家确认视频的名称(默认情况下,视频会自动在标题填上地图名称、录制的日期和时间等信息),一旦确认,录制将开始直接从服务器上下载。下载完成后,游戏会再次弹出一个对话框通知玩家,玩家可以在主菜单进入“回放”界面来访问已录制的内容。

回放菜单

回放菜单可通过主菜单中的“回放”按钮进行访问。菜单上会显示出所有已保存的回放片段和影片。每一段回放都会附带与玩家生存期间相关的统计数据,比如玩家使用过的兵种,玩家的得分和杀敌数,以及正在游玩的地图。还可以通过菜单中的搜索功能来筛选回放片段。

点击“观看/编辑”按钮可以查看和编辑单独的一段回放。点击后加载回放文件并启用回放工具的编辑功能以让玩家进行操作。玩家还可以将选中的回放保存到影片文件中(有关编码选项的更多详细信息,请参阅回放编辑器)。

玩家可以随时删除回放。回放片段在被编码成影片文件之前,它会以起源引擎demo格式(文件扩展名为.dem)存在于目录/Steam/steamapps/common/Team Fortress 2/tf/replay/client/replays下。这种格式的回放的主要限制是在游戏更新的情况下它们可能变得不可读。因此,在退出游戏之前,玩家会收到一个对话框警告,要求将现有的回放保存为影片文件。但是,一旦将剪辑另存为影片文件,除非使用其他外部软件,否则将不能再对其进行编辑。


编辑

回放编辑器界面
关于进一步的编辑帮助,请参阅回放编辑器中的指南。

回放工具的编辑功能可以通过打开回放并按下空格键(默认)来访问。编辑面板包含有播放、暂停、快退和快进功能,以及第一人称、第三人称和自由相机视角的选项。左下角的兵种图标还可以快捷地显示出特定玩家在视频所处时间点时的个人情况。

回放工具的编辑都是由各个“镜头”组成的。每个“拍摄”都是由切入点和切入点所确立的视频选段。玩家可以通过“播放”按钮两边的按钮设置切入点和切出点(或“开始”和“结束”点)。三种视角选项(第一人称、第三人称和自由视角)可以随时切换操作,通过选择右下角的图标来改变摄像头的位置。

通过点击左上角的图标并选择保存,可以将两点之间的视频序列(包括角度)保存为“镜头”。

保存

整一段回放或是先前已完成编辑的“镜头”都可以从回放文件(.dem)渲染为影片文件。在回放菜单中,玩家可以选择“保存为影片”按钮来调出“保存选项”对话框。玩家可以在对话框中选择文件名、分辨率和视频质量设置,还可以获取根据当前设置所预计的文件大小和渲染时间。点击“显示进阶选项”可以查看更多的选项,包括视频编解码器、渲染质量、动态模糊质量和“启用光圈效果”复选框。

保存功能支持使用 5 种预设分辨率(480p、720p、1080p、Web 和 iPhone)和 2 种编解码器(H.264MJPEG)来对回放文件进行渲染。或者,回放文件也可以使用.tga序列和附带的.wav文件的形式保存为原始文件。此方法会以最高的质量将视频中的每一帧渲染到单个.tga文件中,并将场景的音频渲染到.wav文件中。之后,序列和音频文件可使用视频处理程序(如VirtualDub)一起编码(有关更多详细信息,请参阅回放编辑器)。

已渲染的影片文件将会保存在/Steam/steamapps/common/Team Fortress 2/tf/replay/client/rendered目录中。渲染完成后,玩家也可以直接从游戏内部将视频上传到网站上。

上传

YouTube的登录提示

回放影片文件可以直接从游戏内部上传到 YouTube。在“回放”菜单中,在“已保存的影片”列表中选择一个已渲染的影片文件,然后按下“上传到YouTube”按钮,就会打开一个YouTube登录窗口,并提示玩家登录。登录后,玩家可以在上传视频的同时编辑视频的标题和简介。

当玩家的影片在YouTube上的点击量达到1000时,就会获得一个前线战地摄影头盔以作奖励。

目前,上传到YouTube已失效,因此无法再获得前线战地摄影头盔。

服务器指令变量

另见: 服务器
replay_add_fake_replays
Adds a set of fake replays.
replay_block_dump_interval
default: 10
The server will write partial replay files at this interval when recording.
replay_buffersize
default: 32
Maximum size for the replay memory buffer.
replay_cache_client_ragdolls
default: 0
Record ragdolls on the client during.
replay_clearqueuedtakes
Clears takes in the current queue.
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.
replay_deathcammaxverticaloffset
default: 150
Vertical offset for player Deathcam.
replay_debug
default: 0
Show replay debug info.
replay_deleteclientreplays
Deletes all replays from client replay history, as well as all files associated with each replay.
replay_docleanup
Deletes stale session data from the fileserver. "replay_docleanup force" will remove all replay session data.
replay_dofileserver_cleanup_on_start
default: 1
Cleanup any stale replay data (both locally and on fileserver) at startup.
replay_dopublishtest
Do a replay publish test using the current setup.
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.
replay_editor_fov_mousewheel_invert
default: 0
Invert FOV zoom/unzoom on mousewheel in the Replay Editor.
replay_editor_fov_mousewheel_multiplier
default: 5
The multiplier on mousewheel input for adjusting camera "FOV" in the Replay Editor.
replay_enable
default: 0
Enable Replay recording on server.
replay_enableeventbasedscreenshots
default: 0
If disabled, only take a screenshot when a replay is saved. If enabled, take up to replay_maxscreenshotsperreplay screenshots.
replay_enablerenderpreview
default: 1
Enable preview during Replay render.
replay_fileserver_autocleanup
default: 0
If enabled, replay_fileserver_docleanup will run automatically between rounds.
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".
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.
replay_fileserver_path
default: 0
If your Replays are stored at http://123.123.123.123:4567/tf/replays, replay_fileserver_path should be set to /tf/replays.
replay_fileserver_port
default: 80
The port for the Web server hosting replays.
replay_fileserver_protocol
default: 0
Can be "http" or "https".
replay_flushinterval
default: 15
Replay system will flush to disk a maximum of every replay_flushinterval seconds.
replay_forcereconstruct
default: 0
Force the reconstruction of Replays each time.
replay_hidebrowser
Hides Replay browser.
replay_ignorereplayticks
default: 0
Ignores ticks in Replays.
replay_local_fileserver_path
default: 0
The file server local path. For example, "c:\MyWebServer\htdocs\replays" or "/MyWebServer/htdocs/replays".
replay_max_publish_threads
default: 4
The max number of threads allowed for publishing replay data, such as FTP threads.
replay_maxconcurrentdownloads
default: 3
The maximum number of concurrent downloads allowed.
replay_maxscreenshotsperreplay
default: 8
The maximum number of screenshots that can be taken for any given replay.
replay_mintimebetweenscreenshots
default: 5
The minimum time (in seconds) that must pass between screenshots being taken.
replay_msgduration_connectrecording
default: 8
Duration for the message that pops up when you connect to a server already recording replays.
replay_msgduration_error
default: 6
Duration of error message in Replay server.
replay_msgduration_misc
default: 5
Duration for miscellaneous replays messages (server errors and such).
replay_msgduration_replaysavailable
default: 6
Duration for replays available message.
replay_msgduration_startrecord
default: 6
Duration for start record message.
replay_msgduration_stoprecord
default: 6
Duration for stop record message.
replay_name
default: 0
Replay bot name.
replay_playerdeathscreenshotdelay
default: 2
Amount of time to wait after player is killed before taking a screenshot.
replay_postdeathrecordtime
default: 5
The amount of time (seconds) to be recorded after you die for a given replay.
replay_postwinreminderduration
default: 5
The number of seconds to show a replay reminder, post-win/lose.
replay_printclientreplays
Prints out all client replay info.
replay_printqueuedtakes
Prints info for takes currently in the queue.
replay_printsessioninfo
Print session info.
replay_publish_simulate_delay_local_http
default: 0
Simulates a delay (in seconds) when publishing replay data via local HTTP.
replay_publish_simulate_rename_fail
default: 0
If enabled, simulates a rename failure during local HTTP publishing, which will force a manual copy & delete.
replay_quitmsg_dontaskagain
default: 0
The replay system will ask you to render your replays on quit, unless this cvar is 1.
replay_ragdoll_dbg
default: 0
Display replay ragdoll debugging information.
replay_record
Starts Replay demo recording.
replay_record_voice
default: 1
If enabled, voice data is recorded into the replay files.
replay_reloadbrowser
Reloads Replay data and displays Replay browser.
replay_removeclientreplay
Remove the Replay at the given index.
replay_renderpause
Pause Replay rendering.
replay_rendersetting_encodingquality
default: 100
Render quality: the higher the quality, the larger the resulting movie file size.
replay_rendersetting_exportraw
default: 0
Export raw TGA frames as a .wav file instead of encoding it as a .mov file.
replay_rendersetting_motionblur_can_toggle
default: 0
Allows motion blur to be toggled on or off in the Replay Editor.
replay_rendersetting_motionblurenabled
default: 1
Motion blur enabled/disabled.
replay_rendersetting_motionblurquality
default: 0
Motion blur quality.
replay_rendersetting_quitwhendone
default: 0
Quit after rendering is completed.
replay_rendersetting_renderglow
default: 0
Glow effect enabled/disabled.
replay_renderunpause
Unpause Replay rendering.
replay_screenshotkilldelay
default: 0
Delay before taking a screenshot when you kill someone, in seconds.
replay_screenshotresolution
default: 0
0 for low-res screenshots (width=512), 1 for hi-res (width=1024).
replay_screenshotsentrykilldelay
default: 0
Delay before taking a screenshot when you kill someone, in seconds.
replay_sentrycammaxverticaloffset
default: 10
Vertical offset from a Sentry on Sentry kill.
replay_sentrycamoffset_frontback
default: -50
Front/back offset for sentry POV screenshot.
replay_sentrycamoffset_leftright
default: -25
Left/right offset for sentry POV screenshot.
replay_sentrycamoffset_updown
default: 22
Up/down offset for sentry POV screenshot.
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".
replay_stoprecord
Stop Replay demo recording.
replay_test_take_save_dlg
Open Replay save take dlg.
replay_voice_during_playback
default: 0
Play player voice chat during replay playback.

相关成就

Tf2arrcamera.png 回放成就

完工
完工
保存你的第一个回放。


后期校正
后期校正
当观看回放时,按下空格键进入编辑器。


特写镜头
特写镜头
将回放渲染成视频。


自我表演之星
自我表演之星
花一些时间编辑回放。

奖励: 导演的视角

家庭电影
家庭电影
为你的视频获得100次 YouTube™ 观看数。


本地电影之星
本地电影之星
为你的视频获得1000次 YouTube™ 观看数。

奖励: 前线战地摄影头盔


独立电影的轰动效应
独立电影的轰动效应
为你的视频获得10000次 YouTube™ 观看数。


好莱坞大片
好莱坞大片
为你的视频获得100000次 YouTube™ 观看数。

更新历史

2011年3月9日补丁(测试版)
  • Added Replay system that allows you to edit and publish movies of your play experiences (full Mac support in the next few days)

2011年3月10日补丁(测试版)

  • 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.

2011年3月11日补丁(测试版)

  • Fixed ‘save all’ crash in replay browser
  • Fixed ‘save movies now, then quit’ crash

2011年3月18日补丁(测试版)

  • 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

2011年3月21日补丁(测试版)

  • Added "replay_printsessioninfo <full path>" command for server admins to monitor session files, aid in debugging problems

2011年3月23日补丁(测试版)

  • 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

2011年3月24日补丁(测试版)

  • Fixed audio and video sync issues
  • Fixed a crash when replay filenames exceeded a certain length
  • Fixed start-up issues related to library files

2011年4月26日补丁(测试版)

  • Fixed audio sync issues on the Mac

2011年5月5日补丁 (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

2011年5月6日补丁

  • Fixed a bug that caused Mac replay renders to be blurry

2011年5月9日补丁

  • 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.

2011年5月10日补丁

  • Fixed a server lockup during data cleanup
  • Fixed a viewmodel fov bug during rendering
  • Renamed the ConVar replay_demolifespan to replay_data_lifespan

2011年5月12日补丁

  • 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

2011年5月18日补丁

  • Fixed server crashes related to replays and new items

2011年5月19日补丁

  • Fixed the third-person camera options dialog not displaying correctly in the Replay performance editor.

2011年5月25日补丁

  • Fixed a few server crashes caused by the replay system.

2011年6月15日补丁

  • Fixed some server replay publishing bugs
  • Added a new ConVar replay_fileserver_offload_aborttime

2011年6月17日补丁

  • Fixed a servercrash caused by the replay system.

2011年7月22日补丁

  • Fixed a Linux dedicated server crash caused by the Replay director
    • Crash would happen whether the server was capturing Replays or not

2011年7月26日补丁

  • 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

2011年7月27日补丁

  • Fixed a couple of replay issues

2011年7月29日补丁

  • Fixed Mac-only replay editor crash.

2011年8月2日补丁

  • Fix a bug where the increased_maxplayers server tag was being set when the 25th internal player slot was added for replay.

2011年8月18日补丁

  • Fixed a replay render bug where .wav files did not get written for raw TGA/WAV export

2011年10月13日补丁 (Manniversary Update & Sale)

  • New dramatic editing tools were added to help players make replays more dramatic.

2011年10月17日补丁

  • Fixed a server crash that occurred when running both SourceTV and Replay.

2011年11月7日补丁

  • Fixed a client crash in the replay editor

2012年1月26日补丁

  • Fixed a demo/replay playback crash

2012年1月27日补丁

2012年2月23日补丁

  • 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

2012年3月28日补丁

  • Updated YouTube replay publishing functionality to automatically include a link to the uploader's Steam Community profile

2012年7月23日补丁

  • Fixed Replay/SourceTV clients getting kicked when quickplay servers hibernate

2012年9月4日补丁

  • Added replay_name ConVar to set the name of the replay bot

2012年10月17日补丁

  • Fixed a common "FindModel" crash for replays

2012年11月29日补丁

  • Fixed seeing an error model when watching replays with missing models

2013年2月1日补丁

  • Fixed uploading replays to YouTube™ on Linux

2013年5月20日补丁

  • Removed replay.cfg from depot and added replay_example.cfg to avoid clobbering user's replay.cfg

2013年10月29日补丁

  • Fixed the camera target not always being visible when using the replay editor

2015年10月15日补丁

  • Fixed a security issue related to the replay system (thanks to Nathaniel Theis and Zemnmez for this report)

漏洞

  • 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.
  • 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.
  • When starting a replay with the Boston Boom-Bringer, all of the boombox sounds play at once.
  • 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.

参见

外部链接