bat'ник для Windows® VALVe® Dedicated Server

Обсуждаем все, что относится к выделенным серверам *NIX (Unix, Linux) и Windows
Ответить
Сообщение
Автор
Аватара пользователя
Grizli777
Капитан
Капитан
Сообщения: 465
Зарегистрирован: 22.06.2010
Откуда: World Wide Web

#1 Сообщение 11.12.2010, 12:50

И снова здравствуйте!

Разрешите представить вам bat'ник, который в случае непредвиденной остановки или другого "краха" вашего сервера запустит его в работу, предварительно обновив его до финальной версии. Настройки bat'ника позволяют использовать его на всех Source DS серверах. К таким серверам относятся - Counter-Strike: Source, Day of Defeat: Source, HL 2 Deathmatch, Lef 4 Dead, Left 4 Dead 2, Team Fortress 2 и т.д., список таких модов можно просмотреть командой -list приложения HLDS Update Tool.

Для "подгонки" bat'ника под свой сервер - достаточно указать в его настройках значения применимые к вашему серверу. Для редактирования откройте bat'ник в любом текстовом редакторе, например - Блокнот.

Этот bat'ник можно взять здесь:

СКАЧАТЬ
Рассмотрим настройки bat'ника
rem // Укажите вместо - f:\hldsupdatetool - вашу директорию,
rem // в которую установлен HLDS Update Tool

set HLDSTAEGET=f:\hldsupdatetool

rem // Укажите вместо - f:\srcds - вашу директорию,
rem // в которую у вас установлен сервер

set InstTARGET=f:\srcds

rem // Укажите вместо - tf - вашу версию игрового мода для обновления сервера:
rem // Counter-Strike Source - всем знакомый игровой мод - Counter-Strike: Source
rem // dods - игровой мод - Day of Defeat: Source
rem // garrysmod - игровой мод - Garry's Mod
rem // hl2mp - игровой мод - Half-Life 2 Deathmatch
rem // left4dead - игровой мод - Left 4 Dead
rem // left4dead2 - игровой мод - Left 4 Dead 2
rem // tf - игровой мод - Team Fortress 2
rem // Остальные игровые моды можно просмотреть командой
rem // f:\hldsupdatetool\HldsUpdateTool.exe -command list

set ModTARGET=tf

rem // Укажите любой другой используемый вами порт
set PortTARGET=27015

rem // Укажите имя карты, которую подгрузит сервер при старте
set MapTARGET=cp_mountainlab

rem // Укажите максимальное количество игровых слотов
rem // для TF2 разработчики рекомендуют не более - 24

set PlrsTARGET=24

rem // Укажите имя игрового мода для обозначения сервера
rem // например - Counter-Strike: Source или Day of Defeat: Source

set NameModTARGET=Team Fortress 2

rem // Укажите вместо - tf - вашу версию игрового мода для запуска сервера:
rem // cstrike - всем знакомый игровой мод - Counter-Strike: Source
rem // dod - игровой мод - Day of Defeat: Source
rem // garrysmod - игровой мод - Garry's Mod
rem // hl2mp - игровой мод - Half-Life 2 Deathmatch
rem // left4dead - игровой мод - Left 4 Dead
rem // left4dead2 - игровой мод - Left 4 Dead 2
rem // tf - игровой мод - Team Fortress 2
rem // ну и т.д., и т.п.

set GameTARGET=tf
Пример настроек bat'ника для Counter-Strike: Source
rem // Укажите вместо - f:\hldsupdatetool - вашу директорию,
rem // в которую установлен HLDS Update Tool

set HLDSTAEGET=f:\hldsupdatetool

rem // Укажите вместо - f:\srcds - вашу директорию,
rem // в которую у вас установлен сервер

set InstTARGET=f:\srcds

rem // Укажите вместо - tf - вашу версию игрового мода для обновления сервера:
rem // Counter-Strike Source - всем знакомый игровой мод - Counter-Strike: Source
rem // dods - игровой мод - Day of Defeat: Source
rem // garrysmod - игровой мод - Garry's Mod
rem // hl2mp - игровой мод - Half-Life 2 Deathmatch
rem // left4dead - игровой мод - Left 4 Dead
rem // left4dead2 - игровой мод - Left 4 Dead 2
rem // tf - игровой мод - Team Fortress 2
rem // Остальные игровые моды можно просмотреть командой
rem // f:\hldsupdatetool\HldsUpdateTool.exe -command list

set ModTARGET=Counter-Strike Source

rem // Укажите любой другой используемый вами порт
set PortTARGET=27015

