[Counter-Strike 1.6] Dedicated Server

Здесь хранится вся документация по созданию выделенных серверов
Сообщение
Автор
NeoXidant
Лейтенант
Лейтенант
Сообщения: 100
Зарегистрирован: 20.08.2009
Контактная информация:

#1 Сообщение 06.08.2008, 17:35

Изображение

  • Установка Half-Life Dedicated Server + Counter-Strike сервера.
[spoiler=""Установка и использование HLDSUpdateTool""][frame][/spoiler][spoiler=""HLDSUpdateTool (Windows)""]HLDSUpdateTool for Windows
Скачиваем сервер: Все команды прописываются в ярлыке HldsUpdateTool.exe
hldsupdatetool.exe -command update -game cstrike -verify_all -dir .
Если нужно скачать сервер не в каталог с программой, а в определенную папку, то вместо . нужно написать свой путь, например - "c:server" (нужно предварительно создать эту директорию)[/spoiler][spoiler=""HLDSUpdateTool (*nix)""]HLDSUpdateTool for *nix
mkdir srcds_l
cd srcds_l
Копируем hldsupdatetool.bin в созданную директорию srcds_l
chmod x hldsupdatetool.bin
./hldsupdatetool.bin
./steam
Далее действуем по Windows инструкции, заменив hldsupdatetool.exe на ./steam
./steam -command update -game cstrike -verify_all -dir "путь"
[/spoiler][spoiler=""Возможные ошибки""]
No installation record found at путь
Это не ошибка, а сообщение, о отсутствии записи об установки в указанной директории. Не обращайте внимания.
Unable to update: renamed HldsUpdateTool.exe but the file is still there
Если при запуске "hldsupdatetool.exe" в консоли появляется ошибка
Unable to update: renamed HldsUpdateTool.exe but the file is still there
То:
  1. Запустите "hldsupdatetool.exe", должны создаться 2 файла - "hldsupdatetoolNew" и "hldsupdatetoolTmp".
  2. Переименуйте "hldsupdatetoolNew.exe" в "hldsupdatetool1.exe".
  3. Запустите "hldsupdatetool1.exe".[/list:o]
Connection reset by peer
Скачиваем утилиту HLDSUpdate-Retry Tool (Windows)
Утилита должна быть в одной папке с hldsupdatetool.exe, далее запускаем с теми же параметрами.
hldsupdate-retry.exe -command update -game cstrike -verify_all -dir "путь"
Программа не качает файлы
Если вы уверенны, что дело не в роутере/фаерволле/брандмауэре, то переустановите программу, указав другой сервер (например Asia)
[/frame][/spoiler][spoiler=""Настройка сервера""]Для настройки сервера используется конфигурационный файл cstrikeserver.cfg
Ниже предоставлен server.cfg с рекомендуемыми настройками и описанием кваров.
[frame][/spoiler][spoiler=""server.cfg""]// Main settings
hostname "Название сервера" // Название Сервера
pausable "0" // Возможность ставить паузу
rcon_password "RCON пароль" // Пароль для управления сервером (RCON)
sv_rcon_maxfailures "3" // Лимит неверных авторизаций (RCON)
sv_rcon_banpenalty "60" // Время бана при превышении лимита неверных авторизаций (RCON)
decalfrequency "60" // Интервал для прорисовки спреев (кнопка T) (В секундах)
// sv_downloadurl "http://" // URL для быстрой скачки файлов с сервера (HTTP Fast Downloader)

// Server Masters
setmaster add "69.28.151.162"
setmaster add "207.173.177.11"
setmaster add "72.165.61.190"
setmaster add "213.239.209.221"
setmaster add "207.173.177.12"
setmaster add "hlmaster.jolt.co.uk"
setmaster add "65.73.232.251"
setmaster add "65.73.232.253"

// Server Logs
log "off" // Режим записи логов (On/Off=Вкл/Выкл)
mp_logdetail "0" // Детализированость логов
// 0=Отключение записи.
// 1=Запись вражеских атак.
// 2=Запись нападений товарищей.
// 3=Полная запись событий.
mp_logbans "0" // Запись в логи бан-событий (1/0=Вкл/Выкл)
mp_logecho "0" // Анонсировать события в консоли (1/0=Вкл/Выкл)
mp_log_onefile "0" // Единый файл для логов (1/0=Вкл/Выкл)
mp_logfile "0" // Запись логов сервера в файл (1/0=Вкл/Выкл)
mp_logmessages "0" // Возможность записывать сообщения (1/0=Вкл/Выкл)

// mp_ settings
mp_friendlyfire "1" // Огонь по своим (1/0=Вкл/Выкл)
mp_tkpunish "0" // Наказание Тим-Киллера (1/0=Вкл/Выкл)
mp_autokick "0" // Автокик при TK (1/0=Вкл/Выкл)
mp_hostagepenalty "0" // Кик за убийство заложников (1/0=Вкл/Выкл)
mp_autoteambalance "1" // Авто-Баланс комманд (1/0=Вкл/Выкл)
mp_limitteams "1" // Максимальный дис-балланс (0=Выкл)
mp_fadetoblack "0" // Затемнение экрана после смерти (1/0=Вкл/Выкл) (приоритет над mp_forcecamera)
mp_forcecamera "0" // Режим наблюдения после смерти (0=За всеми; 1=Только за товарищами)
mp_playerid "1" // Отображение имени игрока, при наведении на него прицела (0=Все; 1=Только товарищей; 2=Никто)
mp_startmoney "800" // Начальная сумма денег
mp_timelimit "60" // Длительность карты (В минутах)
mp_roundtime "2" // Длительность раунда (В минутах)
mp_freezetime "2" // Время простоя для закупки (В секундах)
mp_buytime "0.15" // Время на закупку в начале раунда (В минутах)
mp_c4timer "35" // Время таймера на бомбе (В секундах)
mp_chattime "10" // Время простоя в конце карты (В секундах)
mp_flashlight "1" // Использование фонарика (1/0=Вкл/Выкл)
mp_footsteps "1" // Звуки шагов (1/0=Вкл/Выкл)
mp_fraglimit "0" // Лимит фрагов (0=Выкл)
mp_winlimit "0" // Лимит побед (0=Выкл)
mp_maxrounds "0" // Лимит раундов (0=Выкл)
mp_autocrosshair "0" // Автоприцеливание (1/0=Вкл/Выкл)

// sv_ settings
sv_specnoclip "1" // Возможность передвижения в режиме наблюдения через стены (1/0=Вкл/Выкл)
sv_airmove "1" // Возможность управления перемещением во время полета (1/0=Вкл/Выкл)
sv_gravity "800" // Гравитация
sv_consistency "0" // Запрет на использование не стандартных моделей (1/0=Вкл/Выкл)
sv_cheats "0" // Встроенные консольные читы (1/0=Вкл/Выкл)
sv_aim "0" // Встроенный aim (1/0=Вкл/Выкл)
sv_voiceenable "1" // Возможность использования микрофона (1/0=Вкл/Выкл)
sv_alltalk "0" // Общие переговоры по микрофону (1/0=Вкл/Выкл)
sv_voicecodec "voice_speex" // Кодек для общения через микрофон
sv_region "3" // В каком регионе расположен сервер (3=Europe)
sv_contact "your@mail" // Ваш e-mail для обратной связи

// Optimizing server
sv_timeout "30" // Время, по истечении которого игрок отключается от сервера, если от него небыло полученно необходимого отклика (В секундах)
sv_allowupload "1" // Разрешить загрузку на сервер custom декалей (спрайты) (1/0=Вкл/Выкл)
sv_cacheencodedents "1" // Оптимизация во избежание лишних вызовов SendTable_Encode (1/0=Вкл/Выкл)
sv_unlag "1" // Лагокомпенсация
sv_maxunlag "0.5" // Значение лагокомпенсации (в секунду)
sv_minrate "0"
sv_maxrate "30000"
sv_minupdaterate "13"
sv_maxupdaterate "100"

// Sound settings
s_disable_a3d // Поддержка A3D (запрещен на CW) (s_enable/s_disable=Вкл/Выкл)
s_disable_eax // Поддержка EAX (увеличивает пинг; не поддерживается старыми звукавыми адаптерами) (s_enable/s_disable=Вкл/Выкл)

// Exec files on startup
exec "banned.cfg" // При чтении, загружает список забанненых по ID
exec "listip.cfg" // При чтении, загружает список забанненых по IP[/spoiler][/frame]Для определения оптимальных значений сетевых настроек рекомендуется использовать эту утилиту.
[frame][spoiler=""Half-Life Fast HTTP Asset Downloading""]Вместо скачивания при коннекте дополнительных ресурсов (карт, скинов, звуков и т.д.) напрямую с игрового сервера (в данном контексте с hlds), в Half-Life поддерживается скачивание с HTTP-сервера (т.е. с веб-сервера).

Скачивание через HTTP имеет три важных преимущества:
  • Скачивание дополнительных ресурсов не оказывает влияния на игровой сервер, т.к. передачу файлов осуществляет отдельный веб-сервер с дополнительными ресурсами
  • Игроки будут закачивать дополнительные ресурсы на максимально возможной для них скорости, что существенно ускорит процесс закачки
  • Игроки, закачивающие дополнительные ресурсы, не занимают слот на сервере
Настройка сервера на использование HTTP
  1. Выложите необходимые файлы на веб-сервер, сохраняя структуру каталогов. (можете просто скопировать папку cstrike, для безопасности, удалив в ней все, кроме папок maps, models, sound, sprites и файлов с расширением .wad)
  2. Установите серверную переменную sv_downloadurl в "http://АдресВашегоСервера/НазваниеПапки/".
  3. Для показа баннера, во время скачивания файлов, положите рисунок в формате GIF (340x56) в "cstrike/gfx/banner.gif"
Технические Детали
  • Максимальная длина значения переменной sv_downloadurl - 127 символов
  • Если соединяющийся игрок имеет файл с тем же именем, этот файл не будет переписан, скачивание этого файла будет пропущено.
  • Опасные файлы не могут быть скачаны (*.exe, *.vbs, etc)
[/frame][/spoiler][spoiler=""Запуск сервера""]Запускать сервер следует параметрами, настроенными с помощью этого шаблона: (прописывается в ярлыке hlds.exe)
[frame]-console +sv_lan 0 -game cstrike +maxplayers 21 +map de_dust2 +port 27015 -noipx[/frame]Рассмотрим подробнее:[frame]-console - консольный режим;
+sv_lan - проверка на принадлежность к подсети класса C;
-game cstrike - запуск мода Counter-Strike;
+maxplayers - максимальное кол-во игроков;
+map - начальная карта;
+port - порт, используемый сервером.
-noipx - отключение протокола IPX (более не актуален)[/frame][/spoiler]
  • Установка Metamod и подключение доп. модов.
[spoiler=""Установка Metamod""]Metamod-P for Windows[frame]
  1. Распаковать архив в cstrikeaddonsmetamod.
  2. В файле cstrikeliblist.gam заменить gamedll "dllsmp.dll" на gamedll "addonsmetamodmetamod.dll".
[/frame]Metamod-P for *nix[frame]
  1. Распаковать архив в cstrikeaddonsmetamod.
  2. В файле cstrikeliblist.gam заменить gamedll_linux "dlls/cs_i386.so" на gamedll_linux "addons/metamod/metamod_i386.so".
[/frame][/spoiler][spoiler=""Установка AMX Mod X""][frame][/spoiler]Установка AMX Mod X
Качаем AMXХ с оффициального сайта - www.amxmodx.org.

Нам понадобятся AMX Mod X Base (Windows/*nix) и Counter-Strike Addon (Windows/*nix)
Распаковываем архив amxmodx-1.8.1-base в директорию cstrike, amxmodx-1.8.1-cstrike распаковываем поверх.
Идем в папку cstrike/addons/metamod/, создаем файл plugins.ini, там прописываем строчку:
win32 addons/amxmodx/dlls/amxmodx_mm.dll - для Windows
linux addonsamxmodxdllsamxmodx_mm_i386.so - для *nix[/frame]
[frame]Настройка AMX Mod X
После установки, идем в папку csrtike/addons/amxmodx/configs
Открываем amxx.cfg и заменяем его содержимое следующем[spoiler=""amxx.cfg""]// AMX Mod X Конфигурационный Файл
echo Executing AMX Mod X Configuration File

// Параметры доступа для всех игроков по умолчанию (см. users.ini для получения информации по флагам)
//
// Значение по умолчанию: "z"
amx_default_access "z"

// Префикс setinfo который отвечает за хранение пароля (может быть изменено)
// Примечание: Префикс всегда должен быть подчеркнут (типо: "_")
// (Пример: setinfo _pw "password")
//
// Значение по умолчанию: "_pw"
amx_password_field "_pw"

// Тип авторизации на сервере
// 0 - Отключить авторизацию, игроки не проверяются (параметры доступа не применяются)
// 1 - Нормальный режим, флаги доступа применяются к аккаунтам
// 2 - Запретить заход на сервер без авторизации
//
// Значение по умолчанию: 1
amx_mode 1

// Анонсирование действий администрации
// 0 - Отключить
// 1 - Анонсировать без имени админа
// 2 - Анонсировать с именем админа
//
// Значение по умолчанию: 2
amx_show_activity 2

// Частота показа (в секундах) и текст бегущего сообщения
//
// Значение по умолчанию: "Welcome to %hostname% -- This server is using AMX Mod X" 600
amx_scrollmsg "Welcome to %hostname% -- This server is using AMX Mod X" 600

// Текст цветного сообщения (последний параметр - это цвет в RRRGGGBBB формате)
//
// Значения по умолчанию: "Welcome to %hostname%" "000255100"
// "This server is using AMX ModX
Visit <!-- m --><a class="postlink" href="http://www.amxmodx.org">http://www.amxmodx.org</a><!-- m -->" "000100255"
amx_imessage "Welcome to %hostname%" "000255100"
amx_imessage "This server is using AMX Mod X
Visit <!-- m --><a class="postlink" href="http://www.amxmodx.org">http://www.amxmodx.org</a><!-- m -->" "000100255"

// Частота показа цветного сообщения (в секундах)
//
// Значение по умолчанию: 180
amx_freq_imessage 180

// Время бана в главном ban меню (amx_banmenu)
// Используйте 0 для постоянного бана
// Значения по умолчанию: 0 5 10 15 30 45 60
amx_plmenu_bantimes 0 5 10 15 30 45 60

// Сила удара в главном slap меню (amx_slapmenu)
// Убийство автоматически выставлено первым значением
// Значения по умолчанию: 0 1 5
amx_plmenu_slapdmg 0 1 5

// Частота отправки сообщений игроками (в секундах) (защита от чат-флуда)
//
// Значение по умолчанию: 0.75
amx_flood_time 0.75

// Количество зарезервированных слотов.
//
// Значение по умолчанию: 0
amx_reservation 0

// Если установлено в 1, зарезервированные слоты скрыты.
// Если на сервере не осталось публичных и зарезервированных слотов, вы можете заходить на сервер через консольную команду
//
// Значение по умолчанию: 0
amx_hideslots 0

// Анонсирование оставшегося времени
// a - Белый текст
// b - Голос
// c - Не добавлять "remaining" (только в голосе)
// d - Не добавлять "hours/minutes/seconds" (только в голосе)
// e - Анонсировать время, если оно меньше заданного параметра
//
// Значение по умолчанию: "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11"
amx_time_display "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11"

// Анонсировать "say thetime" и "say timeleft" используя голос, установите в 0 для отключения.
//
// Значение по умолчанию: 1
amx_time_voice 1

// Минимальная задержка в секундах между двумя голосованиями
//
// Значение по умолчанию: 10
amx_vote_delay 10

// Продолжительность голосования
//
// Значение по умолчанию: 10
amx_vote_time 10

// Анонсировать кто, и за что проголосовал, установите в 0 чтобы отключить, в 1 чтобы включить.
//
// Значение по умолчанию: 1
amx_vote_answers 1

// Соотношение голосов для успешного голосования (0.40=40%)

// Значение по умолчанию: 0.40
amx_votekick_ratio 0.40

// Значение по умолчанию: 0.40
amx_voteban_ratio 0.40

// Значение по умолчанию: 0.40
amx_votemap_ratio 0.40

// Значение по умолчанию: 0.02
amx_vote_ratio 0.02

// Максимальное время, на которое может быть продлена карта
//
// Значение по умолчанию: 90
amx_extendmap_max 90

// Время, на которое продливается карта
//
// Значение по умолчанию: 15
amx_extendmap_step 15

// Если установлено в 0, игроки не могут выбрать их язык, они используют заранее установленный на сервере.
//
// Значение по умолчанию: 1
amx_client_languages 1

// Откладка плагинов
// 0 - Отключить откладку
// 1 - Включить откладку для плагинов с параметром "debug" в plugins.ini
// 2 - Включить откладку для всех плагинов
// Примечание - откладка сильно сказывается на быстродействии и стабильности сервера
//
// Значение по умолчанию: 1
amx_debug 1

// Откладка языка
// Для откладки языка напишите две буквы, обозначающие язык, между кавычками (Пример: "en", "de", и т.д.)
// "" отключение откладки
//
// Значение по умолчанию: ""
amx_mldebug ""

//
// Конфигурация дополнительных плагинов
//

// Тип записи csstats.dat.
// 0 - бинарник (рекомендуется)
// 1 - текстовый документ
//
csstats_storagetype 0

// Сброс статистики после смены карты
// 0 - Выключить
// 1 - Включить
//
csstats_reset 0

// Тип записи достижений в статистику
// 0 - по Нику (рекомендуется для Non-Steam серверов)
// 1 - по SteamID (рекомендуется для Steam серверов)
// 2 - по IP (не рекомендуется для использования)
//
// Значение по умолчанию: 1
csstats_rank 0

// Максимальное количество записей в файле статистике
// Примечание: При достижении указанного значения статистика обнуляется
//
// Значение по умолчанию: 3500
csstats_maxsize 15000

// Запись достижений ботов в общую статистику
//
// Значение по умолчанию: 0
csstats_rankbots 0

// Время отображения HUD-статистики
//
// Значение по умолчанию: 12.0
amx_statsx_duration 12.0

// Лимит отображения HUD-статистики до конца mp_freezetime
// При негативном значение, HUD-статистика очищается прежде, чем заканчивается freezetime (см server.cfg)
// Значение по умолчанию: -2.0
amx_statsx_freeze -2.0[/spoiler]Сохраняем, закрываем. Обязательно заменяем содержимое modules.ini следующим:
[spoiler=""modules.ini""];;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Для включения модуля, удалите комментарий (;) в начале строчки. ;;
;; Для отключения модуля, добавьте комментарий (;) в начале строчки.;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; -------------------------------------------------------------------
; Fun
; -------------------------------------------------------------------
fun_amxx

; -------------------------------------------------------------------
; Engine
; -------------------------------------------------------------------
engine_amxx

; -------------------------------------------------------------------
; Fakemeta
; -------------------------------------------------------------------
fakemeta_amxx

; -------------------------------------------------------------------
; Database Access
; -------------------------------------------------------------------
; MySQL
;mysql_amxx
; PostgreSQL
;pgsql_amxx
; Microsoft SQL
;mssql_amxx
; SQLite
;sqlite_amxx

; -------------------------------------------------------------------
; GeoIP
; -------------------------------------------------------------------
;geoip_amxx

; -------------------------------------------------------------------
; Sockets (требуется для HLTV)
; -------------------------------------------------------------------
;sockets_amxx

; -------------------------------------------------------------------
; Regular Expression support
; -------------------------------------------------------------------
;regex_amxx

; -------------------------------------------------------------------
; Binary Vault support
; -------------------------------------------------------------------
;nvault_amxx

; -------------------------------------------------------------------
; Counter-Strike functions
; -------------------------------------------------------------------
cstrike_amxx

; -------------------------------------------------------------------
; CSX
; -------------------------------------------------------------------
csx_amxx[/spoiler]Сохраняем файл. Далее открываем users.ini.
Так же заменяем его содержимое следующим текстом, и настраиваим его по своему усмотрению:
[spoiler=""users.ini""]; Users - конфигурационный файл
; Расположение файла: $moddir/addons/amxmodx/configs/users.ini

; Линия, стартующая с ; - комментарий

; Флаги полномочий:
; a - Иммунитет (нельзя кикнуть/забанить/использовать на нем Slay/Slap и т.п.)
; b - Резервирование (может заходить на зарезервированные слоты)
; c - Доступ к команде amx_kick
; d - Доступ к командам amx_ban и amx_unban
; e - Доступ к командам amx_slay и amx_slap
; f - Доступ к команде amx_map
; g - Доступ к команде amx_cvar (доступны не все квары)
; h - Доступ к команде amx_cfg
; i - Доступ к команде amx_chat и другим чат-командам
; j - Доступ к команде amx_vote и другим голосовым-командам
; k - доступ к квару sv_password (через команду amx_cvar)
; l - Доступ к команде amx_rcon и квару rcon_password (через команду amx_cvar)
; m - Пользовательский уровень A (для нестандартных плагинов)
; n - Пользовательский уровен B
; o - Пользовательский уровен C
; p - Пользовательский уровен D
; q - Пользовательский уровен E
; r - Пользовательский уровен F
; s - Пользовательский уровен G
; t - Пользовательский уровен H
; u - Доступ к меню
; z - Игрок (не админ)

; Флаги доступа:
; a - Отключить игрока при несовпадении пароля
; b - Clan-Tag
; c - SteamID
; d - IP
; e - Пароль не проверяется (только для Name/IP/SteamID)
; k - Nick или Clan-Tag с учетом регистра. пример: Если вы дали полномочия игроку "Ham"
; и установили флаг Учета Регистра ("k"), то игроки
; могут использовать любые имена ("haM", "HAM", "ham", и т.д.), кроме "Ham"

; Пароль:
; Напишите в игровой консоли (~): setinfo _pw "<пароль>", или
; Добавьте в ваш autoexec.cfg: setinfo _pw "<пароль>"
; Изменить префикс _pw можно в amxx.cfg (квар amx_password_field)

; Формат админского аккаунта:
; <nick|ip|steamid> <пароль> <флаги полномочий> <флаги доступа>

; Примеры админских аккаунтов:
; "STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce" - полный доступ к админке, авторизация по Steam_ID, пароль не проверяется
; "123.45.67.89" "" "abcdefghijklmnopqrstu" "de" - полный доступ к админке, авторизация по IP, пароль не проверяется
; "My Name" "my_password" "abcdefghijklmnopqrstu" "ak" - полный доступ к админке, авторизация по нику, с учетом регистра, отключение, если пароль не совпадает

"Nick" "Password" "abcdefghijklmnopqrstu" "a"[/spoiler]Сохраняем файл. Можете самостоятельно настроить все остальные файлы (желательно сделать резервную копию).[/frame]
[frame]Установка плагинов и игровых модификаций
Все не стандартные плагины, созданные для изменения серверной части, выкладываются на официальном сайте. Здесь представлены сайты, с которых лучше всего брать плагины.

Сайт русскоязычного AMX Mod X сообщества
Официальный сайт AMXx - Поиск по плагинам
Самый большой форум посвященный AMXx, плагинам, модам и т.п.

Качать лучше всего .sma. Скаченный файл нужно поместить в директорию addons/amxmodx/scripting.

[spoiler=""Компилирование плагинов - Windows""]Метод перетаскивания
  1. Перетащите .sma файл на "compile.exe".
  2. Откомпилированный .amxx файл будет находиться в директории compiled.
Компилирование всех плагинов
  1. Дважды щелкните на compile.exe, чтобы откомпилировать все плагины и поместить их в директорию compiled.
Командная строка
  1. Зайдите в "Пуск", "Выполнить", введите "cmd", нажмите Ok.
  2. Используйте cd, чтобы сменить директорию, например:

    Код: Выделить всё

    cd c:hlservercstrikeaddonsamxmodxscripting
  3. Используйте amxxpc, чтобы откомпилировать плагин:

    Код: Выделить всё

    amxxpc.exe myplugin.sma
  4. Откомпилированный плагин будет в этой же директории.
[/spoiler]
[spoiler=""Компилирование плагинов - *nix""]Сперва перейдите в scripting директорию в вашей оболочке следующим образом:

Код: Выделить всё

cd addons/amxmodx/scripting
Компилирование всех плагинов
  1. Запустите скрипт compile.sh одним из способов:

    Код: Выделить всё

    sh compile.sh
    или

    Код: Выделить всё

    chmod  x compile.sh
  2. ./compile.sh
Компилирование одиночного плагина
  1. Запустите amxxpc, например:

    Код: Выделить всё

    ./amxxpc myplugin.sma
  2. Откомпилированный плагин будет в этой же директории.
[/spoiler]
[spoiler=""Установка плагинов""]Иногда плагины могут иметь свои собственные инструкции, если они требуют особенной установки. Однако данная инструкция поможет освоить основы установки плагинов.
  1. Следуйте всем указаниям, которые дает автор плагина. Если плагин требует дополнительных шагов или специальных файлов, убедитесь, что вы имеете их в правильном месте и порядке.
  2. Поместите .amxx файл в директорию addons/amxmodx/plugins.
  3. Добавьте имя плагина в addons/amxmodx/configs/plugins.ini. Например:

    Код: Выделить всё

    	  myplugin.amxx
  4. Смените карту или перезапустите сервер. Если при загрузке сообщается о каких-либо ошибках, смотрите ниже.
[/spoiler]
[spoiler=""Создание конфигураций, для загрузки конкретных плагинов на указанных картах""]Вы можете создать конфигурационный файл для определенной карты, отвечающий за загрузку конкретных плагинов или настроек. AMX Mod X будет автоматически загружать такие файлы, при загрузке карты на сервере.

Специфичные плагины загружаются после основных плагинов из plugins.ini и после второстепенных плагинов из plugins-*.ini, содержащихся в папке configs. Это означает, что специфичные плагины загружаются поверх всех остальных, уже загруженных плагинов.

Ниже предоставлен принцип создания таких файлов и их описание.
  • Код: Выделить всё

    configs/maps/prefix_<prefix>.cfg
    файл configs/maps/prefix_de.cfg будет запускаться на любой de_* карте.

    Код: Выделить всё

    configs/maps/plugins-<prefix>.ini
    файл configs/maps/plugins-de.ini будет загружать все указанные плагины на любой de_* карте.

    Код: Выделить всё

    configs/maps/prefix_<map_name>.cfg
    файл configs/maps/prefix_de_dust.cfg будет запускаться только на карте de_dust.

    Код: Выделить всё

    configs/maps/plugins-<map_name>.ini
    файл configs/maps/plugins-de_dust.ini будет загружать все указанные плагины только на карте de_dust.
Так же, можно отключать определенные плагины. Это делается, с помощью добавления флага "disabled".
Пример файла plugins-de_dust.ini с одним отключенным плагином:

Код: Выделить всё

anti_fastfire.amxx
ac_spinhackdetector.amxx
antidoubleduck.amxx disabled
[/spoiler]
[spoiler=""Удаление""]
  1. Удалите запись из addons/amxmodx/configs/plugins.ini или добавьте в начале строки точку с запятой.
  2. Также можно удалить все файлы, связанные с отключаемым плагином.
[/spoiler]
[spoiler=""Распространенные ошибки после установки плагинов""]Q: Что означает "function not found"?
A: Это означает, что функция, используемая файлом не найдена. Скорее всего, вы забыли включить модуль, используемый плагином. Проверьте документацию по плагину, проверьте modules.ini.

Q: Что означает "module required for plugin"?
A: См. вопрос выше. При получении данной ошибке, плагин должен точно сказать какой модуль ему требуется.

Q: Что означает "Run time error ... debug not enabled"?
A: Это значит, что произошла внутренняя ошибка в плагине. Чтобы включить режим отладки, а также сообщить о проблеме автору, следует добавить слово "debug" после названия плагина в amxmodx/plugins/plugins.ini. Пример:

Код: Выделить всё

myplugin.amxx debug
Q: Я включил режим отладки, но по прежнему получаю сообщение об ошибке!
A: Скопируйте текст ошибки и пошлите его автору плагина. Если эта ошибка появляется в стандартных AMXx плагинах, сделайте баг-репорт.[/spoiler]
[spoiler=""Список основных команд AMXx""]Все команды, которые можно использовать в AMXx вы можете узнать, набрав в консоле amx_help.[/frame][/spoiler][spoiler=""Установка Booster'а""][frame][/spoiler][spoiler=""Booster (Windows)""]Booster 1.70 Lite / 2.40 Full
Я рекомендуют использовать версию 1.70 для одноядерных процессоров, 2.40 наоборот - для многоядерных процессоров.
  1. Распаковать .dll в cstrikeaddonsooster.
  2. В файле cstrikeaddonsmetamodplugins.ini добавить строку win32 addons/booster/booster_mm.dll
  3. В папке cstrikeaddonsooster создать файл booster.cfg
  4. В файле cstrikeserver.cfg добавить строку

    Код: Выделить всё

    exec "/addons/booster/booster.cfg"
[/spoiler][spoiler=""Содержание booster.cfg""]booster_show_connmsg "0"
booster_autofps "1000"
booster_minsleepms "1"
booster_force_systicrate "0"
booster_cpu_enabled "1"
booster_cpu_spikemax "3"
booster_cpu_spikelevel "75"
booster_cpu_floor "50"
booster_cpu_mminc "2"
booster_cpu_quiettime "300"
booster_cpu_mmmin "3"
booster_cpu_mmmax "8"
booster_lite_mode "3"
booster_lite_extra_sleep_frequency "0"[/spoiler][spoiler=""Booster (*nix)""]В *nix имеется встроенный Booster, он активируется параметром -pingbooster 2 в строке запуска сервера (значение от 0 до 3)[/frame][/spoiler][spoiler=""Установка Dproto и совмещение 47 48 протоколов""]Если вы делаете Steam сервер, на котором не должно быть no-steam игроков, то этот пункт нужно пропустить.

dproto - это плагин для metamod, который объединяет 47 и 48 протоколы и позволяет no-steam клиентам заходить на сервер

[frame][/spoiler][spoiler=""Исправление ошибки svc_bads 'Server failed to transmit file ''AY&SY''""]Q: Что это?
A: Это плагин для метамода, который исправляет массовые отключения игроков с причиной 'Server failed to transmit file "AY&SY"'

Q: Что мне требуется?
A: Вам необходимо иметь последнюю версию hlds с установленным metamod 1.19(p32).
Поддерживаемые версии (на данный момент):
Windows: 4554/15Jun2009, 4554/19May2009
Linux: 4383/19May2009, 4617/15Jun2009

Q: Где скачать?
A: Новейшая версия всегда будет доступна здесь.
Windows / Linux

Q: Как установить?
A:
1. Создайте директорию <gamedir>/addons/xdsopt/
2. Извлеките скаченный архив в директорию.
3. Добавьте новую линию в <gamedir>/addons/metamod/plugins.ini:
Для windows:
win32 addonsxdsoptxds_opt.dll
Для linux:
linux addon/sxdsopt/xds_opt.so
4. Запустите сервер, напишите "meta list" когда он загрузится. Статус плагина должен быть "RUN".
[ 3] xdsopt RUN - xds_opt.so v0.1 ini Start Never
Остальные статусы означают, что версия сервера не поддерживается. Используйте HLDSUpdateTool для обновления.

Q: Какова причина svc_bads?
A: Это баг HLDS движка.

Q: Как работает плагин?
A: Это патчи памяти HLDS процесса.

Q: Где получить исходный код?
A: Исходный код недоступен.

Q: У меня есть вопрос...
A: Напишите ваш вопрос в этой теме.[/spoiler][/frame]
Особенности:[frame]
  • Сервер принимает всех известных клиентов на протоколе 47 и 48;
  • Настраиваемые SteamIDs для клиентов;
  • Работает с последней версией hlds;
  • Встроенная поддержка серверных эмуляторов
[/frame]Текущая версия: 0.3.7 - скачать
Стабильная версия: 0.3.6 - скачать
Внимание: dproto.cfg от версии 3.4 и младше не работают с более старшими версиями.

Frequently Asked Questions (FAQ)[frame][spoiler=""Что такое dproto?""]Dproto является заменой cbooster'а для работы по двойному протоколу. dproto разработан для работы в новом 48 протоколе, поэтому все функции Steam являются работоспособными. Основная цель Dropto - разрешить "старым" клиентам заходить на "новые" сервера, все другие функции являются второстепенные и добавляются согласно пользовательским запросам. Обратите внимание, dproto не является серверным эмулятором, поэтому не ждите от него генерации уникальных SteamIDs. Если вам это действительно необходимо - используется эмуляторы на стороне сервера (revEmu и др.)[/spoiler]
[spoiler=""Как установить dproto?""]
  1. Идите в <gamedir>/addons/ и создайте директорию dproto
    <gamedir> - это игровая директория; cstrike для Counter-Strike, valve для Half-Life, и т.д.
  2. Скопируйте dproto.dll или dproto_i386.so в <gamedir>/addons/dproto/
  3. Идите в директорию с metamod (<gamedir>/addons/metamod/) и редактируйте plugins.ini:
    для windows добавьте строку: win32 addonsdprotodproto.dll
    для линукса: linux addons/dproto/dproto_i386.so
  4. Скопируйте dproto.cfg с директорию с сервером или в <gamedir>
  5. Запустите сервер. Для *nix используйте команду: ./hlds_run -binary ./hlds_i686
    когда сервер загружен, напишите "meta list" в консоле. Вы должны увидеть следующее:

    Код: Выделить всё

    	  Currently loaded plugins:
    	  description stat pend file vers src load unlod
    	  [ 1] dproto RUN - dproto_i386.so v0.3.6 ini Start Never
    	  [ 2] AMX Mod X RUN - amxmodx_mm_i386. v1.8.1.3 ini Start ANY
    	  2 plugins, 2 running
  6. Установка AMXx плагинов из директории amxx не является необходимым.[/spoiler]
    [spoiler=""Я установил dproto, но он не работает""]Запустите сервер с параметрами -console +log on +mp_logecho 1 и смотрите результаты логов. Вы должны найти причину.[/spoiler]
    [spoiler=""AmxModX админы не могут авторизироваться используя их пароли.""]Просто замените _pw в dproto.cfg:
    ValidInfoFields_Engine =
    ameottomcolor opcolormodelcl_lccl_lwcl_updateratecl_dlmax
    ate_pw*hltvpassword
    на то, что вы используете для хранения паролей администраторов[/spoiler]
    [spoiler=""Мой сервер невиден в Steam!""]Установите ServerInfoAnswerType = 0 или 2 в dproto.cfg[/spoiler]
    [spoiler=""Мой сервер невиден в cs v24!""]Установите ServerInfoAnswerType = 1 или 2 в dproto.cfg[/spoiler]
    [spoiler=""Как сделать, чтобы мой сервер был виден в non-steam и steam клиентах?""]Установите ServerInfoAnswerType = 2 в dproto.cfg[/spoiler]
    [spoiler=""Я получаю ошибку ''Error verifying STEAM UserID Ticket''""]Ваш сервер не может соединится со steam серверами. Я не знаю универсального метода для проверки соединения со steam серверами (если кто-то знает такой метод - пожалуйста сообщите мне). Если вы используете VAC, используйте команду stat. Если выводится "insecure" или "insecure (secure mode enabled, disconnected from Steam3)" это означает, что соединение со steam сервером отсувствует. Эта проблема не связана с dproto, но я могу дать некоторые советы, как это исправить:
    1. Проверьте, чтобы исходящие TCP соединения были разрешены по порту 27030
    2. Проверьте, чтобы входящие UDP пакеты были разрешены по локальному порту 2690x
    3. Если вы используете *nix, вы должны добавить +ip <server ip> в строку запуска сервера. Идеальный вариант - использовать +ip 0.0.0.0
    [/spoiler]
    [spoiler=""Мой сервер не отображается в системах мониторинга.""]Это случается, потому, что гибридные скрипты не справляются со своей задачей. Существует 3 способа решить эту проблему: используйте стандартные методы работы со скриптами (ServerInfoAnswerType = 1 или 0), попытайтесь исправить эту проблему самостоятельно, или напишите разработчикам скриптов.[/spoiler]
    [spoiler=""Я использую последнюю версию движка и мой сервер не отображается в интернет списках.""]Отправьте этот вопрос в Valve.[/spoiler]
    [spoiler=""Я использую последнюю версию движка и мой сервер не отображается в Setti мастер-списках.""]Зарегистрируйте ваш сервер здесь.[/spoiler]
    [spoiler=""Иногда мой сервер крашится после N дней работы...""]Отправьте этот вопрос в Valve.[/spoiler]
    [spoiler=""Мой сервер крашится, когда я устанавливаю мод X.""]Отправьте этот вопрос разработчикам мода, и проверьте, не допустили ли вы ошибку при установке.[/spoiler]
    [spoiler=""У меня на сервере игроки с одинаковыми SteamID. Они определяются как SteamEmu (dp_SteamEmu).""]SteamID легко подделывается в алгоритме авторизации SteamEmu. Запретите играть таким игрокам или установите для них не цифровой ID (к примеру STEAM_ID_LAN)[/frame]Сообщайте обо всех найденных проблемах/ошибках в эту тему.[/spoiler]
    • Защита Игрового сервера.
    [spoiler=""Об анти-читерских системах""]К сожалению, на данный момент идеальной античитерской системы не существует. На любой античит, найдется приватный(платный) чит, обходящий определенную систему. Советую запомнить это всем администраторам, утверждающим, что читеров на их серверах нет и небыло....
    • Из серии "сервер-клиент"
      • [frame]Преймущества:
        • Создание скриншотов на стороне клиента, и отправка их на сервер
          Обнаружение всех известных public читов
          Проверка игровых файлов на соответствие с оригинальными
          Легкость в настройке
          Поддержка всех x86 систем Windows
          Существование консольной версии для Linux, работающая из под Wine
        Недостатки:
        • Стоимость - 840 руб.
          Активация ключа, в случае замены/модернизации компьютера - 450 руб.
          Отсутствие поддержки x64 систем
          Поддержка осуществляются в закрытом форуме http://dedicated-server.ru (регистрация - 350 руб.)
          Отсутствует блокировка "читерских" кваров
        [/frame]
      • [frame]Преймущества:
        • Поддержка x86/x64 платформ Windows
          Принудительное выставление 32bbp и OpenGL
          Удаление лишних файлов из корневой директории игры
          Блокировка некоторых клиентских команд
          Проверка контрольный сумм игровых библиотек, карт, и моделей игроков
          Возможность снятия скринов с последующей отправкой на указанный ftp/http сервер
          Автообновление клиентской части через процесс игры
          Система банов по номеру идентификатора железа клиента
        Недостатки:
        • Не совместим с некоторыми антивирусами
          Отсутствие поддержки систем отличных от Windows
          В некоторых случаях - требуется ручной запуск клиента от имени администратора (Vista/Seven)
          Не поддерживаются некоторые версии клиента
        [/frame]
      • [frame]Преймущества:
        • Встраивается в AMXx
          Большая база читов
          Блокировка некоторых клиентских команд
          Уникальная система ANTIWH
          Бан по по номеру жесткого диска
          Проверка игровых файлов на соответствие с оригинальными
        Недостатки:
        • Отсутствует поддержка некоторых Windows систем
          Отсутствует поддержка некоторых Non-Steam версий клиента
          Несовместимость с некоторыми программами
          В определенных случаях, требуется удаление системных файлов Windows
        [/frame]
  • Из серии "только сервер"
    • [frame]Преймущества:
      • Обнаруживает скрипты
        Проверяет значение кваров
        Закрывает баги на сервере и на определенных картах
        Возможность настройки чита прямо из игры
      Недостатки:
      • Сложен в настройке (в глазах новичков)
        Малая база читов
        Случаются ложные обнаружения
        При определенной настройке - не пускает некоторые версии клиентов
      [/frame][frame]Преймущества:
      • Вобрал в себя многое от анти-читерских плагинов (см. ниже) и Reallite HLGuard (см. выше)
        Легок в настройке
      Недостатки:[/frame]
    [/spoiler][spoiler=""Список AMXx плагинов для защиты сервера""]Все плагины устанавливаются на свой страх и риск, т.к. они написаны на стандартном языке AMXx, зачастую могут быть ложные обнаружения![frame]
[/list][/frame][/spoiler]

western
Сержант
Сержант
Сообщения: 39
Зарегистрирован: 10.02.2006
Контактная информация:

#2 Сообщение 20.08.2009, 22:43

)))

сделать разделение в modules.ini (указана настройка на win)

sv_maxrate 30000 ( :dash: ) об стену, максимум 25000
sv_minrate лучше ставить автомат тоесть 0

а на форуме steampowered.com есть формула для расчета значений:

sv_minrate
sv_maxrate
sv_minupdaterate
sv_maxupdaterate

настройки
sv_unlag
sv_maxunlag
из конфига лучше убрать, если у вас нет xeon, иначе нагрузка на проц будет ))

плагин Anti Silent Run лучше не использовать ибо нагрузка на проц, кто будет играть со слабой тачки... а такие еще в наших деревнях есть то у них игроки будут плавать )))

для значения amx_client_languages 1 необходимо включить в modules.ini модуль geoip
Настоящий хам и Выжигатель предрассудков (карающий меч правосудия) с dedicated-server.ru
http://www.deagle.ru
-----------------------------------------------------------------------------
Изображение Изображение
Изображение Изображение
Изображение Изображение
Изображение Изображение
Изображение Изображение

NeoXidant
Лейтенант
Лейтенант
Сообщения: 100
Зарегистрирован: 20.08.2009
Контактная информация:

#3 Сообщение 20.08.2009, 23:31

western писал(а):сделать разделение в modules.ini (указана настройка на win)
и? :) мне так удобней знать, что и за что отвечает =)
western писал(а):sv_maxrate 30000, максимум 25000
sv_minrate лучше ставить автомат тоесть 0
уже долго созданием серверов занимаюсь, перерыл кучу факов и везде 30к указано, минрейт может и 0 =)
western писал(а):sv_unlag
sv_maxunlag
из конфига лучше убрать, если у вас нет xeon, иначе нагрузка на проц будет ))
Athlon 3000 разогнанный, нет никакой нагрузки >_< и почитай про лагокомпенсацию здесь, полезная штука
western писал(а): плагин Anti Silent Run лучше не использовать ибо нагрузка на проц, кто будет играть со слабой тачки... а такие еще в наших деревнях есть то у них игроки будут плавать )))
я не заставляю их ставить :) я просто привел список "заплаток" для сервера
western писал(а): для значения amx_client_languages 1 необходимо включить в modules.ini модуль geoip
нефига... и geoip - это вообще определение страны по IP-адресу, а amx_client_languages позволяет выбрать для плагинов язык не по умолчанию (значение по умолчанию определяет квар amx_setlang)

--------------------------------------------------------------------
обновил информацию про dproto, ZETA-AntiCheat, Reallite HLGuard

обновил конфиг, modules.ini (теперь не нужно настраивать под свою систему), команды запуска
Последний раз редактировалось NeoXidant 21.08.2009, 00:48, всего редактировалось 1 раз.

Cassius802
Нович0к
Нович0к
Сообщения: 3
Зарегистрирован: 24.08.2009

#4 Сообщение 24.08.2009, 14:22

Здраствуйте. Сам процес создания сервера понятен. Но какой компьютер и канал нужны, для запуска сервера 1.6? Мод на сервере будет или ZM или HaS. Количество слотов - 28. Предпологается полная загруженость сервера.

Также интересно узнать, сможет ли такой серв потянуть компьютер с процесором Целерон 2.4 гигагерц, оперативной памятью 512мб, каналом 768кб/c, система ХР SP3?

Lev2008
Лейтенант
Лейтенант
Сообщения: 221
Зарегистрирован: 08.11.2008

#5 Сообщение 24.08.2009, 16:44

Хороший мануал. Молодец!
Если скачка прервалась или надо проверить/обновить уже имеющийся дистрибутив, то вводим в конце ещё:
-verify_all
Проще сразу поставить - хуже не будет, и мануал короче.
И hldsupdatetool.exe проще сразу ставить в директорию с будущим сервером, и тогда в качестве директории ставить точку ".".
Т.е. будет:
hldsupdatetool.exe -command update -game cstike -verify_all -dir .
И всё.
-secure - использование анти-чита VAC (в Non-Steam теряет свою функциональность; чтобы отключить - изменить на insecure);
-master - регистрация сервера в интернет-списках;
Таких параметров нет. Есть:
-insecure
-nomaster

В разделе АМХХ наверняка можно обойтись без полного цитирования содержимого файлов?
А, ок, перевод. Слона-то я и не заметил. :)

В FAQ про dproto:
Так же заметьте, что dproto это не эмулятор, поэтому не ждите генерации steamid.
Не совсем верно. В нем нет генерации _уникальных_ стимИД, а генерация по ИП адресу - есть.
A: Запустите сервер с параметрами -console log on mp_logecho 1 и смотрите результаты логов. Вы должны найти причину.
Плюсик перед log потерялся.

Эксплоит "Born to be pig" уже отсутствует в последних билдах сервера. И, к тому же, в dproto есть заплатка от него на те билды, где он есть.
Последний раз редактировалось Lev2008 24.08.2009, 17:34, всего редактировалось 12 раз.

NeoXidant
Лейтенант
Лейтенант
Сообщения: 100
Зарегистрирован: 20.08.2009
Контактная информация:

#6 Сообщение 24.08.2009, 17:38

Cassius802 писал(а):Также интересно узнать, сможет ли такой серв потянуть компьютер с процесором Целерон 2.4 гигагерц, оперативной памятью 512мб, каналом 768кб/c, система ХР SP3?
в GoldSource идеал - 35.6КБит на игрока (если верить Steam Support'у), то есть 28 слотов потянет, но мало оперативной памяти, если хочешь держать сервер - придется отключить все визуальные эффекты, отключить лишние службы и играть с другого компьютера, а на этом держать только сервер
Lev2008 писал(а):
Если скачка прервалась или надо проверить/обновить уже имеющийся дистрибутив, то вводим в конце ещё:
-verify_all
Проще сразу поставить - хуже не будет, и мануал короче.
fixed
Lev2008 писал(а):И hldsupdatetool.exe проще сразу ставить в директорию с будущим сервером, и тогда в качестве директории ставить точку ".".
Т.е. будет:
hldsupdatetool.exe -command update -game cstike -verify_all -dir .
И всё.
добавил, но не заменил, т.к. не знаю как другие, а я всегда ставлю HLDSUpdateTool в директорию по умолчанию (C:\Program Files\Valve\), а сервер скачиваю на другом жесткий диск (ибо он быстрее)

Код: Выделить всё

-secure - использование анти-чита VAC (в Non-Steam теряет свою функциональность; чтобы отключить - изменить на insecure);
-master - регистрация сервера в интернет-списках;
Таких параметров нет. Есть:
-insecure
-nomaster[/quote]
если использовать -secure, то появляется значок VAC, если -insecure, то нет (хотя строчка
secure "1"
в liblist.gam повествует о том, что по умолчанию VAC включен)
-nomaster/-master протестирую позже (предположительно, при -nomaster игра не регистрируется в интернет списках, а при -master - регистрируется)

Lev2008
Лейтенант
Лейтенант
Сообщения: 221
Зарегистрирован: 08.11.2008

#7 Сообщение 24.08.2009, 17:46

Просто сервер (программа, код) никак не обрабатывает незнакомые параметры, а про -master и -secure он не знает. Поэтому что ставить их, что не ставить всё одно.
Т.е. по умолчанию VAC включен, и есть регистрация на мастерах. Не нравится - есть параметры -insecure и -nomaster.

Насчет -verify_all я имел в виду, что при установке сервера он никак не мешает, поэтому можно сразу сделать так:

Код: Выделить всё

hldsupdatetool.exe -command update -game cstike -verify_all -dir куда
А потом запускать повторно для обновления. А если хочется написать, зачем нужен параметр -verify_all, то можно тогда и остальные параметры расписать. Тока вроде незачем.
Последний раз редактировалось Lev2008 24.08.2009, 17:51, всего редактировалось 6 раз.

NeoXidant
Лейтенант
Лейтенант
Сообщения: 100
Зарегистрирован: 20.08.2009
Контактная информация:

#8 Сообщение 24.08.2009, 17:49

ок, ща исправим =)

Lev2008
Лейтенант
Лейтенант
Сообщения: 221
Зарегистрирован: 08.11.2008

#9 Сообщение 24.08.2009, 17:54

А ещё, там где пример папки для скачки, наверное, лучше сразу написать так:
hldsupdatetool.exe -command update -game cstike -dir c:\servers\cs -verify_all
Последний раз редактировалось Lev2008 24.08.2009, 17:54, всего редактировалось 1 раз.

Cassius802
Нович0к
Нович0к
Сообщения: 3
Зарегистрирован: 24.08.2009

#10 Сообщение 24.08.2009, 18:09

NeoXidant писал(а): в GoldSource идеал - 35.6КБит на игрока (если верить Steam Support'у), то есть 28 слотов потянет, но мало оперативной памяти, если хочешь держать сервер - придется отключить все визуальные эффекты, отключить лишние службы и играть с другого компьютера, а на этом держать только сервер
Ну я так примерно и предпологал. Спасибо за совет.

NeoXidant
Лейтенант
Лейтенант
Сообщения: 100
Зарегистрирован: 20.08.2009
Контактная информация:

#11 Сообщение 24.08.2009, 18:24

Lev2008, подправил, следуя твоим советам =) + подправил описания под metamod/dproto, чуть чуть улучшил форматирование

Lev2008
Лейтенант
Лейтенант
Сообщения: 221
Зарегистрирован: 08.11.2008

#12 Сообщение 24.08.2009, 18:30

:)
Ещё, можно
sv_lan 0
убрать. Тоже дефолт.

А, и ещё

Код: Выделить всё

-tickrate - Основная статья - Source Multiplayer Networking Экспериментируйте со значениями 33, 66 и 100 (должна быть ощутимая разница в стрельбе, я использую 66)
не про HL1 движок. Т.е. такого параметра нет. (есть sys_ticrate в конфиге, но там он с бустером коррелирует).
Последний раз редактировалось Lev2008 24.08.2009, 18:34, всего редактировалось 2 раза.

NeoXidant
Лейтенант
Лейтенант
Сообщения: 100
Зарегистрирован: 20.08.2009
Контактная информация:

#13 Сообщение 24.08.2009, 18:42

Lev2008 писал(а)::)
Ещё, можно
sv_lan 0
убрать. Тоже дефолт.
однако иногда требуется использовать sv_lan 1 =) (тоесть можно заходить только с IP'ов 192.168.0.0 - 192.168.255.0 (если я правильно понял значение команды)
Lev2008 писал(а):А, и ещё

Код: Выделить всё

-tickrate - Основная статья - Source Multiplayer Networking Экспериментируйте со значениями 33, 66 и 100 (должна быть ощутимая разница в стрельбе, я использую 66)
не про HL1 движок. Т.е. такого параметра нет. (есть sys_ticrate в конфиге, но там он с бустером коррелирует).
хм, почитай это и запусти свой сервер сначало на дефолтных настройках и поиграй, потом укажи тикрейт 33 и поиграй, потом укажи 100 и поиграй и скажи мне, если разницы не увидишь >_< (я увидел сразу же)

Lev2008
Лейтенант
Лейтенант
Сообщения: 221
Зарегистрирован: 08.11.2008

#14 Сообщение 24.08.2009, 19:16

NeoXidant писал(а):однако иногда требуется использовать sv_lan 1 =) (тоесть можно заходить только с IP'ов 192.168.0.0 - 192.168.255.0 (если я правильно понял значение команды)
Тогда просто сделай ниже список с доступными параметрами, и укажи там +sv_lan 1 с описанием. "Class C: 192.0.1.1 to 223.255.254.254", но пускать будет только с <server_ip>/24, т.е. класс С, как таковой, ни при чем.
NeoXidant писал(а):хм, почитай это и запусти свой сервер сначало на дефолтных настройках и поиграй, потом укажи тикрейт 33 и поиграй, потом укажи 100 и поиграй и скажи мне, если разницы не увидишь >_< (я увидел сразу же)
It is only your mind. Этот параметр из Source движка, т.е. из CSS. В HL1, как я уже написал, его нет. Совсем нет. И что бы вы ни указали - сервер это просто игнорирует, т.к. он не знает такого параметра. Есть CVAR sys_ticrate, который регулирует серверный FPS на движке HL1 (GoldSource).

NeoXidant
Лейтенант
Лейтенант
Сообщения: 100
Зарегистрирован: 20.08.2009
Контактная информация:

#15 Сообщение 24.08.2009, 19:28

Lev2008 писал(а):
NeoXidant писал(а):однако иногда требуется использовать sv_lan 1 =) (тоесть можно заходить только с IP'ов 192.168.0.0 - 192.168.255.0 (если я правильно понял значение команды)
Тогда просто сделай ниже список с доступными параметрами, и укажи там +sv_lan 1 с описанием. "Class C: 192.0.1.1 to 223.255.254.254", но пускать будет только с <server_ip>/24, т.е. класс С, как таковой, ни при чем.
имхо "проверка на принадлежность к подсети класса C;" хватит - кому это надо, тот поймет и поменяет =)
Lev2008 писал(а):
NeoXidant писал(а):хм, почитай это и запусти свой сервер сначало на дефолтных настройках и поиграй, потом укажи тикрейт 33 и поиграй, потом укажи 100 и поиграй и скажи мне, если разницы не увидишь >_< (я увидел сразу же)
It is only your mind. Этот параметр из Source движка, т.е. из CSS. В HL1, как я уже написал, его нет. Совсем нет. И что бы вы ни указали - сервер это просто игнорирует, т.к. он не знает такого параметра. Есть CVAR sys_ticrate, который регулирует серверный FPS на движке HL1 (GoldSource).
ну а всетаки, если проверить экспериментальным путем? =) насколько я помню из своего игрового опыта, есть сервера, на которых "стрельба" мягко говоря "тупит" (стреляешь в игрока, пули вообще не попадают (рандом исключен), или попадают с большой задержкой (при пинге 5-10 - игра по локальной сети))

Код: Выделить всё

he server simulates the game in discrete time steps called ticks. By default, 66 ticks per second are simulated, but mods can specify their own tickrate. For example Counter-Strike: Source uses a lower tickrate of 33 ticks/second to reduce the server CPU load. During each tick, the server processes incoming user commands, runs a physical simulation step, checks the game rules, and updates all object states. After simulating a tick, the server decides if any client needs a world update and takes a snapshot of the current world state if necessary. A higher tickrate increases the simulation precision, but also requires more CPU power and available bandwidth on both server and client. The server admin may override the default tickrate with the -tickrate command line parameter, though tickrate changes done this way are not recommended because the mod may not work as designed if its tickrate is changed. 
все в точности, как я описал:

Код: Выделить всё

Во время каждого тика, сервер обрабатывает пользовательские команды, проверяет правила игры, и обновляет состояние объектов. После завершения симуляции тика, сервер определяет каким клиентам требуется обновление мира и делает снимок текущего состояния мира, если это необходимо. Более высокая частота тиков увеличивает точность симуляции, но и требует больше ресурсов процессора и пропускной способности на сервере и клиенте.
То есть при tickrate 33 - не реалистичная стрельба, 66 - тот самый компромисс между точностью симуляции и производительностью, 100 - очень сильная нагрузка на компьютер, и стрельба опять же становится не реалистичной, т.к. запросы не успевают обрабатываться (при слабом канале/слабом компьютере)
Последний раз редактировалось NeoXidant 24.08.2009, 19:37, всего редактировалось 1 раз.

Ответить