Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

Создание bat файла

, Mr.Dmitry специально для c-s.net.ua
Статус пользователя Mr.Dmitry
сообщение 19.2.2011, 15:41
Сообщение #1


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Создание bat файла

И так в этой теме я хочу поговорить о создании bat файла для запуска сервера Counter-Strike. Для того чтобы создать пустой bat файл произведем следующие действия. В папке с сервером (там, где лежит файл hlds.exe) создаем пустой текстовый файл.

Запускаем его при помощи блокнота.

В верхнем меню выбираем пункт файлы > сохранить как.

В поле имя файла пишем start.bat. Тип файла выбираем все файлы и нажимаем сохранить.

Bat файл готов!


Теперь нам нужно запустить сам сервер. Вписываем в наш созданный bat файл следующую строку
Код
START /HIGH  hlds.exe -game cstrike +port 27015 +map de_dust2_2x2_hama +rcon_password 32167 +maxplayers 6 -noipx -console


Команда start /HIGH - говорит о том что мы должны запустить наш сервер с высоким приоритетом. А о параметрах сервера говорилась уже не раз на нашем форуме.

Но я думаю, что это большинство из вас знает, поэтому я продолжу эту статью.

Наверное многим хотелось бы запустить через 1 bat файл несколько серверов с разными портами и к каждому подключить hltv? )) Сейчас мы это реализуем. Удаляем содержимое
Нашего файла и пишем вот так.
Код
[code]
title "START SERVER COUNTER-STRIKE"
rem "Server one"
start /high hlds.exe -game cstrike +port 27015 +map de_dust2 +maxplayers 32 -nopix -console
@echo off
@ping 127.0.0.1 -n 10 2> nul > nul
rem ”HLTV One”
Start /MIN/HIGH hltv.exe +connect 127.0.0.1:27015 -port 27020 +record hltv_  -nomaster
@echo off
@ping 127.0.0.1 -n 5 2> nul > nul
rem  "Server two"
start /high hlds.exe -game cstrike +port 27016 +map de_dust2 +maxplayers 32 -nopix -console
@echo off
@ping 127.0.0.1 -n 10 2> nul > nul
rem ”HLTV two”
Start /MIN/HIGH hltv.exe +connect 127.0.0.1:27016 -port 27021 +record hltv_ -nomaster


Пояснение к коду. В начале запускается 1 сервер на порту 27015 через 10 секунд подключается hltv на 1 сервер (порт hltv 27020). Через некоторое время hltv начинает запись демки с названием hltv_-дата время-карта.dem. Через 5 секунд запускается второй сервер с подключением к нему hltv.

Более подробное описание.

start /high hlds.exe -game cstrike +port 27015 +map de_dust2 +maxplayers 32 -nopix -console
Запускает 1 сервер с высоким приоритетом на порту 27015
строка
@echo off
@ping 127.0.0.1 -n 12 2> nul > nul - выступает в качестве таймера. Чтоб все не запускалось одновременно, за время через которое откроется второй сервер, отвечает строка -n 12. Если поставишь строку -n 5 то второй сервер откроется через 5 сек )
Start /MIN/HIGH hltv.exe +connect 127.0.0.1:27015 -port 27020 +record hltv_ -nomaster
Подключение к 1 серверу HLTV

ну и запуск собственно второго сервера с подключением hltv
START "Server two" /HIGH hlds.exe -game cstrike +port 27016 +map de_dust2 +rcon_password 32167 +maxplayers 6 -noipx -console
Start /MIN/HIGH hltv.exe +connect 127.0.0.1:27016-port 27021 +record hltv_ -nomaster

Надеюсь эта статья вам поможет ) Спасибо за внимание

Отредактировал: Mr.Dmitry, - 5.9.2011, 22:07
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 16 раз
   Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 4.3.2011, 17:05
Сообщение #2


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

И так по просьбе некоторых форумчан, я хочу выложить еще один расширенный скрипт для запуска сервера.

Расширенный скрипт для запуска сервера