rem // Укажите имя карты, которую подгрузит сервер при старте
set MapTARGET=de_dust2

rem // Укажите максимальное количество игровых слотов
rem // для TF2 разработчики рекомендуют не более - 24

set PlrsTARGET=32

rem // Укажите имя игрового мода для обозначения сервера
rem // например - Counter-Strike: Source или Day of Defeat: Source

set NameModTARGET=Counter-Strike: Source

rem // Укажите вместо - tf - вашу версию игрового мода для запуска сервера:
rem // cstrike - всем знакомый игровой мод - Counter-Strike: Source
rem // dod - игровой мод - Day of Defeat: Source
rem // garrysmod - игровой мод - Garry's Mod
rem // hl2mp - игровой мод - Half-Life 2 Deathmatch
rem // left4dead - игровой мод - Left 4 Dead
rem // left4dead2 - игровой мод - Left 4 Dead 2
rem // tf - игровой мод - Team Fortress 2
rem // ну и т.д., и т.п.

set GameTARGET=cstrike
Пример настроек bat'ника для Day of Defeat: Source
rem // Укажите вместо - f:\hldsupdatetool - вашу директорию,
rem // в которую установлен HLDS Update Tool

set HLDSTAEGET=f:\hldsupdatetool

rem // Укажите вместо - f:\srcds - вашу директорию,
rem // в которую у вас установлен сервер

set InstTARGET=f:\srcds

rem // Укажите вместо - tf - вашу версию игрового мода для обновления сервера:
rem // Counter-Strike Source - всем знакомый игровой мод - Counter-Strike: Source
rem // dods - игровой мод - Day of Defeat: Source
rem // garrysmod - игровой мод - Garry's Mod
rem // hl2mp - игровой мод - Half-Life 2 Deathmatch
rem // left4dead - игровой мод - Left 4 Dead
rem // left4dead2 - игровой мод - Left 4 Dead 2
rem // tf - игровой мод - Team Fortress 2
rem // Остальные игровые моды можно просмотреть командой
rem // f:\hldsupdatetool\HldsUpdateTool.exe -command list

set ModTARGET=dods

rem // Укажите любой другой используемый вами порт
set PortTARGET=27015

rem // Укажите имя карты, которую подгрузит сервер при старте
set MapTARGET=dod_flash

rem // Укажите максимальное количество игровых слотов
rem // для TF2 разработчики рекомендуют не более - 24

set PlrsTARGET=32

rem // Укажите имя игрового мода для обозначения сервера
rem // например - Counter-Strike: Source или Day of Defeat: Source

set NameModTARGET=Day of Defeat: Source

rem // Укажите вместо - tf - вашу версию игрового мода для запуска сервера:
rem // cstrike - всем знакомый игровой мод - Counter-Strike: Source
rem // dod - игровой мод - Day of Defeat: Source
rem // garrysmod - игровой мод - Garry's Mod
rem // hl2mp - игровой мод - Half-Life 2 Deathmatch
rem // left4dead - игровой мод - Left 4 Dead
rem // left4dead2 - игровой мод - Left 4 Dead 2
rem // tf - игровой мод - Team Fortress 2
rem // ну и т.д., и т.п.

set GameTARGET=dod
Скриншоты работы батника
Предположим, что произошло "крушение" сервера.
Изображение

Рестарт сервера начался с его обновления.
Изображение

;) Ждать осталось совсем чуть-чуть
Изображение

Сервер успешно обновился и запустился.
Изображение
Будет лучше, если для этого bat'ника создать ярлык и поместить его в папку автозагрузки вашей WINDOWS(!)

Для работы с bat'никами, скриптами и текстовыми файлами я использую надежный как "Т-34" - Notepad++ (текущая версия - 5.9.3) СКАЧАТЬ
Домашняя страница проекта - Notepad++
Notepad
Изображение

Для владельцев Windows серверов на которые установлен ещё и эмулятор, я предлагаю два варианта этого bat'ника. Пусть каждый выберет себе нужный.

[frame]bat'ник для сервера с установленным эмулятором eSTEAMATiON v. 2.0 RC9 Update 01

СКАЧАТЬ

