LV. 19
GP 91

TF2可錄重播檔(Replay)之伺服器架站詳解

樓主 安塔瑞斯 Antares
最近TF2終身免費,此時不衝人氣更待何時?!

有鑑於某次更新所開放的Replay編輯功能,不但強大易學,還能整合Youtube
不只利於玩家將自己的豐功偉業發在部落格上,更可順便賺個成就,也能秀一下SKIN
完全內建,頂多加灌個QuickTime作為匯出用(有玩手機攝影的必定不陌生)

而且之後還能在REPLAY瀏覽模式中,觀看全場任意玩家的視野
可以學得一些其他玩家的打法,例如一直爆自己菊的SPY

總之一句話:好功能!不用嗎?

===============以上適用眾玩家 / 以下則是給技術偏執狂=================

PS. 7/11內容小修正,經測試可以繞過FTP這部分 (如果只用一台主機的話)
       所以以下綠色文字部分可視為非必要步驟,但橘色文字部分就變成必要
       但經測試,有用FTP比較穩,直存偶爾開台久了RP功能會當掉,用FTP則否

Q: 為何亞洲Replay伺服器這麼少?
A:  1. 主機要好,頻寬要大   2. 技術門檻高,技術文章少

Q: 為何主機要好,頻寬要大?
A: 因為這功能運作模式是把所有人每一條命的經歷全紀錄,在陣亡時決定是否認領RP
    伺服不但要人人發一個錄影背後靈,還要運算戰場,同時幫所有要認領RP的傳檔   
 
Q: 為何技術門檻高,技術文章少?
A: 因為成功架站即表示此伺服同時亦完成了FTP站和HTTP網站的協同運作功能
    也許事關know-how,即使英文資料也是極少,且還有不少關鍵細節未被提及

============正文開始 (以下皆用Win7作為示範,XP大同小異)==============

先讓我們站在巨人的肩膀上: 1. 架站及插件基本   2. 免費FTP架站教學 ( 載點 )

到這裡我們已經完成了:
1. 遊戲伺服的 server.cfg 以及執行開站之 .bat 檔之建立
2. FTP存取帳號的建立,且讀寫權限要全開,指定RP存放資料夾
                               ( 這是給主機自身存取用的,外人看不到,請放心)

現在讓我們接著確保FTP功能正常運作,請開通防火牆(功能表搜尋firewall):





接下來,請至 控制台 → 程式集 → 開啟或關閉windows功能
全勾 Internet Information Service 相關兩大項
( 這是Windows內建的網站架站程式:iiS,Win7的是 iiS 7.5 )



緊接著啟動它 (功能表搜尋 iiS )



進到主畫面,一開始可見一預設站台,可改為自己喜好的名子,並作細部設定



其中繫結部分,決定你的網頁伺服器(一定要用http)功能要用哪個port對外(預設80可以)
還有要對哪些人開放(預設對不特定對象),所以這裡我們也可直接用預設值



至於基本設定,要指定實體路徑 (這裡必須和FTP帳號指定RP存放路徑相同)                 

在本例中:FTP指定位置為 D:\TF2SV\replays    (之後在.cfg會針對這部分設定)
                   預定存放RP位置為 D:\TF2SV\replays\replay
                   (也就是說 FTP登入後,只會看到 [replay] 這一資料夾)

                   本例iiS同樣指定 D:\TF2SV\replays 為網站的根目錄
                   故之後在 http://xxx.xxx.xxx.xxx/replay 中,才是存放RP的 [replay] 夾


然後得設定有點麻煩的權限設定 (為了資訊安全,麻煩是值得的)



承上圖,新增一個對瀏覽網站之用戶權限,名為IIS_IUSRS,讓其可檢檔讀取即可
(PS. 在iis的管理中預設為匿名用戶 )



再來,我們要設置存放RP之資料夾其中檔案的存取屬性
因為RP是要給遊戲端下載的,不是當網頁或圖文內容瀏覽的 (類似常見的檔案伺服)
所以左鍵雙擊MIME類型以設定之



點選右上角之"新增"按鈕



只要陸續新增兩種類型:.dmx 和 .block (這就是RP切細檔的格式)
圖中的 TF2rp 字樣,取一個自己能辨認的代號即可,兩副檔名可用同代號



最後,還要再開啟防火牆的設定 (如上面其中一步驟,故不附圖)
這次是要開通  World Wide Web 服務(HTTP)  這項,讓網站可讀取
此設置一勞永逸,以後遊戲的motd(進站公告),也能放上順便架在此的精美網頁了

另外,還有一些如同時讓多少人登入、限制流量等細節
就請各位斟酌看看吧,使用預設值也是ok的


到這裡,遊戲伺服、FTP、HTTP都可以獨立運作了