О том как создать bat файл я писал в 1 посте. Здесь я только опишу сам скрипт. Скрипт позволяет запустить несколько серверов. Подключить к ним демку (HLTV PROXY) ну и естественно отключить сервер и демку.

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



Теперь настраиваем все под себя:



Настройки
rem Port server
set sum_port=27015 - начальный порт сервера. То есть после запуска 1 сервер будет иметь порт 27015 второ 27016 и т.д

rem Port HLTV PROXY
set sum_hltv_port=27020 начальный порт демки. То есть после запуска 1 сервер будет иметь порт 27020 второ 27021 и т.д

rem ip connect HLTV PROXY from server
set connect=127.0.0.1 - ip адрес сервера к которому будет цеплятся hltv.

rem settings start from server
set server=/high hlds.exe -game cstrike +map de_dust2 +maxplayers 24 -nopix -console -Это параметры запуска сервера. Параметр -port писать не нужно. Больше о параметрах запуска сервера вы можете узнать на нашем форуме, воспользовавшись поиском.

rem settings start from HLTV Proxy
set hltv=/MIN/HIGH hltv.exe +record hltv_ -nomaster -Это параметры запуска hltv. Параметр +port писать не нужно. Больше о параметрах запуска hltv вы можете узнать на нашем форуме, воспользовавшись поиском.

rem dirrectory of file playing from server on
set sound_on=F:\\games\\Counter-Strike\\cstrike\\sound\\hostage\\hos1.wav путь до файла который будет проигрываться при включении сервера
rem dirrectory of file playing from server off
set sound_off=F:\\games\\Counter-Strike\\cstrike\\sound\\hostage\\hos2.wav путь до файла который будет проигрываться при выключении сервера
rem dirrectory of file playing from hltv on
set sound_hltv_on=F:\\games\\Counter-Strike\\cstrike\\sound\\hostage\\hos3.wav путь до файла который будет проигрываться при включении hltv
rem dirrectory of file playing from hltv off
set sound_hltv_off=F:\\games\\Counter-Strike\\cstrike\\sound\\hostage\\hos4.wav путь до файла который будет проигрываться при выключении hltv

Собственно это все настройки. Просто сохраняем файла сочетанием клавишь на клавиатуре ctrl+s.

Ниже вы можете увидеть исходники скрипта

Исходники срипта
Код
@ECHO OFF
cls
TITLE "START SERVER COUNTER-STRIKE"

rem Settings
rem Port server
set sum_port=27015
rem Port HLTV PROXY
set sum_hltv_port=27020
rem  ip connect HLTV PROXY from server
set connect=127.0.0.1
rem settings start from server
set server=/high hlds.exe -game cstrike +map de_dust2 +maxplayers 24 -nopix -console
rem settings start from  HLTV Proxy
set hltv=/MIN/HIGH hltv.exe +record hltv_  -nomaster
rem dirrectory of file playing from server on
set sound_on=F:\games\Counter-Strike\cstrike\sound\hostage\hos1.wav
rem dirrectory of file playing from server off
set sound_off=F:\games\Counter-Strike\cstrike\sound\hostage\hos2.wav
rem dirrectory of file playing from hltv on
set sound_hltv_on=F:\games\Counter-Strike\cstrike\sound\hostage\hos3.wav
rem dirrectory of file playing from hltv off
set sound_hltv_off=F:\games\Counter-Strike\cstrike\sound\hostage\hos4.wav
rem file basic of playing sound
set basic=basic.vbs
set result_server=0
set result_hltv=0
rem end

rem Function Menu
:MENU
cls
set k=0
set n=0
set answer=9
ECHO.
ECHO 1. Включить сервер
IF NOT %result_server%==%result_hltv% (
Echo 2. Включить HLTV Proxy
)
if exist hlds.txt (
Echo 3. Выключить сервер
)
if exist hltv.txt (
Echo 4. Выключить HLTV Proxy
)
ECHO 0. Выйти
ECHO.
ECHO.
set /p answer=Сделайте ваш выбор:

