Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0
TheWhiteWolf

Как сделать автообновление модов для сервера?

Хочу сделать так чтоб при рестарте сервера моды сами обновлялись если есть обновление, а не делать это руками.

Как это можно сделать подскажите пожалуйста.

Заранее спасибо.

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Писать батник на основе steamcmd и запускать при каждом рестарте.

Share this post


Link to post
Share on other sites









  • 0
@echo off
TITLE Сервер 2 Тестовый - Статус
COLOR 0D
:: Variables::
::Enter Your DayZServer_64.exe path.
set DAYZ-SA_SERVER_LOCATION="C:\Server"
::Enter Your Bec.exe path.
set BEC_LOCATION="C:\Server\bec"
::::::::::::::
set MOD_LIST=(C:\Server\Modlist.txt)
set STEAM_WORKSHOP=C:\Program Files (x86)\Steam\steamapps\workshop\content\221100
set STEAMCMD_LOCATION=C:\steamcmd
set STEAM_USER=********
set STEAM_PASSWORD=*********
set STEAMCMD_DEL=1
setlocal EnableDelayedExpansion

echo Inspection
goto checksv
pause

::This Will check if your server is running on start.
:checksv
tasklist /FI "IMAGENAME eq DayZServer_x64_2.exe" 2>NUL | find /I /N "DayZServer_x64_2.exe">NUL
if "%ERRORLEVEL%"=="0" goto checkbec
cls
echo 2-й Сервер НЕ ЗАПУЩЕН! Запускаем
goto killsv

::This will check if your Bec is running.
:checkbec
tasklist /FI "IMAGENAME eq Bec2.exe" 2>NUL | find /I /N "Bec2.exe">NUL
if "%ERRORLEVEL%"=="0" goto loopsv
cls
echo 2-й БЕК НЕ ЗАПУЩЕН! Пробую запустить бек..
goto startbec

::This will check every 10 second if your server is still running.
:loopsv
FOR /L %%s IN (10,-1,0) DO (
    cls
    echo Сервер 2 запущен. Проверка запущен ли сервер через %%s секунд.. 
    timeout 1 >nul
)
goto checksv

::This will shutdown your Server and Bec When this task is asked.
:killsv
taskkill /f /im Bec2.exe
taskkill /f /im DayZServer_x64_2.exe
goto startsv

::This will start your Server and open up the console.
::Dont forget to edit your Port, Path location of Battleye and your Profiles.
:startsv
cls
echo Запускаю 2-й сервер.
timeout 1 >nul
cls
echo Запускаю 2-й сервер..
timeout 1 >nul
cls
echo Запускаю 2-й сервер...
cd "%DAYZ-SA_SERVER_LOCATION%"
start "" "DZSALModServer_2.exe" -config=serverDZ.cfg -port=2303 "-profiles=C:\Server_test\ServerProfileFolder" -dologs -adminlog -netlog -freezecheck -cpuCount=8 "-mod=@CF;@VanillaPlusPlusMap;@New Trader Menu;@FIDOv PACK 4;@DayZ-Expansion-Chat;@GoreZ;@Base Furniture Mods;@CompassHUD;@bzReload;@Airdrop;@Code Lock;@BaseBuildingLogs;@DayZ-Expansion-Notifications;@Summer_Chernarus;@DisableBaseDestruction;@PartyMe;@BuildAnywhere;@BuilderItems;@Mass'sManyItemOverhaul;@OP_BaseItems;@VIRUS;@SQUAD MSF-C;@Car_Pack;@KillFeed;@Community-Online-Tools;@Trader" "-BEpath=C:\Server_test\battleye" "-dayzserver=DayZServer_x64_2.exe"
FOR /L %%s IN (10,-1,0) DO (
    cls
    echo Инициализация, ждите %%s сек для инициализации Bec.. 
    timeout 1 >nul
)
goto startbec

::This will start your Bec and open up the console
:startbec
cls
echo Запускаю 2-й БЕК.
timeout 1 >nul
cls
echo Запускаю 2-й БЕК..
timeout 1 >nul
cls
echo Запускаю 2-й БЕК...
timeout 1 >nul
cd "%BEC_LOCATION%"
start Bec2.exe -f Config.cfg --dsc
goto checkmods

:checkmods
cls
FOR /L %%s IN (%STEAMCMD_DEL%,-1,0) DO (
    cls
    echo Checking for mod updates in %%s seconds.. 
    timeout 1 >nul
)
echo Reading in configurations/variables set in this batch and MOD_LIST. Updating Steam Workbench mods...
@ timeout 1 >nul
cd %STEAMCMD_LOCATION%
for /f "tokens=1,2 delims=," %%g in %MOD_LIST% do steamcmd.exe +login "*******" "**********" +workshop_download_item 221100 "%%g" +quit
cls
echo Steam Workshop files up to date! Syncing Workbench source with server destination...
@ timeout 2 >nul
cls
@ for /f "tokens=1,2 delims=," %%g in %MOD_LIST% do robocopy "%STEAM_WORKSHOP%\%%g" "%DAYZ-SA_SERVER_LOCATION%\%%h" *.* /mir
@ for /f "tokens=1,2 delims=," %%g in %MOD_LIST% do forfiles /p "%DAYZ-SA_SERVER_LOCATION%\%%h" /m *.bikey /s /c "cmd /c copy @path %DAYZ-SA_SERVER_LOCATION%\keys"
cls
echo Sync complete! If sync not completed correctly, verify configuration file.
@ timeout 3 >nul
cls
set "MODS_TO_LOAD="
for /f "tokens=1,2 delims=," %%g in %MOD_LIST% do (
set "MODS_TO_LOAD=!MODS_TO_LOAD!%%h;"
)
set "MODS_TO_LOAD=!MODS_TO_LOAD:~0,-1!"
ECHO Will start DayZ with the following mods: !MODS_TO_LOAD!%
@ timeout 3 >nul
goto checksv

Нужно иметь еще 1 акк с игрой постоянно запущенный на сервере, Стим обновляет моды в авто режиме, далее проходит проверка на соответствие и обновление через стимцмд, если есть обновление то скачивается и копируется на сервер. В такой схеме есть минус, проверка проходит при запуске сервера, 1 высокая нагрузка на проц, 2е если были обновления то активируются на сервере после рестарта. Но если доделаешь пользуйся

 

ну соответственно нужно сделать свой мод лист

 

1564026768,@Community-Online-Tools
1831039845,@Airdrop
1756150666,@Base Furniture Mods
1576057168,@BaseBuildingLogs
1574054508,@BuildAnywhere
1565871491,@BuilderItems
1623711988,@VanillaPlusPlusMap
1716981417,@New Trader Menu
1605653648,@FIDOv PACK 4
1635058618,@DayZ-Expansion-Chat
1648967877,@GoreZ
1756150666,@Base Furniture Mods
1737056220,@CompassHUD
1583993331,@bzReload
1646187754,@Code Lock
1585487785,@DayZ-Expansion-Notifications
1644467354,@Summer_Chernarus
1571965849,@DisableBaseDestruction
1617874376,@OP_BaseItems
1674233729,@VIRUS
1583941197,@QUAD MSF-C
1742732917,@Car_Pack
1567872567,@KillFeed
1590841260,@Trader
1752669393;@ToxicZone
1827241477;@Breachingcharge

 

Edited by iMazdo (see edit history)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.