Этот bat'ник, после обновления сервера до "финального" релиза переустановит ещё и эмулятор, т.к. при обновлении сервера происходит замена steam_api.dll. По просьбе друга я включил в bat'ник замену всех! файлов эмулятора, в том числе и удаление старого кэша - steamclient_SCI_cache_win.bin, вполне вероятно, что эта возможность удобней, чем когда этот процесс делается "в ручную".
В архиве присутствует уже - настроенный эмулятор eSTEAMATiON. Вы можете заменить в нём конфиги эмулятора на свои и конфиг сообщений (если вы таковыми пользуетесь). Для владельцев серверов TF2 - не забудьте "открыть" порт 6569, протокол UDP
Установка набора bat'ник плюс эмулятор совсем простая. Загрузив себе архив - распакуйте его, содержимое архива: папку emulyator и сам HLDSRun.bat поместите в папку - orangebox вашего сервера. Настройка bat'ника аналогична примеру приведённому в самом начале.
Работа bat'ника с установкой эмулятора eSTEAMATiON на сервер
Предположим, что произошло "крушение". Рестарт сервера начался с его обновления.
Изображение

Идет обновление.
Изображение

После успешного обновления сервера - эмулятор тоже переустановлен.
Перед запуском сервера был удалён старый кэш - steamclient_SCI_cache_win.bin
Изображение

Сервер успешно обновился и запустился.
Изображение
Если вы сами хотите настроить эмулятор eSTEAMATiON, то вам необходимо посетить эту тему - > eSTEAMATiON < - сами отслеживайте выход новых релизов эмулятора.
Своевременно обновляйте соответствующие конфиги и библиотеки эмулятора в папке автоподмены (или - автоустановки) - emulyator.

Будет лучше, если для этого bat'ника создать ярлык и поместить его в папку автозагрузки вашей WINDOWS(!)[/frame]
[frame]bat'ник для сервера с установленным эмулятором [RevEmu] REVOLUTiON Emulator 9.85 11.07.2011

СКАЧАТЬ

Этот bat'ник после обновления сервера до "финального" релиза, так же переустановит эмулятор, т.к. при обновлении сервера происходит замена steam.dll и steamclient.dll.
В архиве уже настроенный эмулятор RevEmu.
Установка набора bat'ник плюс эмулятор совсем простая. Загрузив себе архив - распакуйте его, содержимое архива: папку emulyator и сам HLDSRun.bat поместите в папку - orangebox вашего сервера. Настройка bat'ника аналогична примеру приведённому в самом начале.
Работа bat'ника с установкой эмулятора RevEmu на сервер
Предположим, что произошло "крушение". Рестарт сервера начался с его обновления.
Изображение

После успешного обновления сервера эмулятор тоже переустановлен. Идет запуск сервера
Изображение

Сервер успешно обновился и запустился.
Изображение
Если вы сами хотите настроить эмулятор RevEmu, то вам необходимо посетить эту тему - > [RevEmu] REVOLUTiON Emulator < - сами отслеживайте выход новых релизов эмулятора.
Своевременно обновляйте соответствующие библиотеки эмулятора в папке автоподмены (или - автоустановки) - emulyator.

Будет лучше, если для этого bat'ника создать ярлык и поместить его в папку автозагрузки вашей WINDOWS(!)[/frame]
P.S.
Не забудьте про редактирование bat'ника под свой сервер!
Изображение

НАПОМНЮ, что никаких пробелов после знака = быть не должно!!!

Правильно:
set ModTARGET=tf

Неправильно:
set ModTARGET= tf
Полезные ссылки для работы с архивами:
7-zip 9.20 x64 СКАЧАТЬ
7-zip 9.20 x86 СКАЧАТЬ
WinRAR 3.93 x64 russian СКАЧАТЬ
WinRAR 3.93 x86 russian СКАЧАТЬ
Ключик для WinRAR 3.93 СКАЧАТЬ

Желаю успехов.
Благодарности
Выражаю искреннюю благодарность всем, кто помогает другим

* товарищу bir3yk - за эмулятор [RevEmu] REVOLUTiON Emulator

* товарищу vityan666 - за эмулятор eSTEAMATiON и за его огромный вклад в развитие большинства проектов этого форума

* всем администраторам и модераторам, кто своим трудом поддерживает весь этот форум в надлежащем порядке

* авторам приложений упоминавшихся в этом мануале
Последний раз редактировалось Grizli777 19.09.2011, 18:19, всего редактировалось 9 раз.
Вы что думаете, я за вас буду свою работу делать?

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#2 Сообщение 11.12.2010, 14:19

Grizli777 :good:
Изображение

memcpy
Сержант
Сержант
Сообщения: 39
Зарегистрирован: 20.04.2009
Поблагодарили: 1 раз

#3 Сообщение 11.12.2010, 22:22

Grizli777
уже третий мануал на 5+

Аватара пользователя
A.D
Модератор
Модератор
Сообщения: 528
Зарегистрирован: 07.11.2008
Откуда: Россия
Поблагодарили: 59 раз
Контактная информация:

#4 Сообщение 12.12.2010, 00:44