rem start server
if "%answer%" == "1" (
cls
if not exist hlds.txt (
    set /a result_server+=1
    start %server% +port %sum_port%
    for /f "tokens=2" %%i in (' tasklist ^| findstr "hlds.exe" ') do 1>hlds.txt echo 1 %sum_port% %%i
) else goto:start_serv
)


rem start hltv
if "%answer%" == "2" (
IF %result_server%==%result_hltv% (
  ECHO не должно запустится
) else (
if not exist hltv.txt (
     set /a result_hltv+=1
     set /a serv_hltv+=1
    start %hltv% -port %sum_hltv_port% +connect %connect%:%serv_hltv%
    for /f "tokens=2" %%i in (' tasklist ^| findstr "hltv.exe" ') do 1>hltv.txt echo 1 %sum_hltv_port% %%i
    ) else goto:start_hltv
)
)

rem off server
if "%answer%" == "3" (
cls
ECHO.
ECHO Выберите порт для отключения
setlocal enabledelayedexpansion
for /f "tokens=1,2" %%i in (hlds.txt) do (
    set /a n+=1
    echo %%i %%j
)
Echo 0. Выход
set /p answer_off_serv=Сделайте ваш выбор:
GOTO kill_serv
)

rem off hltv
if "%answer%" == "4" (
cls
ECHO.
ECHO Выберите порт для отключения
setlocal enabledelayedexpansion
for /f "tokens=1,2" %%i in (hltv.txt) do (
    set /a n+=1
    echo %%i %%j
)
Echo 0. Выход
set /p answer_off_hltv=Сделайте ваш выбор:
GOTO kill_hltv
)

rem not answer
if NOT "%answer%" == "0" (
GOTO MENU
)
if NOT "%answer%" == "1" (
GOTO MENU
)
if NOT "%answer%" == "2" (
GOTO MENU
)
if NOT "%answer%" == "3" (
GOTO MENU
)
if NOT "%answer%" == "4" (
GOTO MENU
)
if NOT "%answer%" == "5" (
GOTO MENU
)
if NOT "%answer%" == "6" (
GOTO MENU
)
if NOT "%answer%" == "9" (
GOTO MENU
)

REM Function create basic
:BEEP
ECHO Set Obj = CreateObject("WScript.Shell") >>%basic%
if "%answer%" == "1" (
set sound=%sound_on%
)
if "%answer%" == "2" (
set sound=%sound_hltv_on%
)
if "%answer%" == "3" (
set sound=%sound_off%
)
if "%answer%" == "4" (
set sound=%sound_hltv_off%
)
if "%answer%" == "5" (
set sound=%sound_off%
)
if "%answer%" == "6" (
set sound=%sound_hltv_off%
)
ECHO.Obj.Run """C:\Program Files\Windows Media Player\wmplayer.exe"" ""%sound%""", 0 >>%basic%
start %basic%
@ping 127.0.0.1 -n 2 2> nul > nul
del %basic%
GOTO :MENU

rem Start server and write Pid and Port server
:start_serv
set /a result_server+=1
for /f "tokens=2" %%i in (hlds.txt) do set /a port=%%i+1
start %server% -port %port%
for /f "tokens=1,3" %%i in (hlds.txt) do (
    
    set /a num=%%i+1
    for /f "tokens=2" %%k in (' tasklist ^| findstr "hlds.exe" ') do (
        
        if "%%j"=="%%k" (set "pid=") else (set "pid=%%k")
    
    )
    
)
1>>hlds.txt echo %num% %port% %pid%
GOTO BEEP
GOTO MENU


