Установка сервера TeeWorlds (Linux)

1. Идем на страницу с файлами игры TeeWorlds и качаем последнюю версию игры (сервер и клиент находятся в одном дистрибутиве).

#wget http://static.abcvg.com/uploads/files/2015-06/1435181763_teeworlds-0.6.3-linux_x86_64.tar.gz


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

2. Распаковываем скачанный архив в директорию, где мы будут находиться все файлы игры, в том числе и конфигурационные файлы сервера (о них чуть ниже) для запуска нескольких различных типов карт на одном сервере.

#tar zxvf teeworlds-0.6.3-linux_x86_64.tar.gz -C /usr/games/


4. Для того что бы продолжить запустить сервер TeeWorlds нам потребуется установленный screen на сервере. Он позволит нам после завершения сеанса консоли, оставить рабочим сервер TeeWorlds.

Установка на Ubuntu (Debian):

#apt-get install screen


Установка на FreeBSD:

#cd /usr/ports/sysutils/screen && make install clean


4. Теперь можем запускать сервер TeeWorlds командой:

#screen /usr/games/teeworlds-0.6.3-linux_x86_64/teeworlds_srv -f config-file.cfg
#где config-file.cfg – это конфиг сервера с настройками.


5. Вот несколько примеров конфигурационных файлов для различных типов карт:

Death match (free for all):

sv_name Teeworlds sample dm
sv_map dm1
sv_scorelimit 20
sv_timelimit 10
sv_gametype dm
sv_rcon_password remember
sv_motd Teeworlds Greetings on DM-server
sv_max_clients 12
sv_spectator_slots 10


Team death match:

sv_name Teeworlds sample tdm
sv_map dm6
sv_scorelimit 50
sv_gametype tdm
sv_rcon_password remember
sv_motd Teeworlds Greetings on TDM-server


Capture the flag:

sv_name Teeworlds sample ctf
sv_map ctf2
sv_scorelimit 400
sv_gametype ctf
sv_rcon_password remember
sv_motd Teeworlds Greetings on CTF-server


6. Теперь рассмотрим директивы конфигурационного файла:

А) Настройки движка (Жирным помечены директивы, которые можно изменить только в конфиге, через консоль не удастся изменить):

sv_name – Имя вашего игрового сервера (по умолчанию - unnamed server)
sv_bindaddr - Адресс на котором будут сушаться подключения
sv_port – Порт на котором будут слушаться подключения (по умолчанию 8303)
sv_external_port - Порт который будет отправляться мастер серверу
sv_max_clients – Максимальное количество клиентов, которые могут подключится к серверу (по умолчанию 12)
sv_max_clients_per_ip - Максимальное количество клиентов, которые могут подключится к серверу с одного IP (по умолчанию 12)
sv_high_bandwidth - Использование режима «Широкого» канала, используется только для LAN серверов (по умолчанию 0)
sv_register – Регестрация вашего сервера на мастер-сервере (по умолчанию 1)
sv_map - Какая карта будет запущена на сервере (по умолчанию dm1)
sv_rcon_password – Пароль для доступа в косноль управления (если не установлен, консоль работать не будет)
password – Пароль для подключения к серверу, для создания закрытого сервера
logfile – Путь до файла логов
console_output_level – количество строк отображаемых в консоли
sv_rcon_max_tries – Количество возможных неудачных авторизаций в консоли (по умолчанию 3)
sv_rcon_ban_time – устанавливает время на которое будет забананен человек неправильно введший пароль к консоли (если значение 0, то просто выкинет с сервера игрока, по умолчанию 5)


В) Игровые настройки:

sv_warmup - Время между раундами (по умолчанию 0)
sv_scorelimit – Лимит очков для победы (0 – без ограничения, по умолчанию 20)
sv_timelimit – Ограничение по времени на игру (если количество очков по окончании времени будет равным то будет sudden death, по умолчанию 0)
sv_gametype – Тип игры (dm – по умолчанию/ctf/tdm)
sv_maprotation – Ротация карт на сервере
sv_rounds_per_map – количество раундов до смены карты в ротации (по умолчанию 1)
sv_motd – Сообщение, которое будет показано при подключение к серверу
sv_spectator_slots – Количество зрителей (по умолчанию 0)
sv_teambalance_time – Время до автобаланса команд (по умолчанию 1)
sv_spamprotection – Включение спам фильтра (по умолчанию включен - 1)
sv_tournament_mode – Игроки присоединяются как зрители (по умолчанию 0)
sv_respawn_delay_tdm – Время в секундах до респауна в TDM картах (по умолчанию 3)
sv_teamdamage – Включение огня по своим friendly fire (по умолчанию 0)
sv_powerups – Включает бонусы (katana) (по умолчанию 1)
sv_vote_kick – Включает возможность голосовать за кикание игроков (по умолчанию 1)
sv_vote_kick_bantime – Время на которое банится игрок если его выкинули по голосованию (0 просто выкидывает, по умолчанию 5)
sv_vote_kick_min – Минимум игроков для исключения игрока по голосованию (по умолчанию 5)
sv_inactivekick_time – Выставление статуса АФК игроку (по умолчанию кикает через 3 минуты)
sv_inactivekick – Что делать с игроками в АФК (0 – кинуть в зрители, 1 – кинуть в зрители, если зрителей максимально возможное число то кикать (по умолчанию стоит данное значение), 2 - кикать)


7. Для запуска сразу нескольких серверов можно создать скрипт, например start.sh:

Создадим и отредактируем файл start.sh:

vim ./start.sh


#!/bin/sh
GAME_PATH="/usr/games/teeworlds-0.6.3-linux_x86_64"
cd #{GAME_PATH}
screen -d -m #{GAME_PATH}/teeworlds_srv -f /usr/games/teeworlds-0.6.3-linux_x86_64/ctf.cfg


или

screen -d -m #{GAME_PATH}/teeworlds_srv -f /usr/games/teeworlds-0.6.3-linux_x86_64/dm.cfg


После этого запуск осуществляйте командой:

#sh start.sh


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



Просмотров: 2089
25.06.2015, 04:28 -

Категория: Статьи » Администрирование