【仙境传说-黑色派对】场景端口检测脚本并自动重启场景

黑色派对的场景端口有时候会掉,然后传送的时候就会传送到南门

我这里的场景是开了5个端口,分别是:7060,7061,7062,7063,7064

如果你不知道你的端口是什么,在ssh输入netstat -lntp

查看SceneServer进程前面对应的端口就是你的场景端口



然后在宝塔的计划那里添加脚本:(我设置的检测时间是3分钟)

#!/bin/bash
ports=(7060 7061 7062 7063 7064)
all_ports_running=true
for port in "${ports[@]}"
do
check_port=$(sudo lsof -i tcp:"$port" | wc -l)
if (( $check_port < 2 )); then
all_ports_running=false
echo "端口 $port 缺失!"
fi
done
if $all_ports_running; then
echo "运行正常!"
exit 0
else
cd /xxymw//这里是你服务端的目录
./xxymw xd r2 s2
fi
然后在你服务端目录新建xxymw文件

里面添加代码:

#!/bin/sh
pfName=$1
regionName=$2
zoneName=$3
echo "清理上一次服务端日志"
rm -rf /log
grep Server jc.xml | grep reg |awk -F'"' '{print "./" $2 " -d -n" $4 " -p'$pfName' -r'$regionName' "}' | bash
#./SuperServer -nSuperServer -d -p$pfName -s$zoneName
grep Server jc.xml | grep type | sed -e "s/^.*type=\"//" -e "s/\" name=\"/ /" -e "s/\".*$//" | awk '{print "./" $1 " -d -n" $2 " -p'$pfName' -r'$regionName' -s'$zoneName'"}' | sed -e "/SessionServer/asleep 1" | bash

再新建一个jc.xml文件

里面添加代码:

<?xml version="1.0" encoding="GBK" ?>
<Config>
<Server>
<info type="SceneServer" name="SceneServer1"/>
<info type="SceneServer" name="SceneServer2"/>
<info type="SceneServer" name="SceneServer3">
<info type="SceneServer" name="SceneServer4"/>
<info type="SceneServer" name="SceneServer5"/>
</Server>
</Config>

记得xxymw文件和jc.xml文件添加权限,里面的路径都换成你自己的

发表回复

后才能评论