|
|
@echo off
:: 直接设置颜色,蓝底白字,去掉了冗余的 call 子程序
color 17
title Lineage Server Game (Optimized)
cls
:start_server
echo ===================================================
echo [信息] 正在启动天堂服务端...
echo ===================================================
:: 【优化1】将内存参数提取为变量,方便你以后随时修改
:: 建议:如果你的电脑/服务器内存充足,建议把 548m 改为 2048m 或 4096m
set MEM_MIN=548m
set MEM_MAX=548m
set MEM_NEW=272m
:: 【优化2】去掉了 Java 9 以后已废弃的 -Xoptimize 参数,保持代码整洁
start /abovenormal /b /wait java -Xms%MEM_MIN% -Xmx%MEM_MAX% -Xmn%MEM_NEW% -XX:+UseConcMarkSweepGC -cp Server_Game.jar com.lineage.Server
:ask_restart
echo.
echo ===================================================
echo [警告] 服务端进程已结束或崩溃!
echo ===================================================
:: 【优化3】使用 choice 命令代替 set /p
:: 好处:强制只能按 Y 或 N,按其他键无效,且不需要敲回车,杜绝了瞎按导致的死循环
choice /C YN /M "Restart Lineage Login Server? (是否重启服务端?)"
:: errorlevel 必须从大到小排列:2 代表 N,1 代表 Y
if errorlevel 2 goto end
if errorlevel 1 goto restart
:restart
echo.
echo [信息] 准备重启服务端...
:: 【优化4】加入 3 秒倒计时。防止服务端刚启动就崩溃造成的“无限极速重启”导致 CPU 100% 卡死
timeout /t 3 /nobreak >nul
cls
:: 改为内部循环跳转,而不是无限调用 ServerStart.bat
goto start_server
:end
:: 【优化5】补全了原代码缺失的 end 标签
echo.
echo [信息] 取消重启,正在安全退出...
timeout /t 2 /nobreak >nul
exit |
|