:: Kill proccess of file hlds.txt
:kill_serv
1>nul findstr /b "\<2\>" hlds.txt || (
    
    1>nul taskkill /im hlds.exe
    del hlds.txt
    GOTO BEEP
GOTO MENU
)
for /f "tokens=3" %%i in (' findstr /b "%answer_off_serv%" hlds.txt ') do (
    1>nul taskkill /pid %%i
    for /f "tokens=2,3" %%j in (' findstr /v "%%i" hlds.txt ') do (
        set /a cnt+=1
        1>>hlds.tmp echo !cnt! %%j %%k
))
move hlds.tmp hlds.txt
GOTO BEEP
GOTO MENU

rem Start hltv and write Pid and Port hltv
:start_hltv
set /a result_hltv+=1
set /a serv_hltv+=1
for /f "tokens=2" %%i in (hltv.txt) do set /a port_hl=%%i+1
start %hltv% -port %port_hl% +connect %connect%:%serv_hltv%
for /f "tokens=1,3" %%i in (hltv.txt) do (
    
    set /a num_hl=%%i+1
    for /f "tokens=2" %%k in (' tasklist ^| findstr "hltv.exe" ') do (
        
        if "%%j"=="%%k" (set "pid=") else (set "pid_hl=%%k")
    
    )
    
)
1>>hltv.txt echo %num_hl% %port_hl% %pid_hl%
GOTO BEEP
GOTO MENU

:: Kill process of file hltv.txt
:kill_hltv
set /a result_hltv=result_hltv-1
1>nul findstr /b "\<2\>" hltv.txt || (
    1>nul taskkill /im hltv.exe
    del hltv.txt
    GOTO BEEP
GOTO MENU
)
for /f "tokens=3" %%i in (' findstr /b "%answer_off_hltv%" hltv.txt ') do (
    1>nul taskkill /pid %%i
    for /f "tokens=2,3" %%j in (' findstr /v "%%i" hltv.txt ') do (
        set /a cnt+=1
        1>>hltv.tmp echo !cnt! %%j %%k
))
move hltv.tmp hltv.txt
GOTO BEEP
GOTO MENU


Все писалось на скорую руку, так что жду ваших комментариев.

Отредактировал: Mr.Dmitry, - 4.3.2011, 17:17
Прикрепленные файлы:
Прикрепленный файл  start.rar ( 1,72 килобайт ) Кол-во скачиваний: 235
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 4 раз
   + Цитировать сообщение
Статус пользователя DjUm
сообщение 5.3.2011, 16:48
Сообщение #3


Стаж: 16 лет

Сообщений: 189
Благодарностей: 14
Полезность: < 0

derisive.gif я даже помню с батника плагины устанавливал) удобно)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя IGLA_VIP
сообщение 6.3.2011, 11:40
Сообщение #4


Стаж: 15 лет

Сообщений: 146
Благодарностей: 25
Полезность: 142

Мне пожалуйста покажите код который отвечает за проигрывании музыки, во врем включения и отключения сервера....
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 6.3.2011, 12:58
Сообщение #5


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Цитата(IGLA_VIP @ 6.3.2011, 11:40) *
Мне пожалуйста покажите код который отвечает за проигрывании музыки, во врем включения и отключения сервера....

Ну весь исходник же есть. Можно было и самому найти. Вообще на cmd нельзя проигрывать музыку чтоб не открылся какой то проигрыватель. Можно выдать пищалку но не музыку. Поэтому в этом скрипте создается vbs скрипт. Запускается, проигрывает музыку, уничтожается. Код

Код
REM Function create basic
:BEEP
ECHO Set Obj = CreateObject("WScript.Shell") >>%basic%
if "%answer%" == "1" (
set sound=%sound_on%
)
if "%answer%" == "2" (
set sound=%sound_hltv_on%
)
if "%answer%" == "3" (
set sound=%sound_off%
)
if "%answer%" == "4" (
set sound=%sound_hltv_off%
)
if "%answer%" == "5" (
set sound=%sound_off%
)
if "%answer%" == "6" (
set sound=%sound_hltv_off%
)
ECHO.Obj.Run """C:\Program Files\Windows Media Player\wmplayer.exe"" ""%sound%""", 0 >>%basic%
start %basic%
@ping 127.0.0.1 -n 2 2> nul > nul
del %basic%
GOTO :MENU


