Перейти к содержанию
Друзья, важная новость! ×

SF_elamaunt

Пользователь
  • Постов

    685
  • Зарегистрирован

  • Посещение

Весь контент SF_elamaunt

  1. Хотите высказаться - добро пожаловать в другую тему. Будете продолжать писать тут - буду банить пожизненно на сервере. Играть никто не заставляет. Прошу модераторов почистить тему. Этот мод делал Зенель, а не я. Подобные изменения уже миллион раз обсуждались. Прежде чем задавать такие вопросы лучше разберись в теме этого мода. Выбор мода на этот ивент не изменится. Я в описании таких изменений не увидел.
  2. Приглашаю всех на Beta Automatchmaking Event, который пройдет 3 и 4 августа.
  3. Привет всем! Ну что, прогресс по серверу дошел до определенного уровня и на эти выходные я объявляю специальное событие Beta Automatchmaking Event (мини бетатест). Настоящий бетатест еще впереди, но сейчас для всех желающих будет шанс попробовать результат моей работы на деле. На предстоящие выходные будет предоставлен доступ к серверу всем, кто зарегистрируется в этой теме. Ваша задача будет очень простой - играть в автоматче. Желательно больше всего играть 1на1 (но вы сможете протестировать также командные игры по случайными командами). Потому что по окончанию события будет денежный приз лучшим игрокам автоматчмейкинга. Это событие призвано повысить престиж внутриигрового рейтинга, так как уже многие по-настоящему забыли, что это такое. Играть будете с использованием Soulstorm Bugfix Mod 1.56a. Без этого мода ваши игры на сервере никто не увидит, так что только так. Все-таки я решил, что игра будет использовать APPID оригинальной игры для лучшего соединения в игре, поэтому вам потребуется установленный SS через Steam. Но только установленный (для подключения к серверу). Чтобы играть надо будет установить и полностью настроить версию SS 1.2 (можно через патч на Steam версию). Также вам потребуется следующий набор карт для игры на сервере. Разархивировать в папку с игрой. Событие будет идти два дня 3 и 4 Августа. Сервер будет доступен в субботу с 12 до 19 по МСК и в воскресенье в те же часы. Это сделано, чтобы зарегистрированные игроки могли собраться вместе. Я до наступления намеченного времени выложу программу для установления связи с сервером и инструкцию по установке. Разрешены смурфы. То есть вы сможете создать аккаунт, по которому никто не сможет понять, что это именно вы (ну кроме меня В) ). Призы: 1 место в рейтинге 1на1 - 2000 рублей. 2 место в рейтинге 1на1 - 1000 рублей. 3 место в рейтинге 1на1 - 500 рублей. Я установил следующий набор карт для автоматчмейкинга: "Карты 1на1" [TP MOD]edemus gamble [TP MOD]galenas crusade [TP MOD]shrine of excellion [TP MOD]meeting of minds 2P Battle Marshes 2P Outer Reaches (доработанная Дэвилом) 2P Blood River 2P Fata Morgana 2P Titan Fall (доработанная Дэвилом) 2p velvet duress (доработанная Дэвилом) 2P Tranquilitys End (доработанная Дэвилом) 2P FraziersDemise (доработанная Дэвилом) 2P Moonbase (доработанная Дэвилом) "Карты 2на2" 4p murad swamplands (доработанная Дэвилом) 4p gurmuns pass 4P Biffys Peril 4P Gorhael Crater 4P Ice Flow 4P Doom Spiral 4p panrea lowlands (доработанная Дэвилом) 4P Skerries (доработанная Дэвилом) 4p Saints Square "Карты 3на3" 6p Mortalis 6P Alvarus 6P Shakun Coast 6P Fury Island 6p paynes retribution "Карты 4на4" 8P Oasis of Sharr 8P Forbidden Jungle 8P Jalaganda Lowlands 8p cerulea 8p burial grounds 8p thurabis plateau Форма для регистрации: 1) Ваш Steamid. Его можно узнать скопировав ссылку на ваш профиль в Steam. Часть ссылки состоит из идентификатора. Его надо указать правильно, иначе вы не получите доступ к серверу. Это должно быть число! "Например вот так:" 2) Ваш Discord Id (чтобы я мог организовать конференцию между игроками). Пример моей регистрации 1) 76561198001658409 2) elamaunt#4016 Все обсуждения вести в этой теме. Я тоже буду участвовать в играх в авто, но сам я на приз претендовать не буду. Если будут вопросы и проблемы, то это можно будет обсудить через Discord, когда событие начнется. ---------------------------------------------------------------------------------------------------------------------------------------------------- Регистрация на Beta Automatchmaking Event заканчивается сегодня в 23:00 по МСК. ----------------------------------------------------------------------------------------------------------------------------------------------------
  4. Спасибо, приятно радовать вас хорошими новостями :D Подождите еще немного. Все будет
  5. Работа идет. Периодически устраиваем внутренние тесты (каждый вечер). Вот небольшой список того, что было сделано: 1) Заменена база данных статистики на более подходящую и переписан код работы с ней. До этого был код с других серверов. Именно на на нее пали подозрения в периодических зависаниях сервера и странности в обновлении статистики. После замены пока эти баги замечены не были. 2) Проведено огромное количество тестов игры в авто. Подключение к игре 1на1 практически доведено до идеала. Игра создается у всех тестеров, подключение к чужой игре происходит очень быстро. Игры 2на2 тоже работают, но их тестили значительно меньше, там еще могут быть баги. Будем устраивать также тесты 3на3 и 4на4. Кастомки тоже работают отменно. Чтобы этого добиться пришлось пройти через следующее: Недавно исправлял баг блока для тех хостов в авто, у кого статический IP привязан на компьютер. Игра использует адреса клиента для получения хэш-имени комнаты для авто. Если хэш посчитан неправильно, игроки не попадут в одну комнату. Теперь все это работает правильно. Также игра иногда дает неправильный порт для подключения. Когда коннект быстро устанавливается во время подключения игрока, игра еще не успевала среагировать. Через перехват данных мне удалось это исправить и подменить порт сразу на правильный. Также игра видит только игры только тех игроков, с которыми установилось прямое соединение. Из-за того, что прямое подключение устанавливается долго (в самом худшем случае до 20 секунд), я проработал логику имитации ответа от другого клиента. Благодаря этому вы увидите игры всех хостов очень быстро независимо то наличия установленного соединения. Это также значительно увеличило скорость подключение к игре в авто. Также был случай блока в Долоросой. Я иногда не мог к нему подключиться и он ко мне тоже. Это было с использованием spacewar. Я решил устроить эксперимент и воспользоваться не spacewar AppID , а AppID от Soulstorm в Steam версии. Как результат - блок полностью исчез и подключение ускорилось (скорее всего с AppID от Soulstorm в Steam начал работать Relay сервер Steam для решения проблем блоков и пинга, а в spacewar он отключен). Поэтому я склоняюсь к тому, что для пользования сервером нужно будет наличие лицензионной версии игры, чтобы никогда не видеть блоков. Играть все равно будете через 1.2 версию. 3) Также начали переосмысление launcher'а для сервака. Я бы хотел видеть его более современным, чем был довонлайн. 4) Сообщение о том, что кто-то начал игру в авто, теперь перенесено на Steam версию. Также сообщается, что за игра была создана (1на1, 2на2 и т.п.). Ну и также было сделано еще куча мелочей в коде сервера, но это вам не так интересно. Работаем дальше :ork-rush: Сейчас ответы отражают то, что людям наиболее важно.
  6. Спасибо за донат 10000р от noobi_noobish Добавил в первый пост.
  7. Провели внутренние тесты между собой. Активно участвовали Дэвил, Джихамо и Гигамок, за что им спасибо. Также отдельное спасибо Санрею за то, что он предоставил хостинг для сервера. Это очень помогает в тестах и временно может быть использовано для старта. Также Санрей мне сильно помогает в развертывания этого сервера для тестов. По поводу самих тестов. Все смогли сконнектиться друг с другом 1на1 в авто. Также смогли сконнектиться 2на2. Стата считается правильно. Нашли проблемы на сервере, которые приводят к редким подвисаниям всего сервера. Теперь пришло время заняться оптимизацией внутренней логики, так как эти проблемы влияют на работу игры, особенно во время подключения игроков. Завтра альфатеста не будет, потому что сервер еще к этому не готов. Насчет форума реликов. Я начал склоняться к тому, что писать туда все же не стоит. Преданных фанатов можно собрать и другими способами. "ENGLISH" Conducted internal tests. Devil, Jghamo and Gigamok actively participated, for which they were grateful. Also a special thank you to Sunray for providing hosting for the server. It helps a lot in tests and can be temporarily used for start. Sunray also helps me a lot in deploying this server for tests. About the tests themselves. Everyone was able to connect with each other 1on1 in the automatch. Also able to connect 2in2. The stat is considered correct. Found problems on the server that lead to rare hangs of the entire server. Now it's time to tackle the optimization of internal logic, since these problems affect the operation of the game, especially during the connection of players. Tomorrow there will be no Alfatest, because the server is not ready for it yet. Regarding the forum of relics. I began to lean toward the idea that there was no need to write there. Loyal fans can be collected in other ways.
  8. Написав тонну кода и сделав бесчисленное количество тестов я смог заставить работать автоматч через ретрансляцию Steam. Это победа, господа! :ork3: Я обманул игру и заставил ее подключаться к каналам авто используя идентификаторы Steam. Сегодня проведем внутренние тесты в авто между собой (я пока проверил только авто 1на1 :ork-versus: ). Насчет завтрашнего альфатеста пока ничего сказать не могу, у меня в эти выходные очень мало времени. Особенно в воскресенье. Возможно, он будет проходить без меня, но я не хотел бы его переносить. Сейчас игры в лобби появляются с немного неприятной задержкой, эта задержка также влияет на авто. Мне пришли в головы некоторые хитрости, чтобы ускорить этот процесс. Возможно, успею решить эту особенность игры до альфатеста. Если все пойдет гладко, то бетатест уже не за горами.
  9. Я считаю, попробовать стоит. Пусть Убивака напишет, как и хотел.
  10. А темы с багами и жалобами юзеров удаляют? Может там никто из реликов уже ничего не читает. Просто покидать ссылки в темы с реанимацией SS.
  11. Успешно победил подключение любого количества игроков. :ork-beer: Ретрансляция при помощи Steam закончена. Теперь работаю над проблемами авто. Скоро обновлю первый пост. :ork-lampa: Ну SS 1.2 придется ставить и прогу запускать. То же самое <_<
  12. Спасибо за донат 1000р. Отправитель пожелал остаться анонимным. Добавил в первый пост.
  13. Вчера делали кучу экспериментов с подключением, но никак не получалось подключить третьего игрока. Я уже начал думать, что идея со стимом невозможна и надо самостоятельно разбираться с подключениями со стороны сервера. Пошел вечером спать и пока не мог уснуть мне пришло озарение, как можно перехитрить игру. Сделали сегодня тест и, ура, эксперимент удался! Это значит, что теперь я работаю только в этом направлении. На новом сервере теперь все будут использовать подключение Steam (привет spacewar), что гарантирует идеальный коннект для всех, отсутствие блоков и безупречный пинг. Вывод - надо нормально высыпаться и работать на свежую голову, а то сидеть над сервом после основной работы это то еще дело. Для подключения стим мне нужно перехватывать сообщение от хоста и подменять адреса, чтобы соединение пошло через Steam. Сейчас сделан хардкод для теста, чтобы я мог подключиться с JGHAMO. Надо будет написать код, который сработает во всех случаях и для большего количества игроков. К воскресенье постараюсь закончить, чтобы устроить альфатест уже на Steam. Код подключения в авто тоже нужно адаптировать под Steam, но это более чем решаемо. P.S. Кстати, встретили с JGHAMO эмблем баг. Это происходило из-за того, что эмблемы весят больше, так называемого размера MTU, порядка 1200 байт, что не даст пройти эмблемам на некоторых старых маршрутизаторах. Я эту проблему решил, используя возможность steam для фрагментированной отправки данных до 1 мегабайта. Так что можете сказать до свидания эмблем багу навсегда ;)
  14. Я не знаю, что у меня в итоге получится. Вчера сделали тест 1на1 через ретрансляцию Steam, пинг был идеальный. Но пока не стоит рассла[мамочки!]ся и думать, что уже все готово и действительно будет так окончательно.
  15. Спасибо за донат 100р от Максим Сергеевич Ч. Добавил в первый пост. --------- Я всерьез взялся за изучение коннекта в игре, так как это сейчас единственное серьезное препятствие для работы сервера. Исследую два направления, так как не знаю, какое в итоге получится и будет нормально работать. Первое: проработать код создания игры и фильтрации адресов, а затем самостоятельно организовать проброс NAT, когда необходимо, через сервер. Второе: используя знания о поведении игры с точки зрения NAT сделать ретрансляцию соединения через SteamAPI. Первое это реализация, как было сделано в GameSpy, тут мне помогут исходники других проектов. Надежно, но может не быть достаточно качественно. Второе это неожиданно пришедшая идея (так как я разбираюсь в SteamApi) сделать хитрый алгоритм и использовать Steam для связи игроков по SteamID. Качественнее Steam я проброс NAT вряд ли смогу сделать. Мне удалось написать прототип ретранслятора и связать в одной игре двух игроков. То есть тут связь такая: Игрок1 --- ретранслятор --- интернет --- ретранслятор --- Игрок2 Игры думают, что [ну уж нет]одятся в одной сети друг с другом, а не в интернете. Но есть особенности в подключении еще игроков и их я сейчас пытаюсь разрешить. В общем само пока ничего не работает. Я слышал, что Дробор разбирается в NAT. Может он чем поможет.
  16. Первый альфа тест завершен. Выяснилось, что основная проблема сейчас в алгоритме подключения к игре. В течение следующей недели я постараюсь с этим разобраться. Спасибо всем тестерам за участие и терпение.
  17. Ну что, начинаем Альфа тест. Я буду лично каждому отправлять установщик, поэтому для этого надо писать мне в личку. Просьба не давать другим установщик, если вы его получили. Тестируем преимущественно авто 1в1 и командные по договоренности. А также обновление статы. Вот вам памятка о поведении авто, чтобы вы понимали, что происходит: 1. Если вы видите после нажатия авто строку 1/2 (типа один из двух игроков найден), это значит, что вы не нашли подходящие хосты и будете хостом сами. Ваша игра будет создана через некоторое время и только после этого другие игроки при нажатии на авто смогут к вам попасть. 2. Если вы видите долго слово "Автоматч", это значит, что вы пытаетесь подключиться к другой игре, но сервак неправильно определил адрес хоста и не может найти его комнату. То есть подключиться к этому хосту вы НЕ сможете. 3. Если вы видите долго "Вы создаете игре" и "Вы подключаетесь к игре" это значит, что идет установление соединения. Если игра пытается выполнить проброс NAT (для людей с нестатическим IP точно) и это может занять процесс до минуты. Если это идет дольше двух минут, то, скорее всего, подключение не удастся, потому что сервак снова неправильно определил адрес хоста или без нормального проброса NAT для вас это пока нереально. 4. Если вы после подключения видите 2/2 или что-то подобное, то вы уже подключены и надо дождаться старта игры. 5. Если у вас ничего не получается, проверьте, точно ли вы нажимаете авто с ВЫКЛЮЧЕННОЙ галочкой "Игра на счет".
  18. Примерно через час-полтора начнется закрытое альфа тестирование. Донатеры могут поучаствовать в этом. Пишите мне в личку, я дам установщик, когда все начнется. Нужна установленная версия SS 1.2 без модов. Сидим вот на этом дискорд сервере: https://discord.gg/xhGZkQ Девил, Убивака и Гигамок вроде собирались стримить, но это неточно. Сразу предупреждаю, что могут быть баги с подключением. Особенно у тех, кто не использует статический IP. Сейчас код проброса Nat отключен, так как он не еще не проверен и вызывает проблемы. Сервак будет развернут на хостинге Санрея.
  19. На стриме Devil`а я показал как сейчас работает авто и обновление статы с моего компьютера. Это было сделано буквально пару часов назад. Вырезка со стрима
  20. Я напишу адаптивный алгоритм, который будет зависеть от количества игроков в авто, времени ожидания, рейтинга и прочего, но настроек к нему не будет, потому что все должны быть в равных условиях при поиске и не иметь возможности набивать стату играя только с нубами. Если хочется расслабиться в игре, то вперед в кастомки. В авто легкой победы не будет. Ну или тебе придется сливать игры и отдать рейтинг другим игрокам, но потом ты снова его наберешь, если хорошо играешь. Кстати, намеренные сливы будут как дисконнекты засчитываться.
  21. Это "слегка" противоречит идее автоподбора. Авто будет работать только на основе твоего рейтинга.
  22. Это стоило написать, после всего вышесказанного
  23. Скорее всего тесты будут завтра. Я еще не успел все подготовить. Рейтинговые плашки стоит поискать, это несложно сделать. Весь текст в игре выдается сервером. В лаунчере можно сделать все, что захочется. Есть еще идея, создавать комнату для турнира в списке комнат прямо в игре и давать доступ только участникам.
  24. О такой вещи я думал, но лучше выводить X игроков в поиске около вашего рейтинга.
  25. На всякий случай скажу, что все, что пишет Санрей лучше фильтровать. Процентов 80 сказанного он только что придумал. "таблицы где будет список текущих игроков в очереди автоподбора" никогда не будет.
×
×
  • Создать...