自
描述
此选项允许修改启动参数及其他细节,以便在面板上运行基于自定义HLDS的游戏,用ReHLDS二进制文件替代Valve官方引擎二进制文件。
15 浏览
1 下载
2026-06-30
更新于 3 天前
预设配置详情
HLDS服务器
适用于CS 1.6(默认游戏)等较老游戏,以及其他仍在ID 90下运行旧版HLDS服务器的服务器
ReHLDS
ReHLDS是对原始HLDS(版本6152/6153)进行逆向工程构建的版本,在保持与原始客户端兼容的同时,对原版引擎文件进行了多项修复和改进。
Github:https://github.com/dreamstalker/rehlds
服务器端口
HLDS服务器最多需要6个端口
| 端口 | 默认值 |
|---|---|
| 游戏/远程控制 | 27015 |
| HLTV | 27020 |
| VAC | 26900 |
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/games:source
./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart
| 变量名 | 变量 | 描述 | 默认值 | 规则 | 可查看 | 可编辑 |
|---|---|---|---|---|---|---|
| 游戏ID | SRCDS_APPID |
使用 HLDS 下载并运行游戏时对应的 ID。 HLDS 服务器 ID 为 90。此值不应更改。 | 90 |
required|numeric|in:90
必填 数字 选项: 90
|
||
| 游戏名称 | HLDS_GAME |
使用 HLDS 下载并运行的游戏对应的名称。 所有 HLDS 服务器名称均在此处 - https://developer.valvesoftware.com/wiki/Dedicated_Server_Name_Enumeration | valve |
required|alpha_dash|between:1,100
必填 介于 1-100 之间
|
||
| 地图 | SRCDS_MAP |
服务器的默认地图。 | crossfire |
required|string|alpha_dash
必填 字符串
|
||
| VAC 端口 | VAC_PORT |
指定服务器应使用的VAC端口。默认值为26900。 | 26900 |
required|numeric|digits_between:1,5
必填 数字
|
||
| ReHLDS 版本 | VERSION |
要安装的ReHLDS版本,或使用'latest'获取最新版本。 | latest |
required|string
必填 字符串
|
||
| 验证 | VALIDATE |
更新时验证游戏文件。建议在使用ReHLDS时关闭此功能,因为SteamCMD会覆盖其更改。 | 0 |
boolean
布尔
|
||
| Steam 用户名 | STEAM_USER |
想使用的关联用户名。不需要。 | |
nullable|string
可选 字符串
|
||
| Steam 密码 | STEAM_PASS |
账户的Steam密码。 | |
nullable|string
可选 字符串
|
||
| Steam 认证 | STEAM_AUTH |
账户的Steam验证器代码 | |
nullable|string
可选 字符串
|
||
| 测试分支 | SRCDS_BETAID |
公共分支留空,旧版本请选择 steam_legacy。 | |
nullable|string|in:,steam_legacy
可选 字符串 选项: ,steam_legacy
|
||
| 自动更新 | AUTO_UPDATE |
重启时自动更新 | 0 |
boolean
布尔
|
镜像
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian
入口
bash
#!/bin/bash
# SRCDS Base Installation Script
#
# Server Files: /mnt/server
# just in case someone removed the defaults.
if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then
echo -e "steam user is not set.
"
echo -e "Using anonymous user.
"
STEAM_USER=anonymous
STEAM_PASS=""
STEAM_AUTH=""
else
echo -e "user set to ${STEAM_USER}"
fi
## download and install steamcmd
cd /tmp
mkdir -p /mnt/server/steamcmd
curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd
mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing
cd /mnt/server/steamcmd
# SteamCMD fails otherwise for some reason, even running as root.
# This is changed at the end of the install process anyways.
chown -R root:root /mnt
export HOME=/mnt/server
## install game using steamcmd
./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_set_config 90 mod ${HLDS_GAME} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit
## set up 32 bit libraries
mkdir -p /mnt/server/.steam/sdk32
cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so
## set up 64 bit libraries
mkdir -p /mnt/server/.steam/sdk64
cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
# Github Release Grabber script
## get release info and download links
LATEST_JSON=$(curl -sSL "https://api.github.com/repos/rehlds/ReHLDS/releases/latest")
RELEASES=$(curl -sSL "https://api.github.com/repos/rehlds/ReHLDS/releases")
MATCH="rehlds-bin"
if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})
else
VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')
if [ "${VERSION}" == "${VERSION_CHECK}" ]; then
DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -Ei ${MATCH})
else
echo -e "defaulting to latest release"
DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)
fi
fi
cd /tmp
curl -sSL -o rehlds-bin.zip ${DOWNLOAD_URL}
unzip -q -o rehlds-bin.zip
cp -r /tmp/bin/linux32/* /mnt/server
## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": "https://eggs.pterodactyl.top/eggs/56/download/egg-custom-rehlds-engine-game.json"
},
"exported_at": "2025-04-16T18:31:43-04:00",
"name": "Custom ReHLDS Engine Game",
"author": "shigbeard@ndlee.com",
"description": "此选项允许修改启动参数及其他细节,以便在面板上运行基于自定义HLDS的游戏,用ReHLDS二进制文件替代Valve官方引擎二进制文件。",
"features": [
"steam_disk_space"
],
"docker_images": {
"registry.cn-shanghai.aliyuncs.com/pterodactyl-images/games:source": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/games:source"
},
"file_denylist": [],
"startup": "./hlds_run -console -game {{HLDS_GAME}} -port {{SERVER_PORT}} -sport {{VAC_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"Connection to Steam servers successful\"\r\n}",
"logs": "{}",
"stop": "quit"
},
"scripts": {
"installation": {
"script": "#!/bin/bash\r\n# SRCDS Base Installation Script\r\n#\r\n# Server Files: /mnt/server\r\n\r\n# just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd /tmp\r\nmkdir -p /mnt/server/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\nmkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing\r\ncd /mnt/server/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root /mnt\r\nexport HOME=/mnt/server\r\n\r\n\r\n## install game using steamcmd\r\n./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_set_config 90 mod ${HLDS_GAME} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +quit\r\n\r\n\r\n## set up 32 bit libraries\r\nmkdir -p /mnt/server/.steam/sdk32\r\ncp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p /mnt/server/.steam/sdk64\r\ncp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so\r\n\r\n\r\n# Github Release Grabber script\r\n## get release info and download links\r\nLATEST_JSON=$(curl -sSL \"https://api.github.com/repos/rehlds/ReHLDS/releases/latest\")\r\nRELEASES=$(curl -sSL \"https://api.github.com/repos/rehlds/ReHLDS/releases\")\r\nMATCH=\"rehlds-bin\"\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelse\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -Ei ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\ncd /tmp\r\ncurl -sSL -o rehlds-bin.zip ${DOWNLOAD_URL}\r\nunzip -q -o rehlds-bin.zip\r\n\r\ncp -r /tmp/bin/linux32/* /mnt/server\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "游戏ID",
"description": "使用 HLDS 下载并运行游戏时对应的 ID。\n\nHLDS 服务器 ID 为 90。此值不应更改。",
"env_variable": "SRCDS_APPID",
"default_value": "90",
"user_viewable": false,
"user_editable": false,
"rules": "required|numeric|in:90",
"field_type": "text"
},
{
"name": "游戏名称",
"description": "使用 HLDS 下载并运行的游戏对应的名称。\n\n所有 HLDS 服务器名称均在此处 - https://developer.valvesoftware.com/wiki/Dedicated_Server_Name_Enumeration",
"env_variable": "HLDS_GAME",
"default_value": "valve",
"user_viewable": true,
"user_editable": false,
"rules": "required|alpha_dash|between:1,100",
"field_type": "text"
},
{
"name": "地图",
"description": "服务器的默认地图。",
"env_variable": "SRCDS_MAP",
"default_value": "crossfire",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|alpha_dash",
"field_type": "text"
},
{
"name": "VAC 端口",
"description": "指定服务器应使用的VAC端口。默认值为26900。",
"env_variable": "VAC_PORT",
"default_value": "26900",
"user_viewable": true,
"user_editable": false,
"rules": "required|numeric|digits_between:1,5",
"field_type": "text"
},
{
"name": "ReHLDS 版本",
"description": "要安装的ReHLDS版本,或使用'latest'获取最新版本。",
"env_variable": "VERSION",
"default_value": "latest",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",
"field_type": "text"
},
{
"name": "验证",
"description": "更新时验证游戏文件。建议在使用ReHLDS时关闭此功能,因为SteamCMD会覆盖其更改。",
"env_variable": "VALIDATE",
"default_value": "0",
"user_viewable": false,
"user_editable": false,
"rules": "boolean",
"field_type": "text"
},
{
"name": "Steam 用户名",
"description": "想使用的关联用户名。不需要。",
"env_variable": "STEAM_USER",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "Steam 密码",
"description": "账户的Steam密码。",
"env_variable": "STEAM_PASS",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "Steam 认证",
"description": "账户的Steam验证器代码",
"env_variable": "STEAM_AUTH",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "测试分支",
"description": "公共分支留空,旧版本请选择 steam_legacy。",
"env_variable": "SRCDS_BETAID",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|in:,steam_legacy",
"field_type": "text"
},
{
"name": "自动更新",
"description": "重启时自动更新",
"env_variable": "AUTO_UPDATE",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "boolean",
"field_type": "text"
}
]
}附属文件
暂无附属文件
提交历史
Fork 关系
查看关系图暂无 Fork,成为第一个 Fork 的人吧!
统计
15
浏览
1
下载
0
星标
0
复刻
作者
飒
飒爽师叔
UID: 1
279 预设
·
2026-06