Если разобрать более детально.

ECHO Set Obj = CreateObject("WScript.Shell") >>%basic% подготавливаем скрипт к работе с shell записываем строку в файл скрипта

if "%answer%"... определяем выбранное действие. То есть пытаемся мы отключить сервер или отключить.
ECHO.Obj.Run """C:\Program Files\Windows Media Player\wmplayer.exe"" ""%sound%""", 0 >>%basic% - в файл basic.vbs записываем строку запуска windows media player в скрытом режиме с музыкой записанной в переменной sound

start %basic% - запускаем созданный скрипт.
@ping 127.0.0.1 -n 2 2> nul > nul - задершка в 2 секунды
del %basic% - удаляем созданный скрипт
GOTO :MENU - снова отображаем меню

Отредактировал: Mr.Dmitry, - 6.3.2011, 12:59
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя IGLA_VIP
сообщение 7.3.2011, 19:13
Сообщение #6


Стаж: 15 лет

Сообщений: 146
Благодарностей: 25
Полезность: 142

фух нашел тему эту )
А можно еще сделать чтобы этот проигрыватель Windows Media проигрывал в скрытом режиме песню и однократно принудительно !!

Отредактировал: IGLA_VIP, - 8.3.2011, 11:25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 8.3.2011, 14:32
Сообщение #7


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Цитата(IGLA_VIP @ 7.3.2011, 19:13) *
фух нашел тему эту )
А можно еще сделать чтобы этот проигрыватель Windows Media проигрывал в скрытом режиме песню и однократно принудительно !!

Ну так он и проигрывает 1 раз в скрытом режиме и принудительно что ты хочешь.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя IGLA_VIP
сообщение 12.3.2011, 20:59
Сообщение #8


Стаж: 15 лет

Сообщений: 146
Благодарностей: 25
Полезность: 142

Хм странно а у меня открывается проигрыватель Windows Media и повторяется бесконечно звук......
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 13.3.2011, 12:24
Сообщение #9


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Цитата(IGLA_VIP @ 12.3.2011, 21:59) *
Хм странно а у меня открывается проигрыватель Windows Media и повторяется бесконечно звук......

хм, тестировал на компе и ноуте, на ноуте win 7 на компе win xp. И там и там у меня ничего не выскакивало (
вот файл который проигрывает звук, открой его блокнотом, измени строчку F:\games\Counter-Strike\ на свой путь до кс. cstrike не трогай, проверь будет проигрываться в скрытом режиме или нет

Отредактировал: Mr.Dmitry, - 13.3.2011, 12:28
Прикрепленные файлы:
Прикрепленный файл  basic.rar ( 233 байт ) Кол-во скачиваний: 29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя IGLA_VIP
сообщение 13.3.2011, 12:47
Сообщение #10


Стаж: 15 лет

Сообщений: 146
Благодарностей: 25
Полезность: 142

Воспроизводит в скрытом режиме, тока у меня повторяет бесконечно раз звук из за того что стоит на повтор в проигрывателе, а можно сделать чтобы он принудительно заставлял один раз воспроизводить?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 13.3.2011, 13:08
Сообщение #11


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Придумал еще интересную штуку.

если заменить строку


Код
rem полный путь до файла воспроизводимого при включении сервера
set sound_on=server on
rem полный путь до файла воспроизводимого при выключении сервера
set sound_off=server off
rem полный путь до файла воспроизводимого при включении hltv
set sound_hltv_on=HLTV Proxy on
rem полный путь до файла воспроизводимого при выключении hltv
set sound_hltv_off=hltv proxy off

....


REM Function create basic
:BEEP
ECHO Set Obj = CreateObject("WScript.Shell") >>%basic%
if "%answer%" == "1" (
set sound=%sound_on%
)
if "%answer%" == "2" (
set sound=%sound_hltv_on%
)
if "%answer%" == "3" (
set sound=%sound_off%
)
if "%answer%" == "4" (
set sound=%sound_hltv_off%
)
if "%answer%" == "5" (
set sound=%sound_off%
)
if "%answer%" == "6" (
set sound=%sound_hltv_off%
)
ECHO.Obj.Run """C:\Program Files\Windows Media Player\wmplayer.exe"" ""%sound%""", 0 >>%basic%
start %basic%
@ping 127.0.0.1 -n 2 2> nul > nul
del %basic%
GOTO :MENU


На

Цитата
EM Function create basic
:BEEP
if "%answer%" == "1" (
set sound=%sound_on%
)
if "%answer%" == "2" (
set sound=%sound_hltv_on%
)
if "%answer%" == "3" (
set sound=%sound_off%
)
if "%answer%" == "4" (
set sound=%sound_hltv_off%
)
if "%answer%" == "5" (
set sound=%sound_off%
)
if "%answer%" == "6" (
set sound=%sound_hltv_off%
)
ECHO CreateObject("SAPI.SpVoice").Speak"%answer%" >>%basic%
GOTO :MENU


Теперь компьютер будет проговаривать надпись которая хранится в переменной answer ))) %answer% можно заменить на любую другую надпись на английском языке


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

