Главная Форумы JUST FOR FUN Entertainment Создаем сервер Unreal Tournament 99 (UT99) на Debain 9

В этой теме 1 ответ, 1 участник, последнее обновление  Esmertec 3 дн., 18 час. назад.

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)
  • Автор
    Сообщения
  • #398

    Esmertec
    Хранитель

    Это руководство покажет вам шаг за шагом установить Unreal Tournament 99 на Linux. Он будет содержать информацию о применении патча 451, потому что без него не работает webadmin.

    Опять же как и в случае с развертыванием CS сервера я не буду рассказывать как установить сам ОС, так как это элементарно просто, так что приступлю сразу к делу! Опять же я использовал самый легкий образ ОС Debian (Маленькие диски или USB-накопители amd64), скачать его можно по ссылке => Debian 9 mini cd x64 (~250-300Мб).

    При установке ОС выбираем только необходимые системные утилиты, остальное нам ни к чему.

    После установки доустанавливаем необходимое для удобства пакеты
    ssh — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой
    mc — файловый менеджер с текстовым интерфейсом
    net-tools — это набор сетевых утилит для диагностики сетей и мониторинга сетевых соединений

    apt update
    apt upgrage
    apt install ssh mc net-tools

    Так же понадобятся x32 библиотеки для запуска сервера, установим их:

    dpkg --add-architecture i386
    apt update
    apt install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386

    На этом подготовка закончена приступим к установке самого сервера.

    Прежде всего, вам нужно создать обычного пользователя. **НЕ используйте** ROOT для запуска игрового сервера! Если при установке ОС вы создали дополнительную учетную запись, на пример administrator, то она вполне сгодится!

    Если Вы этого не сделали, то просто создайте его командой:

    adduser [username]

    Эта команда запустит скрипт, который задаст несколько вопросов, например пароль.

    Как только Вы это сделаете, войдите в систему под этим пользователем. Самый простой способ сделать это без выхода из системы — использовать команду su.

    su - [username]

    Итак, теперь, когда у нас есть пользователь, нам нужно перейти в его домашний каталог. Так что давайте сделаем следующее:

    cd /home/[username]

    Далее скачиваем UT99 сервер и разархивируем его основные файлы

    wget http://geek-speak.ru/files/UT99SRV/ut-server-436.tar.gz
    tar -zxf ut-server-436.tar.gz

    переходим в каталог

    cd ut-server

    Скачиваем и разархивируем патч версии 451

    wget http://geek-speak.ru/files/UT99SRV/UTPGPatch451LINUX.tar.tar
    tar xfj UTPGPatch451LINUX.tar.tar

    Скачиваем и разархивируем ASU (Abfackelns Server Utilities)

    wget http://geek-speak.ru/files/UT99SRV/asu-0.6.tar.gz
    tar -zxf asu-0.6.tar.gz

    Даем полные права исполняемому файлу ASU

    chmod +x asu.sh

    Так как игра уже не очень новая нам нужно будет выполнить еще несколько телодвижений. Перейдем в папку System игрового сервера. «System» — c большой буквы.

    cd System

    И сделаем символическую ссылку

    ln -s libSDL-1.1.so.0 libSDL-1.2.so.0

    Выходим в корень сервера

    cd $HOME/ut-server

    Запускаем скрипт настройки

    bash ./asu.sh

    После запуска скрипт начнет запрашивать у Вас различные опции для настроек сервра. Те опции о которых ничего не знаете оставьте по умолчанию. После запуска скрипта Вы увидите следующее текстовое меню:

    MAIN MENU
    ---------
    
    B) Bot Menu
    D) Specify UT Directory and active .ini files
    /usr/games/ut-server/./System/UnrealTournament.ini
    H) Help and Copyright Information
    I) Install Init Script
    N) Enable NG Local Stats (requires JDK 1.2)
    O) Optimization Menu
    P) Patches
    R) Enable Download Redirection
    S) Server Info, MOTD and Passwords
    U) Umod Package Menu
    V) Verify Installation
    X) Exit
    
    Enter a letter from the above menu.
    ?

    Чтобы запустить сервер, мы сосредоточимся только на настройке сценария запуска. Поэтому выберите вариант I.

    Он расскажет вам что-то о запуске как root или обычного пользователя, независимо от того, что он говорит. Не запускайте его как root. Он спросит вас, какой пользователь будет запускать скрипт, введите имя пользователя, которого вы создали ранее.

    Затем он попросит вас ввести IP-адрес, который будет прослушивать. Это нужно сделать только в том случае, если на сервере имеется несколько IP-адресов. Если есть сомнения, оставьте пустым.

    Затем он спросит вас, какой тип игры вы хотите запустить, если вы не видите тип игры, который вы планируете запустить, не волнуйтесь. Просто выберите DM на данный момент.

    Затем он спросит вас, с какой карты вы хотите начать. Просто выберите одну из представленных карт. Не имеет значения, может быть изменено позже.

    Если вы планируете запускать мутаторы, введите их сейчас. Введите только один, затем нажмите клавишу ввода. Он будет продолжать задавать этот вопрос, пока вы не представите пустой ответ. Если вы не хотите запускать какие-либо мутаторы, просто нажмите клавишу ввода.

    Как только вы закончите с этим, он должен показать вам настройки / настройки, которые вы только что ввели. Просмотрите его, чтобы убедиться, что он выглядит правильно. Затем вы можете выйти из сценария.

    Сценарий создаст файл ucc.init. Важно знать, что в нем установлен путь к серверу. Итак, если вы хотите переместить сервер в другой каталог, вы должны изменить этот файл. Имя пути упоминается несколько раз.

    [Хочу упомянуть, что ASU обладает этой способностью через текстовый редактор, о котором я упоминал выше. Запустив диспетчер утилиты через ./asu.sh, затем выбрав опцию (информация о сервере, MOTD и пароли), он попросит вас там, какой порт вы хотите использовать для веб-администратора, а также имя пользователя и пароль , Не нужно редактировать UnrealTournament.ini напрямую. Он также позволит вам изменить имя сервера, MOTDS и другую информацию. -Skillz]

    Затем вы хотите включить webadmin. Вы можете сделать это, открыв UnrealTournament.ini, перейдя в раздел [UWeb.WebServer] и установив bEnabled = True и выберите порт (стандарт 5080) (может быть добавлена ​​строка ListenPort):

    [UWeb.WebServer]
    Applications[0]=UTServerAdmin.UTServerAdmin
    ApplicationPaths[0]=/ServerAdmin
    Applications[1]=UTServerAdmin.UTImageServer
    ApplicationPaths[1]=/images
    DefaultApplication=0
    bEnabled=True
    ListenPort=5080

    Также задайте пароль в разделе UTServerAdmin.UTServerAdmin (уже определено), иначе люди попытаются войти в систему со значениями по умолчанию:

    [UTServerAdmin.UTServerAdmin]
    AdminUsername = admin
    AdminPassword = mybiggestsecret

    При переходе на webadmin обязательно включите /ServerAdmin/ в свою адресную строку после хоста, потому что в противном случае он попытается перенаправить вас на это с помощью перенаправления HTTP, но это не удастся, потому что сервер не знает, что вы используя интернет-имя хоста и, следовательно, перенаправит вас на его LAN-IP, что, очевидно, не будет работать, если сервер отсутствует в вашей локальной сети. Итак, перейдите по адресу http://hostname:5080/ServerAdmin/ (не забывайте конечную косую черту).

    В качестве меры предосторожности патч 451 добавляет защиту от принудительной защиты для входа администратора. Дополнительную информацию см. В файле Releasenotes.htm в справочном каталоге. В разделе Engine.Gameinfo необходимо добавить / изменить несколько правил (в зависимости от того, они уже есть или нет):

    [Engine.GameInfo]
     (snip)
     ...
     LoginDelaySeconds=1.000000
     MaxLoginAttempts=50
     ActionToTake=DO_KickBanPlayer

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

    bash ./ucc.init start

    Для старта\остановки и перезагрузки сервера используются стандартные команды start\stop\restart. Если у вас возникли проблемы с UT, жалующимися на невозможность найти его файлы данных (см. Каталог Logs для сообщений об ошибках, если сервер не запускается), вам нужно установить переменную UT_DATA_PATH. Для этого нужно добавить строку ниже MYUSER = User.ini в ucc.init:

    export UT_DATA_PATH="$MYDIR/ut-server/System/"

    Ты знаешь, что такое безумие? Безумие - это точное повторение одного и того же действия, раз за разом, в надежде на изменение.

    #417

    Esmertec
    Хранитель
    UPD 16.11.18

    Если на сервере стала крошиться ошибка подобного типа:

    Заходим в конфигурационный файл ut сервера
    nano /home/USERNAME/ut-server/System/UnrealTournament.ini
    Ищем\правим\добавляем строки, чтоб получилось как ниже:

    [Engine.StatLog]
    LocalBatcherURL=
    LocalBatcherParams=
    LocalStatsURL=
    WorldBatcherURL=
    WorldBatcherParams=
    WorldStatsURL=
    LocalLogDir=../Logs
    WorldLogDir=
    bLogTypingEvents=False
    bWorldBatcherError=False
    
    [Engine.GameInfo]
    bWorldLog=False
    
    [IpServer.UdpServerQuery]
    GameName=ut
    OldQueryPortNumber=0
    bRestartServerOnPortSwap=False
    MinNetVer=0
    bTeamInfo=False

    т.е. ни чего не удаляем просто изменяем конфиг в первом и втором случае, в третьем добавляем строки, после чего перезапускаем сервер.

    Сложность ботов меняется там же, отвечающий параметр за это:

    [Botpack.ChallengeBotInfo]
    Difficulty=1
    • Ответ изменён 3 дн., 18 час. назад пользователем  Esmertec.

    Ты знаешь, что такое безумие? Безумие - это точное повторение одного и того же действия, раз за разом, в надежде на изменение.

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)

Для ответа в этой теме необходимо авторизоваться.