Grizli777
Цель твоих постов? Зачем ты все это постиш?
Есть вопросы связанные играми на Linux? Задавай постараюсь помочь!

SAS123
Лейтенант
Лейтенант
Сообщения: 143
Зарегистрирован: 02.01.2006
Благодарил (а): 3 раза
Поблагодарили: 4 раза
Контактная информация:

#5 Сообщение 12.12.2010, 04:29

Вот пример батника для CSS, который не надо править, просто поместить в паку с HldsUpdateTool.exe и запустить:
hlupdate-run.bat
@echo off

set hlupdate=hldsupdatetool.exe
set game="Counter-Strike Source"

if exist %hlupdate% (
goto hlupdateaction
) else (
goto file-error
)

:hlupdateaction
%hlupdate% -command update -game %game% -dir .
goto end

:file-error
echo.
echo.
echo "Error! File %hlupdate% doesn't found in current directory..."
echo.
goto end

:end
pause
exit

Аватара пользователя
Grizli777
Капитан
Капитан
Сообщения: 465
Зарегистрирован: 22.06.2010
Откуда: World Wide Web

#6 Сообщение 12.12.2010, 20:46

bir3yk и memcpy - спасибо.

sluga666 - цель одна - оказать помощь другим людям, которым эта информация будет полезна.
Вы что думаете, я за вас буду свою работу делать?

2472
Нович0к
Нович0к
Сообщения: 1
Зарегистрирован: 21.03.2010

#7 Сообщение 02.01.2011, 18:27

такой вопрос, можно ли в батнике прописать пороль для сервера(игроков)?

Аватара пользователя
Grizli777
Капитан
Капитан
Сообщения: 465
Зарегистрирован: 22.06.2010
Откуда: World Wide Web

#8 Сообщение 02.01.2011, 20:52

Если вы имеете в виду команду на запуск сервера указанную в bat'нике, то да. Но мне кажется, самый простой вариант, указать это все в серверном конфиге - server.cfg
Вы что думаете, я за вас буду свою работу делать?

Аватара пользователя
Targon
Сержант
Сержант
Сообщения: 71
Зарегистрирован: 16.09.2010

#9 Сообщение 03.01.2011, 11:56

ну допустим сервер выдал ошибку ... память не может быть read ну и.т.д

Так вот у меня такой вопрос. Бывает такое происходит и сервер ждет когда нажмут кнопку "ок" чтобы сервер перезагрузился.

Скажите пожалуйста ... он закрывает сам ошибку или надо зайти в комп и нажать ему на кнопку. Если надо нажимать за него ,то этот батник полная шляпа.

Аватара пользователя
Grizli777
Капитан
Капитан
Сообщения: 465
Зарегистрирован: 22.06.2010
Откуда: World Wide Web

#10 Сообщение 04.01.2011, 15:28

А зачем на сервер пихать столько "говна" что он так у вас "умирает"?
Вы что думаете, я за вас буду свою работу делать?

Аватара пользователя
Targon
Сержант
Сержант
Сообщения: 71
Зарегистрирован: 16.09.2010

#11 Сообщение 06.01.2011, 21:48

Grizli777 писал(а):А зачем на сервер пихать столько "говна" что он так у вас "умирает"?
на моём сервере не стоит говно ,а плагин ,который не даёт игроков в режиме versus выпинывать игроков из сервере + hlstatsx с фильтром чата.
Всё самое нужное. А идиотские плагины ,типо замена звуков и мега мутанты у меня не стоят.

Аватара пользователя
Grizli777
Капитан
Капитан
Сообщения: 465
Зарегистрирован: 22.06.2010
Откуда: World Wide Web

#12 Сообщение 26.01.2011, 05:31

Targon - раз уж на то пошло, не проще ли вам в таком случае добавить в конце команды на запуск вашего сервера этот параметр -nocrashdialog
Но я бы на вашем месте, всё-таки разобрался с причиной появления ошибок, указанных вами.
Вы что думаете, я за вас буду свою работу делать?

Аватара пользователя
Fascist
Нович0к
Нович0к
Сообщения: 26
Зарегистрирован: 27.04.2005

#13 Сообщение 26.02.2011, 01:18

bat'ник, который в случае непредвиденной остановки или другого "краха" вашего сервера запустит его в работу
если сервер завис а процесс не завершился, этот bat'ник его не перезапустит
но могу подкинуть совет, можно реализовать периодический опрос сервера с помощью server queries и если сервер не отвечает на запрос, значит он завис, убиваем процесс, bat'ник после завершения процесса сам его перезапустит

Ответить