最近比較喜歡和同學(xué)玩創(chuàng)意工坊地圖,但是和同學(xué)不在同一個局域網(wǎng)摊鸡。任何一個人的電腦做主機(jī)延遲和loss都非常的高多糠,玩起來體驗(yàn)非常的差。正好阿里云的服務(wù)器可以以每月9.5元的學(xué)生價搞到一臺云服務(wù)器蝇摸,因此我便開始研究如何搭建私人的CS:GO服務(wù)器。在參考了Wilf的博客之后糕簿,我成功地搭建了自己的游戲服務(wù)器探入,在此十分感謝Wilf!
下面正式開始服務(wù)器搭建
一. 創(chuàng)建新用戶懂诗,安裝steamcmd蜂嗽,安裝CS:GO服務(wù)端
1. 使用ssh以root用戶身份登錄到服務(wù)器,創(chuàng)建名為steam的用戶殃恒,并切換到該用戶和該用戶的根目錄下(用戶名可以自行選擇植旧,但在后續(xù)的操作中,路徑需要進(jìn)行替換)
useradd -m steam // 添加名為steam的用戶
su steam // 切換到steam用戶
cd /home/steam/ // 切換到steam用戶的根目錄下
2. 創(chuàng)建名為steamcmd的文件夾离唐,下載steamcmd并解壓
mkdir steamcmd //創(chuàng)建名為steamcmd的文件夾
cd steamcmd/ // 切換到文件夾目錄下
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz //下載steamcmd
tar zxvf steamcmd_linux.tar.gz // 解壓steamcmd
rm steamcmd_linux.tar.gz //刪除下載的安裝包病附,也可以保留
3. 安裝運(yùn)行steamcmd所需的環(huán)境,運(yùn)行steamcmd并安裝CS:GO服務(wù)端
sudo yum install glibc.i686 // 安裝steamcmd運(yùn)行所需的庫
sudo yum install libstdc++.i686 // 有的主機(jī)已經(jīng)安裝其他同樣效果的依賴亥鬓,不用多次安裝
./steamcmd.sh
在操作無誤的情況下完沪,看到下面的命令行之后,steamcmd就安裝完成了
接下來便是在steamcmd中安裝CS:GO
以匿名用戶身份登錄steamcmd
login anonymous
創(chuàng)建CS:GO服務(wù)器文件夾嵌戈,該文件夾在steamcmd文件夾目錄下
force_install_dir ./csgo_server
安裝csgo服務(wù)端(15分鐘左右)
app_update 740 validate
在看到如下圖片中最后的行的"Success!"后覆积,表明CS:GO服務(wù)端安裝成功(此處使用了更新成功的圖片,但同樣是"Success!"字樣)
安裝完成后熟呛,退出steamcmd
quit
二. 編寫CS:GO更新腳本(可選)
1. 編寫steamcmd的runscript腳本
在steamcmd目錄下(退出steamcmd.sh后的當(dāng)前目錄)宽档,使用vim創(chuàng)建新的update.txt文件
vi update.txt
進(jìn)入編輯模式,寫入以下語句庵朝,然后保存退出
login anonymous
force_install_dir ./csgo_server
app_update 740
quit
2. 編寫steamcmd運(yùn)行腳本
在steamcmd目錄下吗冤,使用vim創(chuàng)建新的csgo_server_update.sh文件
vi csgo_server_update.sh
進(jìn)入編輯模式,寫入以下語句后保存退出
#!/bin/bash
./steamcmd.sh +runscript update.txt
3. 測試腳本
在steamcmd目錄下運(yùn)行腳本csgo_server_update.sh
./csgo_server_update.sh
若運(yùn)行結(jié)果如下所示九府,則更新腳本編寫完成椎瘟,以后可以直接使用該命令一鍵更新CS:GO服務(wù)器
若出現(xiàn)了權(quán)限不足的情況,提升權(quán)限再次運(yùn)行即可
chmod 775 csgo_server_update.sh
三. 配置并運(yùn)行CS:GO服務(wù)端
1. 前往Steam游戲服務(wù)器帳戶管理注冊steam服務(wù)器登錄令牌昔逗。沒有該令牌服務(wù)器只能在本地網(wǎng)絡(luò)中進(jìn)行連接降传,在社區(qū)服務(wù)器瀏覽器中也不會顯示。(網(wǎng)站可能無法連接勾怒,推薦使用Steamcommunity 302工具修復(fù)連接問題)
在App ID中填入CS:GO的ID:730婆排。備忘錄中填入:CSGO服務(wù)端令牌(選填)
點(diǎn)擊創(chuàng)建之后便獲得了登錄令牌,不要將該令牌泄露出去笔链,該令牌用于服務(wù)器在CS:GO社區(qū)服務(wù)器中驗(yàn)證
2. 下載服務(wù)器配置文件server.cfg
切換目錄到CS:GO的cfg文件夾下段只,下載server.cfg文件,編輯server.cfg文件
cd csgo_server/csgo/cfg/
wget http://www.csgodev.com/downloads/server.cfg
vi server.cfg
進(jìn)入編輯模式鉴扫,在server.cfg文件中添加登錄令牌赞枕,修改部分參數(shù)(這部分一定要改,不然很影響游戲體驗(yàn)F捍础)
// 新增以下參數(shù):
// steam account炕婶,修改為自己剛剛申請的登陸令牌
sv_setsteamaccount "4FXXXXXXXXXXXXXXXXXXXXXXXXX"
// 找到并修改以下參數(shù):
// 服務(wù)器名稱,安全方面
hostname "Fisher's server" // 服務(wù)器在社區(qū)服務(wù)器瀏覽器上顯示的名稱莱预,自行修改為喜歡的名字
rcon_password "12345678" // CS:GO遠(yuǎn)程控制臺密碼柠掂,修改為自己定義的密碼
sv_password "87654321" // 服務(wù)器連接密碼,在連接服務(wù)器時輸入依沮,不要密碼可以留空
// 游戲參數(shù)方面
sv_maxrate "128000" // 服務(wù)器最大帶寬使用量涯贞,默認(rèn)值非常小,因此會造成choke值異常危喉,此處建議改為128000
sv_minrate "80000" // 服務(wù)器最小帶寬使用量宋渔,與上面同理,此處建議改為80000
sv_accelerate "5.5" // 人物移動速度辜限,默認(rèn)值為10皇拣,快到惡心,此處建議修改為5.5
最關(guān)鍵的參數(shù)在下圖已經(jīng)用紅筆圈出來了
修改完以上參數(shù)之后薄嫡,服務(wù)器便可以啟動了氧急,關(guān)于server.cfg中的其他參數(shù)說明,可以在server.cfg文件的注釋中查看岂座,也可以前往CSGODev查看
3. 開放UDP 27015端口
前往阿里云服務(wù)器防火墻控制面板态蒂,添加防火墻規(guī)則
4. 安裝screen,啟動CS:GO服務(wù)器
安裝screen费什,以便CS:GO服務(wù)進(jìn)程在后臺運(yùn)行
sudo install screen
返回csgo_server目錄钾恢,使用screen創(chuàng)建新的會話
cd /home/steam/steamcmd/csgo_server/
screen -S csgo
注意:當(dāng)screen會話未結(jié)束時,在下次ssh登陸時可以使用命令"screen -r csgo"來恢復(fù)會話
此時屏幕會清屏鸳址,說明你成功進(jìn)入到"csgo"這個會話當(dāng)中瘩蚪,這時開始啟動服務(wù)器
./srcds_run -debug -game csgo -console -port 27015 -steamcmd_script /home/steam/steamcmd/update.txt -steam_dir /home/steam/ +map de_dust2
若系統(tǒng)提示沒有srcds_run這個文件,則是你當(dāng)前的文件夾目錄不正確
參數(shù)解釋:
-debug 開啟調(diào)試模式
-game 指明游戲稿黍,此處是csgo
-console 打開游戲控制臺
-port 游戲服務(wù)器端口疹瘦,此處是27015
-steamcmd_script 運(yùn)行steamcmd的腳本文件地址
-steam_dir Steam的安裝地址
+map 服務(wù)器加載的地圖(此處只能用官方地圖,創(chuàng)意工坊地圖請看后面)
當(dāng)看到如下圖所示的界面之后巡球,說明服務(wù)器成功地運(yùn)行言沐,可以在游戲中連接了
記下紅圈中的服務(wù)器IP地址邓嘹,等會要用
四. 在游戲中連接服務(wù)器
1. 由于國服的社區(qū)服務(wù)器瀏覽器和世界服的不一樣,世界服現(xiàn)在也免費(fèi)了险胰,因此目前我們使用世界服進(jìn)行連接汹押。(關(guān)于如何切換到世界服,請自行百度)
2. 打開社區(qū)服務(wù)器瀏覽器起便,點(diǎn)擊“收藏夾選項(xiàng)卡”棚贾,輸入服務(wù)器IP地址,點(diǎn)擊“在此地址上查找游戲”榆综,然后選擇找到的服務(wù)器妙痹,點(diǎn)擊“將選定游戲服務(wù)器添加至收藏夾”
3. 連接服務(wù)器,雙擊收藏夾中剛剛添加的服務(wù)器鼻疮,輸入密碼即可怯伊,注意輸入法
4. Enjoy!
PS:實(shí)測4人在64tick情況下陋守,loss和choke基本為0%震贵,延遲穩(wěn)定在25ms左右
五. 使用社區(qū)地圖
1. 注冊Steam網(wǎng)頁API
前往Steam網(wǎng)頁API注冊頁面注冊API,獲得Authkey(注意不要泄露出去)
2. 獲取創(chuàng)意工坊地圖ID
在steam的創(chuàng)意工坊中打開自己想要的地圖的頁面水评,復(fù)制瀏覽器地址上的ID猩系。比如說,aim_map_c的地圖ID是465367694
3. 啟動服務(wù)器
在csgo_server文件夾中輸入命令
./srcds_run -debug -game csgo -console -port 27015 -steamcmd_script /home/steam/steamcmd/update.txt -steam_dir /home/steam/ +host_workshop_map 465367694 -authkey 3XXXXXXXXXXXXXXXXXXXXXXX
相同的參數(shù)在之前有解釋中燥,這里只解釋新的參數(shù):
+host_workshop_map 465367694 切換地圖為來自創(chuàng)意工坊的地圖寇甸,后面的數(shù)字填入剛剛獲取的地圖ID
-authkey 3XXXXXXXXXX Steam網(wǎng)頁API的Authkey,填入剛剛獲取的API Authkey
若看到以下Log疗涉,則表示服務(wù)器切換到創(chuàng)意工坊的地圖成功
按照上面的步驟再次連接服務(wù)器拿霉,就會發(fā)現(xiàn)服務(wù)器地圖切換為創(chuàng)意工坊的地圖了,Enjoy咱扣!
4. 更換地圖
如果不想通過重啟服務(wù)器的方法來更換地圖绽淘,可以在服務(wù)器控制臺中輸入以下命令:
changelevel XXXX // XXXX可以是創(chuàng)意工坊地圖ID,也可以是官方地圖名字
5. 更多
更多關(guān)于創(chuàng)意工坊地圖的命令闹伪,可以參考官方給出的文檔:CSGO_Workshop_For_Server_Operators
六. 添加Mod和插件
因?yàn)槲抑缓屯瑢W(xué)玩玩普通的創(chuàng)意工坊地圖沪铭,不需要打Mod,因此這里我并沒有做更多的研究偏瓤。在此引用Wilf博客中的教程杀怠,有興趣的人可以去研究一下
常用插件為sourcemod和metamod,裝了這倆之后才能裝滿十厅克,kz赔退,僵尸等等插件。
其它有用的插件比如warmod等等可以在x社區(qū)找到,安裝方法一般是放在cfg以及addon文件夾內(nèi)硕旗,使用方法在插件原文里說明的也比較詳細(xì)窗骑,這里給出網(wǎng)址不贅述了。
https://www.sourcemod.net
https://www.metamodsource.net
https://bbs.93x.net
七. 總結(jié)
1. 至此卵渴,CS:GO私人服務(wù)器的搭建就完成了慧域,可以與同學(xué)愉快地玩耍了鲤竹。要想讓服務(wù)器在后臺繼續(xù)運(yùn)行浪读,直接斷開ssh連接即可。在下次ssh連接登錄后辛藻,想要恢復(fù)之前的screen會話碘橘,輸入以下命令即可:
screen -r csgo
2. 教程中用到網(wǎng)址匯總
網(wǎng)址 | 介紹 |
---|---|
https://wilfoo.com/?p=92https://wilfoo.com/?p=92 | Wilf的博客 |
https://steamcommunity.com/dev/managegameservers | Steam 游戲服務(wù)器帳戶管理 |
http://csgodev.com/csgodev-server-cfg-for-csgo/ | CS:GO配置文件來源 |
https://steamcommunity.com/dev/apikey | Steam網(wǎng)頁API注冊 |
https://developer.valvesoftware.com/wiki/CSGO_Workshop_For_Server_Operators | 創(chuàng)意工坊地圖操作手冊 |
https://www.sourcemod.net | Mod插件 |
https://www.metamodsource.net | Mod插件 |
https://bbs.93x.net | Mod插件 |