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

Страница 4 из 4 ПерваяПервая 1234
Показано с 76 по 100 из 104

Тема: Сервер Ил-2 под Linux

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    читаю форум и фигею... Аватар для DnK
    Регистрация
    18.09.2006
    Адрес
    Родина Ленина
    Возраст
    51
    Сообщений
    351
    Images
    3

    Ответ: Сервер Ил-2 под Linux

    возьми telnetCommunicator.py из версии под freebsd, было такое висло при попытке получить лок self.__tnC.acquire() видимо это только под виндой надо.
    Нет рабства безнадёжнее, чем рабство тех рабов,
    Себя кто полагает свободным от оков (с)

  2. #2

    Ответ: Сервер Ил-2 под Linux

    не хочет...
    Пробовал и виндовым и фришным. Причем сервер на команды отвечает (map, gunstat, vote и др). А карту не грузит

  3. #3
    читаю форум и фигею... Аватар для DnK
    Регистрация
    18.09.2006
    Адрес
    Родина Ленина
    Возраст
    51
    Сообщений
    351
    Images
    3

    Ответ: Сервер Ил-2 под Linux

    тогда в miniDaemon.ini стоит проверить пути. особенно относительный путь к картам mission.base.url
    и посмотреть что пишет на консоль сервер ил-2
    Нет рабства безнадёжнее, чем рабство тех рабов,
    Себя кто полагает свободным от оков (с)

  4. #4
    читаю форум и фигею... Аватар для DnK
    Регистрация
    18.09.2006
    Адрес
    Родина Ленина
    Возраст
    51
    Сообщений
    351
    Images
    3

    Ответ: Сервер Ил-2 под Linux

    да ini не нужны, забыл убрать строку, в miniDaemon.py удалите 96 строку self.__missionConf = IniFile(self.__config['MAIN']['mission.dir'] + self.__missionName + '.ini', )
    Нет рабства безнадёжнее, чем рабство тех рабов,
    Себя кто полагает свободным от оков (с)

  5. #5
    И.О Вечного Курсанта Аватар для Nike "Targon"
    Регистрация
    21.07.2003
    Адрес
    Russian Federation
    Возраст
    52
    Сообщений
    37

    Ответ: Сервер Ил-2 под Linux

    Спасибо господа вирпилы за помощь и советы - запустил таки я миниДемона в работу! Немного потестил - правда, сразу оговорюсь, на своем тренировочном сервере, практически без нагрузки - 3-4 пилота и 5 карт в ротации. Работает, чертяка
    Ось - Debian 4 Etch, il2 dedicated 4.08m. Вариант Демона - виндовый, в коде miniDaemon.py коментились строки: 96
    Код:
    #        self.__missionConf = IniFile(self.__config['MAIN']['mission.dir'] + self.__missionName + '.ini', )
    и 466-468
    Код:
    #	 exit(1)
    #   finally:
    #    pass
    Заработало практически сразу все, были обычные для чайника косяки с прописыванием путей в miniDaemon.ini Сейчас там следующее:
    Код:
    mission.base.url Net/dogfight/daemon/
    mission.dir /game/.wine/drive_d/IL2server/Missions/Net/dogfight/daemon/
    Правда, несколько непонятна логика работы модуля, определяющего, админ ли на сервере. В файле admin.txt пишу IP машин, с которых заходит админ - по одному ип в строке - работает только последний в списке. Кроме того, сервак смотрит на внешку из под NATа - снаружи, с внешним IP захожу админом, из внутренней сети - пускает, но говорит "Вы не Админ!" - абидна,понимашь!
    Может, быть доработать модуль, чтобы Админом считался юзверь, зашедший _С определенного ИП___И___С определенным ником ?

    З.Ы. В коде miniDaemon.py в строке 443
    Код:
    self.__console.writeMessage("Слудующая карта: %s"%nextmap, None)
    поменял на
    Код:
    self.__console.writeMessage("Следующая карта: %s"%nextmap, None)
    Уж больно глаз режет

  6. #6
    читаю форум и фигею... Аватар для DnK
    Регистрация
    18.09.2006
    Адрес
    Родина Ленина
    Возраст
    51
    Сообщений
    351
    Images
    3

    Ответ: Сервер Ил-2 под Linux

    Цитата Сообщение от Nike "Targon" Посмотреть сообщение
    Правда, несколько непонятна логика работы модуля, определяющего, админ ли на сервере. В файле admin.txt пишу IP машин, с которых заходит админ - по одному ип в строке - работает только последний в списке.
    строку 273
    Код:
    if(player[0] in self.__admins):
    заменить на
    Код:
    if(player[0]+"\n" in self.__admins):
    и файл admin.txt заканчивать пустой строкой
    Нет рабства безнадёжнее, чем рабство тех рабов,
    Себя кто полагает свободным от оков (с)

  7. #7
    И.О Вечного Курсанта Аватар для Nike "Targon"
    Регистрация
    21.07.2003
    Адрес
    Russian Federation
    Возраст
    52
    Сообщений
    37

    Ответ: Сервер Ил-2 под Linux

    На всяк случай распишу поподробнее, про пути и команды запуска:

    файлы серверной части Ила лежат по пути:
    /game/.wine/drive_d/IL2server/
    стартовый файл - экзешник запускаемый под вайном - il2server
    соответственно запускаю процесс таким скриптом:
    il2start
    Код:
    #! /bin/bash
    screen -d -m -S il2 wine d:/il2server/il2server
    файлы демона лежат здесь:
    /game/miniDaemon/
    стартовый скрипт - rundaemon.sh
    соответственно запускаю процесс таким скриптом:
    mDstart
    Код:
    #! /bin/bash
    cd /game/miniDaemon
    screen -d -m -S miniD ./rundaemon.sh
    содержимое файла miniDaemon.ini
    Код:
    [MAIN]
    mission.base.url Net/dogfight/daemon/
    mission.dir /game/.wine/drive_d/IL2server/Missions/Net/dogfight/daemon/
    mission.time 3600
    ReportPeriod 600
    vote.percent 50
    [DeathControl]
    Limit 10
    BanTime 240
    BanTime1 360
    BanTime2 420
    BanTime3 180
    [Telnet]
    host 192.168.5.15
    port 20001
    Главное правильно прописать во эти пути
    mission.base.url
    mission.dir

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

  8. #8

    Re: Сервер Ил-2 под Linux

    Запустили у себя под фришкой сервер 4.10, так же запущен минидеймон под неё же. Все вроде нормально, но примерно раз в 3 дня иногда и раньше минидеймон виснет(перестаёт реагировать на команды, нет ротации карт), перезапускаем опять все работает. Проблема пока не решена. Чем ему можно помочь?
    Вложения Вложения
    Крайний раз редактировалось Кроу; 29.01.2011 в 18:19.

  9. #9
    И.О Вечного Курсанта Аватар для Nike "Targon"
    Регистрация
    21.07.2003
    Адрес
    Russian Federation
    Возраст
    52
    Сообщений
    37

    Re: Сервер Ил-2 под Linux

    Если проблема связана с пустыми и/или кириллическими именами пользователей, то в версии 4,10 сервера есть переменная filterUserNames, установив которую, можно отфильтровать пользователей. Цитирую из 4.10_Guide.pdf :
    Player Name & Callsign Filtering
    Server can filter out all non-latin & non-cyrillic characters from players name & callsign by
    adding filterUserNames=1 to the [NET] section of conf.ini.

  10. #10

    Re: Сервер Ил-2 под Linux

    Цитата Сообщение от Nike "Targon" Посмотреть сообщение
    Если проблема связана с пустыми и/или кириллическими именами пользователей, то в версии 4,10 сервера есть переменная filterUserNames, установив которую, можно отфильтровать пользователей. Цитирую из 4.10_Guide.pdf :
    Player Name & Callsign Filtering
    Server can filter out all non-latin & non-cyrillic characters from players name & callsign by
    adding filterUserNames=1 to the [NET] section of conf.ini.
    Сегодня опять перезапустили деймона, после чего я поставил пробел в своем нике и зашел на сервер и деймон тут же повис)
    Nike "Targon" сходу что то не пойму, а какой это conf.ini который c или s ?

  11. #11

    Re: Сервер Ил-2 под Linux

    Цитата Сообщение от Кроу Посмотреть сообщение
    который c или s ?
    C -консольный,S - серверный

  12. #12
    И.О Вечного Курсанта Аватар для Nike "Targon"
    Регистрация
    21.07.2003
    Адрес
    Russian Federation
    Возраст
    52
    Сообщений
    37

    Re: Сервер Ил-2 под Linux

    Цитата Сообщение от Кроу Посмотреть сообщение
    Сегодня опять перезапустили деймона, после чего я поставил пробел в своем нике и зашел на сервер и деймон тут же повис)
    Nike "Targon" сходу что то не пойму, а какой это conf.ini который c или s ?
    Только что проверил, добавление filterUserNames=1 в секцию [NET] файла confs.ini приводит к следующим результатам:
    1. Наличие пробела либо другого не латинского либо не кириллического символа в нике пилота не мешает логину на сервер, НО в логах сервера наблюдается ОТСУТСТВИЕ пробела в нике пилота. Например ник Nike "Targon" приводится к виду NikeTargon
    2. Наличие кириллических символов в нике пилота НЕ приводит к падению даймона, НО команды управления даемоном не проходят.
    3. Даемон в данных условиях не падает.
    Крайний раз редактировалось Nike "Targon"; 01.02.2011 в 09:40.

  13. #13

    Re: Сервер Ил-2 под Linux

    Цитата Сообщение от Nike "Targon" Посмотреть сообщение
    Только что проверил, добавление filterUserNames=1 в секцию [NET] файла confs.ini приводит к следующим результатам:
    1. Наличие пробела либо другого не латинского либо не кириллического символа в нике пилота не мешает логину на сервер, НО в логах сервера наблюдается ОТСУТСТВИЕ пробела в нике пилота. Например ник Nike "Targon" приводится к виду NikeTargon
    2. Наличие кириллических символов в нике пилота НЕ приводит к падению даймона, НО команды управления даемоном не проходят.
    3. Даемон в данных условиях не падает.
    Так же проверили у себя. По первому пункту та же самая картина.По второму и третьему нет результатов так как даймон вообще отказался запускаться с этой строкой. При удалении строчки filterUserNames=1 запустился, но опять же при входе на сервер с пробелом в нике останавливается. Не пойму почему результаты разные ведь юзаем мы одного и того же даймона и настройки все сделаны как описано в этой теме. Кстати всё таки почему conf.ini., куда делась s, опечатка?
    mar$ кстати удаление строчки checkRunTime=2 не привело к желаемым результатам, мониторинг так же пропадает после входа 6 -го человека на сервер.
    Крайний раз редактировалось Кроу; 01.02.2011 в 10:05.

  14. #14
    И.О Вечного Курсанта Аватар для Nike "Targon"
    Регистрация
    21.07.2003
    Адрес
    Russian Federation
    Возраст
    52
    Сообщений
    37

    Re: Сервер Ил-2 под Linux

    Цитата Сообщение от Кроу Посмотреть сообщение
    Не пойму почему результаты разные ведь юзаем мы одного и того же даймона и настройки все сделаны как описано в этой теме.
    Во вложении архив, снятый с рабочего демона, также файлы confs.ini confc.ini
    Цитата Сообщение от Кроу Посмотреть сообщение
    Кстати всё таки почему conf.ini., куда делась s, опечатка?
    Да , похоже опечатка.
    Вложения Вложения
    • Тип файла: zip daemon.zip (110.7 Кб, Просмотров: 54)

  15. #15

    Re: Сервер Ил-2 под Linux

    Спасибо. Только хочу уточнить это ты виндовый выложил или на фришку? У меня фришный стоит.

  16. #16
    И.О Вечного Курсанта Аватар для Nike "Targon"
    Регистрация
    21.07.2003
    Адрес
    Russian Federation
    Возраст
    52
    Сообщений
    37

    Re: Сервер Ил-2 под Linux

    Цитата Сообщение от Кроу Посмотреть сообщение
    Спасибо. Только хочу уточнить это ты виндовый выложил или на фришку? У меня фришный стоит.
    Виндовый

  17. #17

    Re: Сервер Ил-2 под Linux

    Здаётся мне что во фряшном даймоне есть где то ошибка, какую то строку видимо надо править. Вот только какую?
    А что если виндовый на фришке запустить, не пройдет ли такой вариант?

  18. #18
    И.О Вечного Курсанта Аватар для Nike "Targon"
    Регистрация
    21.07.2003
    Адрес
    Russian Federation
    Возраст
    52
    Сообщений
    37

    Re: Сервер Ил-2 под Linux

    Цитата Сообщение от Кроу Посмотреть сообщение
    А что если виндовый на фришке запустить, не пройдет ли такой вариант?
    ИМХО должно работать. Я под Debian запускаю виндового демона, и работает...

  19. #19

    Re: Сервер Ил-2 под Linux

    Ну значит на выходных займусь. Сначала перезалью фришный, если ситуация та же будет будем пробовать виндового ставить. О результатах потом отпишусь.

  20. #20

    Re: Сервер Ил-2 под Linux

    Значит далее что получилось. Для начала лог даймона
    INFOaemonilot [=CPS= Andrey] has disconnected
    Exception in thread Thread-2:
    Traceback (most recent call last):
    File "/usr/local/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
    File "miniDaemon.py", line 252, in run
    self.__playerConnected(userConnect.match(line).groups())
    File "miniDaemon.py", line 271, in __playerConnected
    self.__console.executeCommand('kick \"%s\"' % theUserName)
    AttributeError: 'Console' object has no attribute '_Console__console'

    INFOaemon:Stopping deamon...
    INFOaemoneamon stopped
    INFOaemon:Telnet communicator stopped
    Press any key to continue...
    Пару строчек сверху нехватает, но из этого видно что даймону ненравятся ники с пробелами, но команда кик почему то сервером невыполняется.
    далее анализируя файл miniDaemon.py была найдена 268 строка в которой были удалены пробелы в кавычках.
    Оригинал
    if notok==1 or string.find(theUserName,' ')>0 or theUserName=='' or theUserName[-1]=='0':
    редактированная
    if notok==1 or string.find(theUserName,'')>0 or theUserName=='' or theUserName[-1]=='0':
    После этого минидаймон стал нечувствительным к неправильным никам и его остановки прекратились.
    Правда заработало это только на виндовом, во фришном изменения не привели к нужным результатам.
    После этого вылезла новая проблема с админом.Все сделали как было описано выше но в итоге все равно пишет "Вы не админ"
    Так же остается проблема мониторинга сервера после входа 6-го человека.

  21. #21
    Заявка на ПМЖ Аватар для lekseys
    Регистрация
    14.11.2013
    Адрес
    Москва
    Сообщений
    11
    Записей в дневнике
    1

    Re: Сервер Ил-2 под Linux

    Господа, подскажите, пожалуйста. Возможно ли на современных линуксах или бзд поднять Ил-2 Штурмовик, Версия 4.09. И чтобы сервер позволял использовать моды.

  22. #22
    Зашедший Аватар для oblalex
    Регистрация
    13.02.2013
    Возраст
    34
    Сообщений
    35

    Re: Сервер Ил-2 под Linux

    1. Берете сервак с винды.
    2. Переносите на юникс (копируете, монтируете, etc).
    3. Запускаете под Wine.
    4. Profit.

    Если нужен серверный ДевайсЛинк, то брать Wine >= 1.6.
    Читайте статью, задавайте вопросы, если возникнут.

  23. #23
    Заявка на ПМЖ Аватар для lekseys
    Регистрация
    14.11.2013
    Адрес
    Москва
    Сообщений
    11
    Записей в дневнике
    1

    Re: Сервер Ил-2 под Linux

    Спасибо за ответ. До той темы добрался сам поиском. Понял, что в лоб через Wine все делается.
    Несущественно, что сервер старый - 4.09?

    В каком случае мне нужен il2dsd (и живой ли он)? Чисто для "демонизации" его?

    Что такое девайслинк? Подключение устройств (джойстика) в серверу? В рассматриваемом варианте клиенты на виндоузе.

    И еще вопрос, есть кто-то, кто готов поднять такой сервер за плату? Пока в теории.

  24. #24
    Зашедший Аватар для oblalex
    Регистрация
    13.02.2013
    Возраст
    34
    Сообщений
    35

    Re: Сервер Ил-2 под Linux

    1. Номер версии - личное дело каждого. Хоть он и будет старый, но пенсию-то ему платить не притется
    2. il2dsd = il2ds daemon, да, это только для запуска сервера в фоне + с ним идет скрипт, умеющий выкачать сервак по патчам и распаковать его в нужное место. Скриптом можно воспользоваться отдельно ничего не устанавливая (кроме curl, unzip и wget), например, чтобы получить сервер 4.09 достаточно выполнить

    Код:
    bash <( curl https://raw2.github.com/IL2HorusTeam/il2dsd/master/scripts/il2ds-install ) -d /tmp -o /opt/games/il2/ds -v 409
    патчи будут лежать в '/tmp', сервер - в '/opt/games/il2/ds'. Перед скачиванием проверьте права доступа к директориям.

    3. ДевайсЛинк - [это такой протокол], который работает поверх UDP. На клиенте (в одиночном режиме) позволяет считывать информацию с приборов, элементов управления и управлять последними. На сервере можно использовать как радар в реальном времени и следить за координатами игроков и объектов.

    4. Про хостинг ничего не скажу.

Страница 4 из 4 ПерваяПервая 1234

Ваши права

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