好吧,其实我是为了重构L4D2服务器,更新SourceMod和整理所需的插件,顺便做个记录。
其他的steam上的游戏的独立服务器制作方法同理。为什么不用Linux做服务器呢?因为Linux服务器卡死很难受,而且求生服务器崩溃率比windows上高,最重要的是有些插件对Linux有问题!
教程所需部分文件见最后的附件
使用SteamCMD安装Left 4 Dead 2 Dedicated Server
SteamCMD的wiki:https://developer.valvesoftware.com/wiki/SteamCMD:zh-cn
我现在才知道原来有中文界面...
下载Windows系统专用的SteamCMD:
https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip
解压到C:\SteamCMD里
当然也可以放到其他路径
到下面的网页寻找所需游戏的服务器
https://developer.valvesoftware.com/wiki/Dedicated_Servers_List
如l4d2的就是222860
用脚本更新/安装服务器
在steamcmd目录下新建一个TXT,如l4d2.txt
根据上一步所找到服务器信息以及想装的路径填写。如
login anonymous
force_install_dir C:\Users\Administrator\Desktop\l4d2server\
app_update 222860 validate
开始安装
运行以下命令
c:
cd c:\steamcmd\
steamcmd +runscript l4d2.txt
接下来steamcmd会自动更新自身并且下载安装游戏
下载中断
如服务器网络不稳定程序会自动中断下载,重新输入安装命令就行
Wiki里也有些简单粗暴的脚本:
condenser
condenser 是一个用于下载,配置和启动Steam专用服务器应用的引导程序。
SteamCMD AutoUpdater
安装和自动更新任何游戏服务端
GitHub:https://github.com/C0nw0nk/SteamCMD-AutoUpdate-Any-Gameserver
SteamCMD GUI
这个工具可以使用户在Windows系统上不通过命令行或批处理文件来使用SteamCMD。
GitHub:https://github.com/DioJoestar/SteamCMD-GUI
SteamCMD Guardian 1.2
在这里查看并下载:http://pastebin.com/BRUbsGQh
到现在正版纯净的l4d2服务器已经安装完毕了
当然我们还没结束,我们还要装插件
下载SourceMod、Metamod、L4DToolZ
SourceMod官网:http://www.sourcemod.net/
SourceMod下载:http://www.sourcemod.net/downloads.php?branch=stable
SourceMod的GitHub:https://github.com/alliedmodders/sourcemod
我就下载最新的稳定版~
Metamod官网:https://www.sourcemm.net/
当然不要忘记生成对应游戏的VDF文件:https://www.sourcemm.net/vdf
L4DToolZ:https://forums.alliedmods.net/showthread.php?t=93600
L4DToolZ的GitHub:https://github.com/ivailosp/l4dtoolz/
L4D2的是下1.0.0.9h版本
总共是4份文件
安装插件平台
安装Metamod
将mmsource-1.10.6-windows.zip
的addons解压出来与.\left4dead2\addons\\
合并
再将之前生成的metamod.vdf
覆盖addons里的metamod.vdf
这个文件其实就是个路径设置
SourceMod
同理将sourcemod-1.8.0-git5967-windows.zip
里的addons和cfg与.\left4dead2\addons\\
和.\left4dead2\cfg\\
合并
L4DToolZ
将l4dtoolz(L4D2)-1.0.0.9h.zip
里的两个文件夹l4dtoolz
和metamod
放到.\left4dead2\addons\\
里。
其实安装顺序是无所谓的
检查插件平台是否安装成功
运行srcds.exe
设置好RCON密码、端口等简单配置直接Start Sever
在Console选择夹里输入
meta list
像这样就安装成功了
简单更改服务器最大人数
输入命令:
sm_cvar sv_maxplayers 16;sm_cvar sv_visiblemaxplayers 16
当然这些命令预先放到.\left4dead2\cfg\server.cfg
里服务器开始时就会自动运行。
简单设置权限
- 在
.\left4dead2\addons\sourcemod\configs\admins_simple.ini
里的增加一行
"STEAM_1:1:125637774" "99:z" "passwd"
第一个引号是steamID或者是Steam个人资料名(游戏里的名字)
第二个引号是权限大小
第三个引号是密码
具体说明文件里都有
- 然后到同一目录下的
core.cfg
里修改
"PassInfoVar" "_password"
- 想要成功该服务器的权限还要在进游戏前在游戏的控制台输入
setinfo _password passwd
当然可以放进你游戏目录里的.\left4dead2\cfg\autoexec.cfg
里每次运行游戏时自动执行这条命令
服务器欢迎界面设置
大图:.\left4dead2\motd.txt
小图:.\left4dead2\host.txt
SourceMod插件安装
一般到 http://www.sourcemod.net/plugins.php 搜索下载,按照作者说明来就行了
推荐下载源码自己用.\l4d2server\left4dead2\addons\sourcemod\scripting\compile.exe
编译
这里用gettickrate插件演示
- 找到插件并下载源码 https://forums.alliedmods.net/showthread.php?p=649755
- 将tickrate.sp放入
.\l4d2server\left4dead2\addons\sourcemod\scripting\\
里 - 将tickrate.sp拖到compile.exe上,插件编译成功后会在
..\compiled\\
里生成tickrate.smx - 将tickrate.smx放到
.\l4d2server\left4dead2\addons\sourcemod\plugins\\
里就算安装成功了 - 有些插件需要放data到指定文件夹(往往是为了同时兼容Windows/Linux服务器),自己认真看作者的插件说明。
- 一般要服务器运行一次后自动生成该插件所需cfg文件到
.\l4d2server\left4dead2\cfg\sourcemod\\
。
当然这个插件功能简单就没有生成~
服务器Tickrate修改
- 下载Tickrate_Enabler(已在附件)
GitHub:https://github.com/mvandorp/l4d2_tickrate_enabler
Windows平台自行编译1.4版本 - 将
tickrate_enabler.vdf
和tickrate_enabler.dll
放入.\l4d2server\left4dead2\addons\\
文件夹 - 运行
srcds.exe
时,在最后加上参数-tickrate 100
修改服务器名为中文名
- 方法1:
修改.\l4d2server\platform\config\server.vdf
** 保存为UTF-8无BOM **(Windows默认的UTF-8是有BOM的,推荐Notepad++或UltraEdit或Atom) - 方法2:
用插件,下载见下面
之后直接在\l4d2server\left4dead2\addons\sourcemod\configs\hostname\hostname.txt
修改,保存为UTF-8,好像无所谓带不带BOM
附件
链接:http://pan.baidu.com/s/1qXOijZe 密码:je2c
自用插件整理
- Melee In The Saferoom
- Survivor Animation Fix Pack
- Survivors mourn fix
- Advertisements
- Director Controller (All4Dead)
- Away
- Friendly-Fire Toolkit Lite
- Infinite-Jumping
- Broadcast
- Gear Transfer
- Infected Health Gauge (Tank & Witch & Special)
- Night Vision
- Randomize Tank Witch HP and Speed
- Stuck Zombie Melee Fix
- Survivor Identity Fix for 5+ Survivors
- hostname
- Use !kill command in chat 1.0
- Riot Cop (and Fallen Survivor) Head Shot
- Self Stand Up
- SG552 Reload Fix
- Survivor AI Trigger fix
- Upgrade packs BUG FIX
- Weapon Unlock
- 4+ Survivor AFK Fix
- Botcreator
- MultiSlots
- Character Select Menu
- msg_system.smx
- Player/Server Notification 待修改
- rygive.smx
- Force Mission Changer
- Tank Damage Report
- 8+ players Bug Fixes
- Defibrillator Bug Fix
- Survivor Bot AI SHOOT IT FFS Fix
-
Defib using Bots
未完待续...