[转载] CS:GO 服务器架设(Windows+Linux)

原文作者:Mai Ooizumi | 链接: https://maiooizumi.xyz/2015/08/22/start-your-csgo-server.html

看一堆小白想开服却用某字母社的坑爹脚本(会自动加一个他们的 ROOT 权限)所以感觉这方面还是自己动手好
一步一步慢慢来,看起来麻烦其实很简单的。。
本文参考了但不限于以下内容:

·https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers
·https://developer.valvesoftware.com/wiki/SteamCMD
·https://developer.valvesoftware.com/wiki/Source_Dedicated_Server
·https://developer.valvesoftware.com/wiki/Command_Line_Options
·https://www.sourcemod.net/
·http://www.metamodsource.net/
·https://wiki.alliedmods.net/

本文分两部分 WinServer 下的以及 LinuxServer 下的

1.Windows

准备工作

首先在 Windows Update 里面打全所有重要补丁

下载 steamcmd 以及 csgo 服务端

下载 SteamCMD:https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip

解压到你认为一个合适的目录下如 D:steamcmd\

运行 steamcmd.exe 程序会自动更新 更新之后会显示

Steam

这时候要登录

login anonymous

当然你也可以用你的 steam 账号登录

login <username> <password>

登录成功之后 用 force_install_dir 设置下载目录

force_install_dir <path>

比如

force_install_dir D:csgoserver\

设置好下载目录之后就可以开始下载服务端了

app_update 740

也可以创建快捷方式来一键下载

D:steamcmdsteamcmd.exe steamcmd +login anonymous +force_install_dir D:csgoserver +app_update 740 +quit

下载好了之后还需要进行插件配置(sourcemod+metamod:source)以及服务器参数设置

https://www.sourcemod.net/downloads.php http://www.metamodsource.net/downloads/

把解压得到的 addons 跟 cfg 文件夹放到 D:csgoservercsgo 下

然后设置 sourcemod 管理员 addonssourcemodconfigsadmins_simple.ini
格式如

"STEAMID" "权限" "管理员密码 (可选)"
"STEAM_1:1:59886493" "99:z"

随便进一个服务器 然后控制台打 status
看到名字后面的 STEAM_X:X:XXXXXX 就是你的 STEAMID
权限等级:

"a"// 预留通道

"b"// 管理员菜单的权限

"c"// 踢人

"d"//BAN 人

"e"// 解 BAN

"f"// 娱乐命令(处死 火烧冰冻等)

"g"// 更换服务器地图

"h"// 修改服务器 cvar 参数

"i"// 执行服务器 cfg 文件

"j"// 发送消息

"k"// 发动投票

"l"// 给服务器上密码

"m"//rcon 命令 远程控制服务器

"n"// 修改 sv_cheats 参数以及使用其他作弊参数

"z" // 顶级权限

"o-t" // 自定义权限(warmod 菜单等)

然后到 csgoservercsgocfg 文件夹新建一个 cfg 文件比如 autoexec.cfg 里面写入以下内容

hostname "你的服务器名称(不支持中文 如果要起中文名需要服务器中文名插件)"

rcon_password "远程控制服务器的密码(与上面 sourcemod 里面的 rcon 不同)"

host_info_show 2

host_players_show 2

fps_max 1000

sv_region 4

sv_contact 你的邮箱 V 社会做记录

exec banned_user.cfg

exec banned_ip.cfg

writeid

writeip

setmaster add 68.142.72.250:27011

setmaster add 72.165.61.189:27011

现在服务器的设置基本已经完成了

  • 开服

csgoserver 文件夹 找到 srcds.exe 创建快捷方式 目标栏填上你要创立的模式以及地图
休闲模式

-game csgo -console -usercon +game_type 0 +game_mode 0 +map de_dust2

竞技模式

-game csgo -console -usercon +game_type 0 +game_mode 1 +map de_dust2

军备竞赛

-game csgo -console -usercon +game_type 1 +game_mode 0 +map ar_shoots

爆破模式

-game csgo -console -usercon +game_type 1 +game_mode 1 +map de_lake

死亡竞赛

-game csgo -console -usercon +game_type 1 +game_mode 2 +map de_dust

后面的 + map de_dust2 可以改成你想要的地图

  • 其他服务器启动项

-maxplayers_override 最大玩家数

-noipx 关闭 IPX 协议的支持

-nohltv 关闭 gotv

-nobots 关闭 bot 功能! csgo 如果想开某些不需要 bot 的服务器要加这个参数不然有人换队 bot 还是会占位!

-tickrate 128 设置服务器 tick 为 128 满十必备

-authkey 如果要使用 steam web API 要用到这个启动项 apikey 在这里申请:http://steamcommunity.com/dev/apikey

2.Linux

以 Ubuntu Server 14.04 LTS 为例

  • 准备工作

首先更新包

apt-get update

apt-get upgrade

如果服务器是 64bit(64 位系统) 还要装 32 位运行库

apt-get install lib32gcc1

创建一个新账户(如 steam)来运行 csgo 服务端(不要用 root 权限来运行服务端!会有很大的安全隐患!)

useradd -m steam

修改名称为 steam 这个用户的密码

passwd steam

切换至 steam 用户

su - steam

  • 下载 steamcmd 以及 csgo 服务端

在 / home / 下创建一个名为 steamcmd 的目录并进入

mkdir ~/steamcmd

cd ~/steamcmd

下载 steamcmd 并解压

wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz

tar -xvzf steamcmd_linux.tar.gz

创建一个 update.txt 自动下载脚本

vim update.txt

按 I 键开启编辑模式 复制以下内容进去

@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
login anonymous
force_install_dir ../csgoserver/ // 自定义下载目录
app_update 740
quit

按 Esc 键 然后输入:wq 保存退出

下载 csgo 服务端

./steamcmd.sh +runscript update.txt

  • 服务器配置

请看 Windows 版

  • 开服

模式设置跟 windows 一样

不过运行的不是 srcds.exe 而是 srcds_run

如果要创建快捷方式 进入下载的文件夹 创建 run.sh 文件

vim run.sh

写入以下内容

./srcds_run -console -game csgo -usercon -noipx -nohltv -steam_dir ../steamcmd -steamcmd_script ../steamcmd/update.txt -autoupdate +game_mode 0 +game_type 0 +map de_dust2

这是创建休闲模式 需要改其他模式可以自己修改保存

然后

./run.sh

服务器就开起来了

gl hf

另外如果是用 ssh 远控 linux 的话退出 ssh csgo 服务端会自动关闭 解决方法是用 screen 命令

apt-get install screen // 安装 screen

screen -S csgoserver // 开启名字为 csgoserver 的新 screen

cd ~/csgoserver/

./run.sh

这样就在关闭 ssh 的情况下也可以后台运行 csgo 服务器了

切换到非 screen 状态只需要按 Ctrl+A+D 就切回 linux shell 了

切换回去是

screen -r csgoserver

如果有时候报错 就要先

screen -d csgoserver

2015.11.11 更新

由于 V 社出了新的规定(戳这里)不允许匿名开服

只能到下面的链接

https://steamcommunity.com/dev/managegameservers

申请一个 token

在 Create a new game server account 下面 APPID 输入 730 , Memo 可以随便填(如果开很多服务器最好用能分辨出来服务器的名称)

并用

sv_setsteamaccount XXXXXXXXX(你的 token)

这个命令来让服务器登录 steam,也就是说用武器皮肤插件或者刀模插件会被 V 社检测到并 ban 掉服务器(猜测)

这个命令是要放在启动 cfg 里面的 可以在启动选项(Launch Options)加上

+sv_setsteamaccount XXXXXXXXX

也可以在启动加载的 cfg 里面加比如上面的 autoexec.cfg

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注