現在,我們要讓它們連動起來
建議在放置 server.cfg 同地方 如法炮製建立一 replay.cfg 以免指令混淆
然後我們在 server.cfg 中 加上一行 exec replay.cfg 來讀取其中的設定

至於 replay.cfg 可如下設置:

//=====================開頭======================

replay_enable "1"
//開啟Replay功能

//以下四行是給客戶端的
replay_fileserver_protocol              "http"
//客戶端存取模式限定HTTP,因為官方認為以這模式讀取較為安全
replay_fileserver_host "xxx.xxx.xxx.xxx"
//網站的根目錄,可用ip位置或 www.xxxxxx.com.tw (如果有的話)
replay_fileserver_port "80"
//上面我們依照預設的網頁讀取(也是RP讀取)port
replay_fileserver_path"/replay"
//請客戶端向根目錄下唯一的資料夾認領RP

//以下是給主機自身存取目錄的
replay_local_fileserver_path "D:\TF2SV\replays\replay"
//指定RP直接存取的路徑 (也可純粹靠FTP,但FTP設定是程式限定必要事項)

// 以下是給主機端存取FTP的 (如同遊戲機可不必設,但推薦另放一台主機,可增效能)
replay_fileserver_offload_enable    "1"
//開放存取
replay_fileserver_offload_protocol   "ftp"
//限定FTP存取協定
replay_fileserver_offload_hostname"xxx.xxx.xxx.xxx"
//FTP站址
replay_fileserver_offload_port        "21"
//設定的FTP port (如果是21的話)
replay_fileserver_offload_remotepath"/replay"
//由FTP根目錄,再進入這其下唯一資料夾存取RP
replay_fileserver_offload_login"ADM"
//設定的FTP帳號 (如果是ADM的話)
replay_fileserver_offload_password"xxxxxx"
//設定的FTP密碼 (如果是xxxxxx的話)
replay_fileserver_offload_maxuploads"32"
//同時上傳幾個RP (如果32人伺服的話)

//=====================結尾======================



再來把"執行開站之 .bat 檔" 加入 -replay
此舉會讓伺服器增加一個名為replay的觀察者
伺服外看起來是多一空位,但剩下這一位置是不給加的

例: srcds.exe -console -replay -game tf +map cp_gravelpit -maxplayers 32 -port 27015         -secure -tickrate 66


我們可以測試一下,執行之

如果執行結尾有如上圖紅框中字樣
恭喜你! 你的主機自我存取應該已經沒問題了!

至於客戶端存取,除了實測,還有一種官網建議的簡單測驗方式:

回顧一下,如果你的網站是 http://xxx.xxx.xxx.xxx
而RP存在你指定之實體位置的[replay]資料夾下
導致你在replay.cfg中,設位置為"/replay"

把你設的位置接上網站,不就是 http://xxx.xxx.xxx.xxx/replay 了嗎?
然後隨便建個 yyyyy.dmx 或 zzzzz.block 檔,丟到[replay]資料夾中

緊接著打開你的瀏覽器,放上 http://xxx.xxx.xxx.xxx/replay/yyyyy.dmx
                                             或 http://xxx.xxx.xxx.xxx/replay/zzzzz.block

看看會不會跑下載,如果會,恭喜你! 你的客戶端存取應該也ok了!

PS.7/11補充說明:       
                                     原文為  一台伺服 = 架站程式 + FTP + HTTP
                              操作原理為  架站程式 → FTP = HTTP → 玩家
                                                             (上傳RP)           (下載RP)

如扣除掉綠色文字部分 則變成 一台伺服 =  架站程式 + HTTP
                              操作原理為  架站程式 →  HTTP → 玩家
                                                             (內存RP)   (下載RP)

當然,如果條件充裕的話 以兩台伺服架構會更好 (人多即使速生也不易lag)
                                            
                                           可用一台伺服A = 架站程式
                                                                          ↓(上傳RP)
                                               另一台伺服B = FTP + HTTP
                                                                                      ↓(下傳RP)
PS.潛藍字體存屬而外建議,可無視                         玩家

===========================正文完===============================

影片編輯器其實是不錯的玩意兒,大家可以把自己的戰功作成精選集
放上Youtube好好的誇示武勇一番,這部分就靠大家努力發揮創意了

也希望有頻寬、有設備而且有愛的玩家們,可以踴躍架站
讓更多沒實際嘗試遊戲的潛在戰友們,能從身邊親友的戰記中,加入TF2

最後補上細部設定的參考資料 http://wiki.teamfortress.com/wiki/Replay/zh-hant

  
板務人員:

767 筆精華,03/18 更新
一個月內新增 0
歡迎加入共同維護。


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】