Отредактировал: Mr.Dmitry, - 13.3.2011, 13:09
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя fRk
сообщение 6.2.2012, 3:28
Сообщение #12
Стаж: 16 лет

Сообщений: 32
Благодарностей: 0
Полезность: 2

А можно для каждого сервера через батник поменять название сервера?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 6.2.2012, 4:07
Сообщение #13


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Цитата(fRk @ 6.2.2012, 7:28) *
А можно для каждого сервера через батник поменять название сервера?

Можно. сегодня завтро напишу как это сделать
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя fRk
сообщение 7.2.2012, 12:35
Сообщение #14
Стаж: 16 лет

Сообщений: 32
Благодарностей: 0
Полезность: 2

Все, разобрался. создал несколько cfg в папке cstrike и к к ним прописал в батнике +exec 1.cfg, +exec 2.cfg и т.д.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 7.2.2012, 13:26
Сообщение #15


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Цитата(fRk @ 7.2.2012, 16:35) *
Все, разобрался. создал несколько cfg в папке cstrike и к к ним прописал в батнике +exec 1.cfg, +exec 2.cfg и т.д.

Ну а если через скрипт то нужно изменить строчку

Код
set server=/high hlds.exe -game cstrike +map de_dust2 +maxplayers 24 -nopix -console


на

Код
set server=/high hlds.exe -game cstrike +map de_dust2 +maxplayers 24 -nopix -console +%name%


и заменить


Код
if "%answer%" == "1" (
cls
if not exist hlds.txt (
    set /a result_server+=1
    start %server% +port %sum_port%
    for /f "tokens=2" %%i in (' tasklist ^| findstr "hlds.exe" ') do 1>hlds.txt echo 1 %sum_port% %%i
) else goto:start_serv
)

на

Код
if "%answer%" == "1" (
cls
Echo Введите название сервера:
set /p name=Сделайте ваш выбор:
cls
if not exist hlds.txt (
    set /a result_server+=1
    start %server% +port %sum_port%
    for /f "tokens=2" %%i in (' tasklist ^| findstr "hlds.exe" ') do 1>hlds.txt echo 1 %sum_port% %%i
) else goto:start_serv
)


Теперь если выбрать пункт создать сервер, то скрипт будет просить ввести название сервера. а после этого уже запускать сервер.

Отредактировал: Mr.Dmitry, - 7.2.2012, 13:27
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя nbown93
сообщение 29.2.2012, 20:25
Сообщение #16


Стаж: 14 лет

Сообщений: 1
Благодарностей: 2
Полезность: 0

Вот от меня батничек...

Создаем config.ini файл...
Код
game=cstrike
lan=yes
port=27016
maxplayers=24
map=de_dust2
other=-noipx -insecure -nomaster


Создаем server_start.bat файл...
Код
@echo off
title *** [BAT] Server Start Tool [Crahed] ***
setlocal

set sConfig=config.ini

if exist "%sConfig%" (
    for /f "usebackq tokens=1,2,3,4,5,6 eol=; delims==" %%i in ("%sConfig%") do set %%i=%%j
)

if defined Game echo * Game: %Game%
if defined Port echo * Port: %Port%
if defined Lan echo * Lan: %Lan%
if defined Maxplayers echo * Maxplayers: %Maxplayers%
if defined Map echo * Map: %Map%
if defined Other echo * Other: %Other%

if not "%Lan%"=="yes" goto lanyes
set Lan="1"
goto lan
:lanyes

if not "%Lan%"=="no" goto lanon
set Lan="0"
goto lan
:lanon

:lan
echo Config File Loaded...
:server
echo Start server [Time:%time%][Date:%date%].
start/high /wait hlds.exe -game %Game% -console +sv_lan %Lan% -port %Port% +maxplayers %Maxplayers% +map %Map% %Other%
echo Crahed server or exit [Time:%time%][Date:%date%].
goto server


Отредактировал: nbown93, - 29.2.2012, 20:27
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 1.3.2012, 14:13
Сообщение #17


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Цитата(nbown93 @ 1.3.2012, 0:25) *
Вот от меня батничек...

Создаем config.ini файл...
Код
game=cstrike
lan=yes
port=27016
maxplayers=24
map=de_dust2
other=-noipx -insecure -nomaster


Создаем server_start.bat файл...
Код
@echo off
title *** [BAT] Server Start Tool [Crahed] ***
setlocal

set sConfig=config.ini

if exist "%sConfig%" (
    for /f "usebackq tokens=1,2,3,4,5,6 eol=; delims==" %%i in ("%sConfig%") do set %%i=%%j
)

if defined Game echo * Game: %Game%
if defined Port echo * Port: %Port%
if defined Lan echo * Lan: %Lan%
if defined Maxplayers echo * Maxplayers: %Maxplayers%
if defined Map echo * Map: %Map%
if defined Other echo * Other: %Other%

if not "%Lan%"=="yes" goto lanyes
set Lan="1"
goto lan
:lanyes

if not "%Lan%"=="no" goto lanon
set Lan="0"
goto lan
:lanon

:lan
echo Config File Loaded...
:server
echo Start server [Time:%time%][Date:%date%].
start/high /wait hlds.exe -game %Game% -console +sv_lan %Lan% -port %Port% +maxplayers %Maxplayers% +map %Map% %Other%
echo Crahed server or exit [Time:%time%][Date:%date%].
goto server

Хм. Клево. Но зачем твой bat файл если есть мой? ) Не то что бы я как то пытаюсь патентоваться, но помойму мой bat лучше ) Хотя бы тем что у меня можно создать неограниченое количество серверов и hltv не переписывая не каких файлов конфигов, а также можно закрыть любой из уже созданных серверов или hltv.

Отредактировал: Mr.Dmitry, - 1.3.2012, 14:14
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nervolin
сообщение 15.3.2012, 8:19
Сообщение #18
Стаж: 18 лет

Сообщений: 21
Благодарностей: 2
Полезность: 73

Я не понимаю для чего пишут Start /MIN/HIGH когда можно написать просто Start /HIGH, объясните для чего добавляют перед high MIN?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Flash
сообщение 15.3.2012, 9:32
Сообщение #19
Стаж: 16 лет

Сообщений: 793
Благодарности: выкл.

Nervolin,
если не ошибаюсь - что бы свернуть окно
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя LaFA
сообщение 15.3.2012, 10:01
Сообщение #20


Стаж: 16 лет

Сообщений: 4505
Благодарностей: 3256
Полезность: 793

high - высокий приоритет процессу
min - открытие в свернутом режиме
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Тема закрытаНачать новую тему
 
0 пользователей и 2 гостей читают эту тему: