Мы — долго запрягаем, быстро ездим, и сильно тормозим.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
www.lissyara.su
—> статьи
—> FreeBSD
|
В данной статье я постараюсь подробно (на сколько это возможно) описать процесс установки и настройки сервера Counter Strike 1.6 на машину под управлением freeBSD, а так же рассмотрю процесс установки и настройки Metamod и таких аддонов как AMX Mod X, Dproto и др.
Для начала определимся из каких этапов состоит установка сервера CS
Установка сервера Cunter Strike 1.6 состоит из следующих этапов
1. Установка системы (в нашем случае это будет freeBSD 8.0)
2. Настройка системы
3. Обновление системы
4. Установка эмулятора Linux
5. Установка сервера Counter-Strike 1.6
6. Настройка сервера Counter-Strike 1.6
7. Установка Metamod
8. Установка и настройка аддонов
С этим разобрались, теперь пожалуй приступим к установке
1. Установка системы
Так как про установку freeBSD написано не мало статей я решил не участвовать в процессе их клонирования, почитать про установку системы можно Тут, Тут и вот Тут
2. Настройка системы
Систему установили, теперь будем её настраивать.
Для начала обновим порты, самый простой метод (ИМХО) - использование portsnap
|
Ждём пока программа скачает и распакует снапшот дерева портов, затем установим программы, которые в последствии нам понадобятся:
MC (Он как свет в туалете - без него можно, но не так уютно)
cvsup (Потребуется для обновления системы)
zip (так же нам пригодится)
unrar (мне пригодился)
|
|
На все вопросы отвечаем просто ОК
|
|
Аналогично соглашаемся со всем что предложат)))
|
|
|
|
Ждём завершения установки и делаем
|
Всё. Первоначальная настройка системы завершена, можно приступать к обновлению.
3. Обновление системы
Существует много способов обновления freeBSD, я опишу тот способ которым пользуюсь сам, обновлять будем при помощи cvsup.
На данном этапе мы имеем freeBSD 8.0
|
FreeBSD CS16_Server 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Wed Dec 8 10:58:59 OMST 2010 root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 |
Теперь обновим её до последней версии.
Для начала создаём supfile
|
|
Запускаем обновление исходных текстов системы
|
Как только процесс завершится, переходим в директорию с исходными текстами и запускаем процесс компилирования "мира"
|
|
|
Параметр j4 - это число потоков компилирования, для многопроцессорных машин можно его увеличить
Когда процесс компиляции будет завершён, приступаем к сборке ядра.
В данной статье я буду использовать конфигурационный файл своего ядра (с теми опциями которые используются в моей системе), для создания своего конфигурационного файла ядра,и выбора опций необходимых вам, рекомендую почитать Эту статью.
Создаём конфигурационный файл ядра:
|
Для x64 эта строчка выглядит так:
|
Вот так выглядит мой конфигурационный файл:
|
Приступаем к сборке ядра
|
Если не указывать параметр KERNCONF, то соберётся с ядром GENERIC.
После сборки устанавливаем ядро:
|
После установки ядра необходимо перезагрузить систему.
|
Загрузиться нужно в однопользовательском режиме, для этого перед загрузкой выбираем пункт - 4.
Жмём Enter и монтируем файловую систему
|
|
Переходим в папку с исходными текстами и устанавливаем "мир"
|
|
После установки удаляем временные файлы
|
Перезагружаемся
|
Переходим в папку с исходниками и удаляем старые библиотеки
|
|
Проверяем как обновилась система
|
FreeBSD CS16_Server 8.2-PRERELEASE FreeBSD 8.2-PRERELEASE #0: Wed Dec 8 12:58:59 OMST 2010 root@TestCS:/usr/obj/usr/src/sys/Suslick_Kernel i386 |
Как видим обновление прошло успешно, переходим к следующему этапу установки сервера.
Более подробную статью описывающую данный способ обновления можно почитать ТУТ.
4. Установка эмулятора Linux
И так приступим к установке эмулятора Linux, который необходим для работы нашего сервера
|
|
Здесь почему то у меня вылетела ошибка:
===> linux_base-f10-10_3 linuxulator is not (kld)loaded. *** Error code 1 |
Дал ему то что он просит...
|
|
И установка прошла успешно)))
Редактируем необходимые файлы
|
Добавим в конец файла строки:
|
|
Добавим в конец файла строку:
|
|
Добавляем в конец файла строки:
|
|
Добавим в конец файла строку:
|
Перезагружаемся
|
Установка эмулятора Linux завершена, переходим к следующему этапу.
5. Установка сервера Counter Strike 1.6
И так приступим к установке самого сервера игры, для начала создадим пользователя под которым будет работать наш сервер
|
Устанавливаем пароль для csuser
|
Создаём папку в которой у нас будет находиться сервер
|
В качестве примера я привёл название и адрес своей папки с сервером, вы можете указать свои, это не критично.
Устанавливаем права на папку с сервером
|
|
Далее заходим в систему под пользователем csuser (ну или как вы его у себя обозвали) и переходим в папку с сервером.
|
n
Теперь скачаем сервер игры, для этого нам потребуется программа hldsupdatetool
Скачиваем её
|
Даём права на запуск
|
Запускаем
|
На вопрос отвечаем YES
Проверяем
|
Должны появиться файлы:
hldsupdatetool.bin readme.txt steam |
Собственно для скачивания сервера нужно воспользоваться программой steam
Для начала обновим саму программу
|
Если в результате вылетела вот такая месага:
Checking bootstrapper version ... Failed to create directory /home/csuser/.steam |
Заходим под рутом и делаем следующее:
|
|
И повторяем попытку обновить steam
|
В результате наблюдаем следующее:
Checking bootstrapper version ... Getting version 42 of Steam HLDS Update Tool Downloading. . . . . . . . . . . . Steam Linux Client updated, please retry the command |
Хммм...,просит повторить, ну ладно ))), повторим)))
|
Результат:
Checking bootstrapper version ... Updating Installation Failed to create directory CAsyncIOManager: 0 threads terminating. 0 reads, 0 writes, 0 deferrals. CAsyncIOManager: 16 single object sleeps, 0 multi object sleeps CAsyncIOManager: 0 single object alertable sleeps, 0 multi object alertable sleeps |
Повторить не просит, значит обновился
Ну вот мы и подошли к скачиванию самого сервера, начинаем скачивание командой:
|
Тут хотелось бы обратить внимание на то, что иногда скачивание начинается не сразу и программа просит повторить команду на скачивание, подобно тому как мы обновляли steam, так что просто повторяйте команду пока не начнётся скачивание.
В результате вы должны увидеть примерно следующее:
HLDS installation up to date CAsyncIOManager: 0 threads terminating. 0 reads, 0 writes, 0 deferrals. CAsyncIOManager: 70 single object sleeps, 0 multi object sleeps CAsyncIOManager: 0 single object alertable sleeps, 0 multi object alertable sleeps |
Ну вот собственно и всё, теперь можно приступать к настройке сервера.
6. Настройка сервера Counter-Strike 1.6
Настройку сервера начнём с главного конфигурационного файла - server.cfg
Лежит он тут - /server/counter-strike/cstrike
|
Приведу пример своего конфигурационного файла, с комментариями.
hostname "Test Server" //- имя вашего сервера, которое будет видно в списке серверов rcon_password "123456" //- пароль для управления сервером из игры log on // - включение логирования mp_logecho 1 mp_logfile 1 // - писать лог в файл mp_logdetail 3 // - уровень детализации логов mp_logmessages 1 // - писать в лог сообщения чата mp_allowspectators 1 //- на сервере можно присутствовать спектатором mp_autocrosshair 0 //- автоаим (примитивный AimBot) mp_autokick 1 //- кик с сервера простаивающих игроков или Тимкиллеров mp_autoteambalance 1 //- автобаланс команд mp_buytime 0.25 //- время закупки оружия в начале раунда в минутах mp_c4timer 30 //- время в сек. до взрыва установленной бомбы mp_chattime 5 //- Количество секунд, которое можно писать в чат в конце раунда mp_decals 200 //- Количество отображаемых одновременно дыр от выстрелов mp_fadetoblack 0 //- включение после вашей смерти черного экрана mp_flashlight 1 //- использование фонарика mp_forcecamera 0 //- установка камеры наблюдения за всеми игроками после смерти mp_forcechasecam 0 //- после смерти игрок может наблюдать за всеми mp_freezetime 5 //- время невозможности движения игрока в начале раунда mp_footsteps 1 //- слышимость шагов (при беге) mp_friendlyfire 1 //- повреждения при стрельбе по своим mp_hostagepenalty 10 //- количество убитых заложников до бана в игре mp_limitteams 2 //- максимальное количество превышения игроков mp_roundtime 2 //- время раунда в минутах mp_startmoney 800 //- стартовое количество денег в начале игры на карте mp_timelimit 20 //- длительность игры на одной карте в минутах mp_tkpunish 0 //- мочим тимкиллера в начале раунда mp_playerid 0 //- видны ники тиммейтов, видны ники врагов mp_falldamage 1 // Есть урон от падений sv_allowdownload 1 //- возможность скачивания с сервера sv_allowupload 0 //- возможность закачивания на сервер sv_alltalk 1 //- разговор в микрофон доступен всем sv_cheats 0 //- разрешение использования читов sv_contact suslickus@gmail.com //- адрес администратора сервера sv_footsteps 1 //- слышимость шагов (при беге) sv_maxrate 19200 //- максимальная пропускная способность сетевого канала sv_maxupdaterate 96 //- Ограничивает частоту обновлений сервера. sv_minrate 0 //- минимальная пропускная способность сетевого канал sv_minupdaterate 10 //- нижний предел частоты обновления сервера sv_pausable 0 //- возможность паузы на сервере sv_stats 1 //- сбор статистики использования процессора sv_voiceenable 1 //- разрешить использовать микрофон или нет decalfrequency 10 |
На этом первоначальная настройка сервера завершена, можно переходить к следующему пункту.
7. Установка Metamod
Теперь устанавливаем Metamod, он необходим для подключения к серверу аддонов, таких как: AMX Mod X, Dproto и др.
Для начала создадим необходимые директории
|
|
Далее переходим в директорию где будет стоять metamod
|
Скачиваем последнюю версию с www.metamod.org
На момент написания этой статьи версия была - 1.19
|
Распаковываем
|
Создаём конфигурационный файл
|
Прописываем metamod в liblist.gam
|
Приводим его к следующему виду:
|
На этом установка metamod завершена, идём дальше.
8. Установка и настройка аддонов
Первый аддон, который мы установим будет Dproto
Dproto - это библиотека, подключаемая через metamod, позволяет заходить на сервер с двух протоколов и имеет много полезных настроек.
Создаём папку
|
Скачиваем и распаковываем в неё последнюю версию Dproto с http://cs.rin.ru
Чтобы не заморачиваться со скаченым архивом, открываем его в MC
Далее из папки (в архиве) linux берём файл dproto_i386.so и кидаем его в
/server/counter-strike/cstrike/addons/dproto
Затем берём файл dproto.cfg из корня архива и кидаем туда же.
Затем копируем файл dproto.cfg в папку cstrike
|
|
dproto.cfg в редактировании не нуждается, всё работает и со значениями по умолчанию, для тех кто хочет покапаться с настройками вот ТУТ всё давольно не плохо расписано.
Далее прописываем Dproto в metamod
|
Добавляем в конец файла строку linux addons/dproto/dproto_i386.so
Установка dproto завершена, теперь можно совершать пробный запуск сервера.
Пробный запуск сервера
Теперь настроим запуск нашего сервера. Для удобства создадим команду для запуска, для этого производим следующие действия:
|
Вставляем строку:
./hlds_run -binary ./hlds_i686 -game cstrike -insecure +sv_lan 1 +ip 0.0.0.0 +map de_dust2 +maxplayers 20
0.0.0.0 - изменяем на IP адрес вашего сервера
Даём права на запуск
|
Команда готова, запускаем сервер:
|
Строка:
L 12/10/2010 - 15:49:57: World triggered "Round_Start" |
Означает что ваш сервер успешно запущен и начался раунд.
Теперь сделаем так, чтоб наш сервер было видно в списках серверов интернет
Для этого меняем текст в команде запуска
|
Убираем параметр "+sv_lan 1"
Затем в файле steam.inf
|
Все удаляем и вставляем:
|
Далее в конец файла server.cfg добавляем строки:
|
Всё, запускаем сервер, и видим его в списках интернета )))
Устанавливаем AMX mod X
Теперь установим аддон без которого не обходится ни один современный сервер counter-strike 1.6 - AMX mod X
Создаём директорию для аддона, и переходим в неё:
|
|
Скачиваем аддон с официального сайта http://www.amxmodx.org/
Нас интересуют два архива:
amxmodx-1.8.1-base.tar.gz
amxmodx-1.8.1-cstrike.tar.gz
Версии могут быть другими, я указал те что были актуальны на момент написания статьи.
|
Распаковываем файлы:
|
|
Редактируем конфигурационный файл amxx.cfg
|
Вот пример того как он должен выглядеть:
// AMX Mod X echo Executing AMX Mod X Configuration File // Уровень доступа всех, кто не прописан в users.ini (обычных игроков) // По умолчанию: "z" amx_default_access "z" // Поле (~переменная) для пароля // Для ввода пароля (админам) используется команда setinfo _pw pass (где _pw – это и есть поле пароля, а pass - сам пароль) // По умолчанию: "_pw" amx_password_field "_pw" // Вход на сервер // 0 – отключить авторизацию, игроки не будут проверяться (не будет присвоен ни один уровень доступа) // 1 – нормальный режим, все флаги в аккуантах ставятся // 2 – кикать всех, кого нет в листе юзеров (users.ini) // По умолчанию: 1 amx_mode 1 // Показывать активность админа // 0 – не показывать // 1 – показывать, но без ника админа (например, ADMIN Kicked Player) // 2 – показывать, с ником (например, ADMIN MegaPlayer Kicked Player) // По умолчанию: 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 // Сообщение по центру экрана (в конце цвет в RGB) // По умолчанию: "Welcome to %hostname%" "000255100" // "This server is using AMX ModX\nVisit http://www.amxmodx.org" "000100255" amx_imessage "Welcome to %hostname%" "000255100" amx_imessage "This server is using AMX Mod X\nVisit http://www.amxmodx.org" "000100255" // Частота вывода на экран этого сообщения (см. выше) в секундах // По умолчанию: 180 amx_freq_imessage 180 // Время бана для меню (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 // Скрывать резервируемые слоты // По умолчанию: 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" // По умолчанию: 1 amx_time_voice 1 // Минимальная задержка в секундах между двумя голосованиями // По умолчанию: 10 amx_vote_delay 10 // Сколько длится голосование в секундах // По умолчанию: 10 amx_vote_time 10 // Показывать, кто за что проголосовал // По умолчанию: 1 amx_vote_answers 1 // Отношения для результатов голосования // По умолчанию: 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 // Разрешить выбирать язык // По умолчанию: 1 amx_client_languages 1 // Дебаг-режим // 0 - отключен // 1 – плагины с опцией "debug" в plugins.ini запускаются в debug режиме // 2 – все плагины запускаются в debug режиме // По умолчанию: 1 amx_debug 1 // Статистика ведётся // 0 – по нику // 1 - по authid // 2 - по ip // По умолчанию: 1 csstats_rank 1 // Максимальный размер файла статистики // По умолчанию: 3500 csstats_maxsize 3500 // Записывать статистику ботов // По умолчанию: 0 csstats_rankbots 0 // Время для отображения статистики после смерти (в секундах) // По умолчанию: 12.0 amx_statsx_duration 12.0 // Время отображения статистики (HUD) после конца раунда // Отрицательное время уберёт статистику до того, как freezytime раунда закончится // По умолчанию: -2.0 amx_statsx_freeze -2.0 |
Теперь редактируем файл modules.ini
|
Он должен выглядеть так:
|
Теперь редактируем users.ini
|
Добавляем админа
|
Для того чтобы зайти в игру под админом пишем в консоли:
|
Теперь пропишем AMX mod X в metamod:
|
Добавляем в конец файла строку - linux addons/amxmodx/dlls/amxmodx_mm_i386.so
ATAC
Теперь установим ATAC, это плагин для AMX mod X наказывающий всяких павликов которые любят шмальнуть по игрокам из своей команды
|
Качаем
|
Чтобы не запариться распаковывать лучше всего в MC, перенесите содержимое папок архива в соответствующие папки на сервере
Теперь настраиваем
Пропишем плагин в AMX mod X
|
В конце файла пишем - atac.amxx
Конфигурационный файл
|
Вот пример конфигурационного файла с переводом:
//------------------------------------------------------------ //------------------------------------ MENU OPTIONS ---------- //------------------------------------------------------------ // ATAC MENU (1=ON or 0 = Automatic Violation no punishment) Атас Меню (1=включить или 0= Автоматическое нарушение, нет наказания) atac_menu 1 // Add up the Options You Want or Use the ATAC Config Menu Slap = 1 Slap To 1hp = 2 // Slay NextRound = 4 // Jail = 8 // Chicken = 16 Bury = 32 Glow = 64 Bomb = 128 Blind = 256 Rocket = 512 // Drop = 1024 // Fire = 2048 // Drug = 4096 // ---------------------------- // TOTAL = 8191 atac_options 8191 //----------------------------------------------------------- //---------------------------------- ADVANCED OPTIONS ------- //----------------------------------------------------------- // Set delay inbetween slaps (Cannot go below 0.01) Установка задержки между ударами (слапом) atac_slap_freq 0.25 // Set how many slaps to give a killer (Установка на сколько велико число ударов наносимых Тимкиллеру) atac_slap_amount 10 // Set how much life to take from killer for each slap (Установка - сколько hp здоровья убывает у Тимкиллера с каждым ударом (slap)) atac_slap_power 5 // Set the amount of time you want the player jailed for in seconds. (Установка времени в секундах пребывания в тюрме, которое вы определяете для наказания игрока) atac_jail_time 45.0 // Client a TimeBomb effect others? (0=Player *ONLY*, 1=Player can blow up others) (Настройка эффектов клиента бомба замедленного действия (0=Только ТимКиллера, 1=Тимкиллер может взорвать и окружающих) atac_bomb_mode 0 // Set explosion range to kill others (if above is 1) (Установить радиус взрыва бомбы замедленного действия для убийства других, если значение не меньше 1) atac_bomb_range 1000 // Client on fire effect others? (0=Player *ONLY*, 1=Player can ignite others) (Установки клиента эффекта огня, поражение других игроков (0=Только ТимКиллера, 1=Тимкиллер может поджечь и окружающих) atac_fire_mode 0 // Set to 1 if you want ATAC to change players names to Inmate#00x and Chicken#00x and back during punishments (Установка в положение 1, если вы хотите, чтобы во время наказания имя игрока менялось на Inmate#00x или Chicken#00x) atac_handlenames 1 // Set to ON if you want hostage attacks/kills to count as ta violations/tk violations respectivly (0=OFF or 1=ON) (Установите в положение On, если хотите включить счётчик атак\убиств заложников, так же как нарушения Атака своих\Убийство своих) (0=выключено, 1=включено) atac_hostagepen 1 // Enables/Disables Hud Messages (0=OFF or 1=ON) (Разрешены\запрещены сообщения жирным текстом на сервере) (0=выключено, 1=включено) atac_hudmessages 1 // Enables/Disables AMXBAN 4.0 (0=OFF or 1=ON) (Разрешен\запрещен AMXBAN 4.0 (0=выключено, 1=включено) atac_amxban 0 // Enables/Disables ATAC Logs (0=OFF or 1=ON) (Разрешить\запретить ATAC логирование (0=выключено, 1=включено) atac_log 1 // Enable/Disable Death Match support (0=OFF or 1=ON) (Разрешить\запретить поддержку Дедматча) (0=выключено, 1=включено) atac_dm 0 //------------- TEAM ATTACK VARIBLES ------------- // Turns "Team Attack" Control (0=OFF or 1=ON) (Переключатель контроля "Атака команды" (0=выключено, 1=включено) atac_tacontrol 1 // Set Number of Team Attacks you want to be counted as a Team Kill Violation (Установить число атак на игроков своей команды, которое вы бы хотели считать как нарушение - убиство игрока по команде) atac_ta_equal_v 5 // Amount of time(seconds) after round start that team attackers are slayed (0=OFF) (Время в секундах после начала раунда, во время которого атаковавшие свою команду игроки будут убиты молнией (0=выключено) atac_tanotallowedfor 0 // Sets Instant slaying when MAX Team Attacks are reached (0=OFF or 1=ON) (Установить параметр slay, когда достигнуто максимальное число атак своей команды) atac_slayonmaxtas 0 // Set Slapping when someone Team Attacks (0 DAMAGE TAKEN AWAY) (0=OFF or 1=ON) (установить слап когда кто-нибудь пытается атаковать своих (отскок) (0 повреждений наносится) (0=выключено, 1=включено) atac_ta_slap 1 // Set Mirror Damage upon Team Attack (0=OFF or 1=ON) (Установить зеркальный урон для тех, кто атакует своб команду (0=выключено, 1=включено) atac_ta_mirrordmg 1 // Restore Life taken away by a Team Attacker (0=OFF or 1=ON) (Восстанавливать отнятые hp жизни в результате Атаки Тимкиллера (0=выключено, 1=включено) atac_ta_restore 1 //------------- TEAM KILL VARIBLES -------- //----------------------------------------- // Turns "Team Kill" Control (0=OFF or 1=ON) (Включить управление "Убиство команды" (0=выключено, 1=включено) atac_tkcontrol 1 // Set Number of Teamattack Violations you want allowed before user is banned (Установка количества нарушений, вызванных атакой оппонентов по команде, которое разрешено до момента, после которого игрок будет забанен) atac_tk_before_ban 3 // Set banning type: 1=AUTHID, 2=IP, 3=KICK ONLY (LAN SERVERS SET 2) (Установка типа Бана: 1=AUTHID, 2=IP, 3=Только кикать) atac_banvia 3 // Set amount of time(minutes) you want to ban a user after their Teamattack Violations have hit the limit (0 = Permanent Ban) (Установить время (в минутах) на которое вы хотите забанить игрока, достишего лимита нарушений атаки команды) (0 = Бан на вечно) atac_bantime 120 // Toggles the TK and TA Violation status showing during game in lover left hand corner. (Показывать статус Убийств и Атак команды в левом углу) atac_status 1 // Do you want admins to be immune to the punishment? (0=OFF or 1=ON) (Хотите ли вы дать иммунитет админам? (0=выключено, 1=включено) atac_admins_immune 1 // Do you want to save the players Team Kill Violations even if client reconnects? (0=OFF or 1=ON) (Хотите ли вы сохранять нарушения Убиства оппонентов по команде, даже если клиент переподключился?) atac_savetks 1 |
Хотя про установку сервера counter-strike 1.6 можно ещё писать и писать, на этом я всё же решил закончить, так как того что я описал вполне хватит для того чтобы понять принцип настройки сервера и поднять вполне полноценный и рабочий сервер, остальное в ваших руках.
размещено: 2010-12-09,
последнее обновление: 2011-05-24,
автор: Suslick
Этот информационный блок появился по той простой причине,
что многие считают нормальным, брать чужую информацию не уведомляя автора
(что не так страшно), и не оставляя линк на оригинал и автора — что более существенно.
Я не против распространения информации — только за. Только условие простое — извольте
подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой,
незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.
© lissyara 2006-10-24 08:47 MSK