???
Математика на уровне МГУ

Показано с 76 по 83 из 83

Тема: Админам серверов Ил-2

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Заблокирован
    Регистрация
    11.03.2004
    Адрес
    Russian Federation
    Возраст
    55
    Сообщений
    3,715
    Нарушения
    0/1 (10)

    Админам серверов Ил-2

    В очередной раз решил размяться в c# и сбацал, на мой взгляд, весьма полезную для сервера программку.
    Эта программа позволяет расширить или заменить функции распространённых командеров (SC, PowerDaemon, и, пожалуй, любых других).
    Или даже создать свой собственный командер с нуля.
    При запуске одновременно с имеющимся комадером, никакого влияния на его обмен с сервером эта программа не оказывает.
    В чём суть?
    Эта программа - "обёртка" для обычного иловского сервера, позволяющая программно получать события из лога и строки из консоли сервера и передавать их любому количеству самодельных плагинов, а также отправлять из этих плагинов команды серверу, не задействуя TCP-консоль.
    Консольный порт по прежнему абсолютно свободен для существующих командеров.
    В консольное окно программы (заменяющее окно самого сервера) выводятся как консоль сервера, так и строки из лога.
    Русские буквы в консоли отображаются корректно.
    Точнее, корректно будут отображаться все буквы в кодировке системы, на которой установлен сервер (если русская локаль, то русские, если немецкая, то немецкие, если китайская, то китайские...)

    В приложенном архиве - сама программа, файл её настроек (с путём установки сервера и именем исполняемого файла сервера), интерфейс Interface.dll и папка с плагином, собирающем логи сервера в папку Logs, с сортировкой в подпапках по году, месяцу и дню. На каждую новую миссию заводится новый файл лога консоли и логфайла с временем начала миссии и её названия в имени файла.
    Порядок установки:
    1. Установить net.framework4 с сайта microsoft.
    2.Обязательно!!! переименовать файл сервера (il2server.exe), например, в il2fb.exe.
    3. Распаковать содержимое архива в папку с сервером
    4. Открыть файл il2server.exe.config в текстовом редакторе (блокнот, например) и вписать путь к серверу и имя исполняемого файла (во что переименовали il2server)
    <setting name="Serverpath" serializeAs="String">
    <value>D:\server</value>
    </setting>
    <setting name="Serverexe" serializeAs="String">
    <value>il2fb.exe</value>
    </setting>
    После этого, можно как обычно запускать или из командера, или непосредственно файл программы (сервер она запустит самостоятельно).

    Внимание!
    Если на компьютере установлено несколько серверов, то необходимо, чтобы имена исполняемых файлов серверов не совпадали.
    Эта программа, при запуске, ищет среди процессов, процессы с именем исполняемого файла, прописанного в конфиге программы, и убивает все такие процессы.


    В следующем посте будут исходники плагина на с# и пример плагина на VisualBasic


    Итак...
    Вторая версия.
    Теперь основной функционал вынесен в файл IL2SERVER.dll.
    Как и обещал - организован сбор статистики пилотов за сессию на сервере во встроенную таблицу.
    Собирать статистику (опрашивать сервер), программа может как самостоятельно, так и с помощью Геннадьичевского SC.
    посмотреть что и как собирается можно с помощью плагина TestPlugin, набрав в консоли программы команду l (малое латинское эль), ну и "энтенр".
    Если программа запущена вместе с SC от Геннадьича, то таблица пилотов на сервере будет заполняться без дополнительных действий, если без SC, то чтобы таблица полностью заполнялась, нужно ввести в консоли команду start. Чтобы остановить сбор статистики - команду stop.
    Из необычного - состояние игрока теперь формируется в виде строки символов, каждый из которых соответствует тому или иному событию с пилотом или самолётом.
    Например, строка "MofWHKs" Означает, что из меню (M) появился на поле, занял самолёт(o), взлетел (f), пилот был ранен (W), тяжело ранен(H), убит(K), самолёт сбит(s). (большие буквы - события, относящиеся к игроку(пилоту), маленькие - к самолёту)
    Полный перечень событий есть в документации (INTERFACE.XML) к файлу INTERFACE.dll, ну и в следующем, сообщении как и полный перечень собираемой статистики (колонки таблицы).
    Кроме всего прочего, в таблице есть ещё 2 столбца - координаты начала (первое появление на поле или взлёта) и конца вылета (последние координаты, которые появились в логе).

    Добавлено 20.10.2010
    В архиве ServerCommander.rar обновлён до версии 2.1.0.0 файл IL2SERVER.dll.
    Исправлен баг с пропуском событий отключения игроков
    Вложения Вложения
    Крайний раз редактировалось POP; 20.12.2010 в 08:05.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •