Windows CS:GO 128tick 开服教程
适用场景
本文记录在 Windows Server / Win10/11 上搭建 CS:GO 独立服务器(srcds)的完整流程,最终跑通 128tick 纯净对战服,支持内网、Radmin VPN、IPv6 三种联机方式,并装上 SourceMod + PTaH + eItems 实现玩家 !ws / !knife 切换皮肤。
内容均为实测修正后的可用配置,涵盖卡顿、拒绝连接、BOT 不动、皮肤不生效等常见问题的最终解法。
客户端怎么进服见 CS:GO 联机教程,本文只讲服务端搭建。
第一步:环境准备
- 系统:Windows Server 全系 / Win10 / Win11 专业版
- 关闭所有杀毒软件、火绒、电脑管家,避免误拦 srcds 网络行为
- 电源计划设为「高性能」,防止 CPU 降频导致 tick 抖动
- 准备好 SteamCMD、CS:GO 服务端文件、MetaMod + SourceMod、PTaH / eItems 扩展
第二步:用 SteamCMD 安装服务端
下载 SteamCMD,解压到纯英文路径(路径里别带中文和空格),运行 steamcmd.exe,在弹出的命令行里依次执行:
login anonymous app_update 740 validate quit
服务端装完后位于 steamcmd\steamapps\common\Counter-Strike Global Offensive Beta - Dedicated Server,后续所有配置都在这个目录下操作。
第三步:启动批处理(IPv4 + IPv6 双栈)
在服务端根目录新建 start.bat,内容如下:
srcds.exe -game csgo -console -usercon -ip 0.0.0.0 -ip :: -port 27015 -tickrate 128 -nohltv +exec server.cfg
参数说明:
-ip 0.0.0.0:监听所有 IPv4 地址(包括内网和 Radmin 虚拟网卡)-ip :::监听所有 IPv6 地址,支持 IPv6 客户端直连-tickrate 128:强制 128tick-nohltv:关闭 HLTV 录像,降低服务器资源开销-port 27015:游戏主端口
同时写两个 -ip 参数可以让服务端同时监听 IPv4 和 IPv6,客户端用哪种地址都能连。
第四步:server.cfg 完整配置
把下面内容存到 csgo\cfg\server.cfg。其中 sv_setsteamaccount 需要先去 Steam 游戏服务器管理页 申请一个 GSLT 令牌填进去。
// 网络核心(强制 128tick) sv_maxcmdrate "128" sv_mincmdrate "128" sv_maxupdaterate "128" sv_minupdaterate "128" sv_maxrate "0" sv_minrate "0" sv_lan "0" sv_region "4" sv_setsteamaccount "你的GSLT令牌" // 基础设置 hostname "私人128tick服务器" rcon_password "自定义密码" // 游戏设置 mp_friendlyfire "1" mp_autoteambalance "0" mp_autokick "0" mp_tkpunish "0" sv_alltalk "1" sv_deadtalk "1" sv_full_alltalk "1" sv_pausable "1" mp_limitteams "2" sv_voiceenable "1" sv_allow_lobby_connect_only "0" sv_allow_wait_command "1" // 皮肤、自定义模型必需 sv_cheats "0" sv_pure "0" sv_consistency "0" sv_pure_kick_clients "0" // 快照防抖(Windows 服务端优化) sv_parallel_sendsnapshot 0 sv_parallel_packentities 0 net_compresspackets 0 // 对局设置 mp_forcecamera "0" mp_do_warmup_period "1" mp_warmuptime "60" mp_force_pick_time "30" mp_join_grace_time "600" mp_match_end_restart "0" mp_maxmoney "99999" // BOT 完整激活设置(解决 BOT 原地不动) bot_difficulty 3 bot_chatter "normal" bot_join_after_player 0 bot_quota 10 bot_join_team any bot_defer_to_human 0 bot_stop 0 bot_freeze 0 // 下载权限(皮肤 / 自定义模型必需) sv_allowdownload 1 sv_allowupload 1
几个关键参数
bot_join_after_player 0:无人时 BOT 也会激活 AI,正常移动、对战、下包;默认值会导致 BOT 站桩不动。sv_pure 0:开启皮肤插件、自定义模型必须关闭纯文件校验。sv_lan 0+ GSLT 令牌:解决#Valve_Reject_LAN_Game拒绝连接报错。
第五步:插件框架(皮肤功能)
按顺序安装,不能颠倒:
- MetaMod Source
- SourceMod
- PTaH 扩展(皮肤底层 API)
- eItems 扩展(皮肤数据解析)
装好后把 weapons.smx 插件放到 SourceMod 插件目录,进服用 !ws 换武器皮肤、!knife 换刀具。
BOT 皮肤:原版 weapons 插件只给真人玩家加载皮肤,BOT 不会自动带皮肤。如果要 BOT 也带皮肤,需要 bot_inventory 插件 + PTaH + eItems + modelch.ext.dll,依赖不全插件会直接加载失败(控制台红色报错)。不想折腾这套依赖,也可以用轻量化脚本让 BOT 随机拿皮肤。
第六步:联机方案
- 内网朋友:直接连服务器内网 IPv4 地址,延迟最低。
- 外网朋友走 Radmin VPN:连 Radmin 分配的虚拟 IPv4 地址。
- 外网朋友走 IPv6:启动脚本已双栈监听,客户端直接连服务器公网 IPv6 地址。
连接拒绝报错:如果用 sv_lan 1 搭配 Radmin 的 26 段虚拟 IP,Steam 客户端会随机拒绝连接。改成 sv_lan 0 并配置 GSLT 令牌可彻底解决。
128tick 卡顿排查
如果遇到 tick 抖动,按顺序排查:
- 确认没有乱改网卡硬件参数(会导致服务器 CPU 负载飙升、tick 抖动)。
- 卡顿可能在客户端本地:显卡驱动、DPC 延迟、电源计划问题,重启客户端电脑即可恢复。
- Radmin VPN 的 TCP 封装本身会带来抖动,测试稳定性时优先内网直连。
- Windows 版 srcds 多核调度有问题,可手动限定进程 CPU 核心数优化。
服务端控制台看 up/cmd=128,sv、var 数值稳定且低、内网直连无抖动、BOT 正常跑动、!ws !knife 正常,就算跑稳了。
常见问题
- 不要 sv_lan 1 搭配 Radmin 26 段 IP:大概率出现连接拒绝,改 sv_lan 0 + GSLT。
- BOT 原地不动:检查
bot_join_after_player 0和bot_stop 0是否生效。 - 皮肤不生效:检查
sv_pure是否为 0,以及插件依赖是否齐全。 - 客户端卡顿:优先排查客户端本地驱动、电源计划、显卡设置,不一定是服务器问题。
- 本地建房人机卡顿:属于 Listen 服务器单核压力问题,和独立 srcds 服务端无关。
Rick Chou | ale211@foxmail.com
Windows srcds · CS:GO · 128tick · IPv4 / IPv6 双栈