Elemental Fracture Мод 3.20.0 – Примечания к патчу
Автоматический перевод с английского. Читать оригинал
Перезапустите лаунчер, дождитесь загрузки модификации 3.20.0 и играйте. Патч баланса остался без изменений в версии игры 6.4.4 , а лаунчер — на версии 3.5.11 .
Этот фильм о наблюдении.
Spellbreak всегда предлагал режим наблюдателя. И он хорош: вы следите за игроком через его собственную камеру, видите его здоровье и экипировку, можете переключаться между игроками. Но был только один способ попасть в игру — попасть в изгнание. Вы не могли открыть матч, в котором играл кто-то другой, и просто наблюдать. Вы не могли сидеть в меню и видеть, что происходит. И когда кто-то делал что-то недопустимое в матче, после его окончания всё исчезало. Оставались воспоминания двух человек, и ничего больше.
В версии 3.20.0 исправлены обе части проблемы. Теперь вы можете смотреть любой матч, где бы он ни проходил, в прямом эфире , на новой вкладке «Матчи» в EF Controller . И каждый Battle Royale матч теперь записывается , поэтому, когда поступает жалоба, команда модераторов может вернуться и точно посмотреть, что произошло.
Вот карта:
- Часть 1 – Матчи и просмотр. Все матчи в прямом эфире — в одном клике.
- Часть 2 – Повтор матча. Каждый Battle Royale матч, в записи.
- Часть 3 — Исправления. Экран загрузки, который никак не хотел закрываться, и очки опыта для игроков, которые выходят из игры раньше времени.
- Часть 4 — Для сотрудников. Обратный отсчет, который вы можете реально переместить.
Часть 1 из 4: Матчи и наблюдение за игрой
Откройте EF Controller . Там появится новая вкладка под названием «Совпадения» , и она доступна всем.
Здесь отображается список всех текущих матчей. Вверху вы выбираете регион: Северная Америка, Европа или Бразилия . Ниже вы выбираете режим: Соло, Дуо, Отряд, Dominion , Командный смертельный бой, Командное столкновение или Каждый сам за себя. Классические матчи отображаются под своим режимом с небольшой меткой «Классический» рядом с ними.
В каждом матче отображается две вещи: сколько времени он длится и сколько игроков осталось . В режимах Solo, Duo и Squad это то же число, которое отображается на HUD внутри матча, включая ботов. В командных режимах это количество участников матча. Список обновляется каждые несколько секунд, и таймер продолжает отсчитывать время, так что вы можете сидеть и наблюдать, как количество игроков в лобби сокращается с 40 до 3.
А рядом с каждым матчем есть кнопка: «Наблюдать».
Нажмите кнопку, и вы в игре. Вам не нужно стоять в очереди. Вам не нужно ждать окончания матча. Вам не нужно находиться рядом с ним. Вы загружаетесь в матч как зритель и наблюдаете за ним через встроенный режим просмотра игры , тот же самый, что и после удаления: имя игрока, его здоровье, его экипировка, его камера. Переключаться между игроками можно так же, как и после того, как вы выбываете из игры. Это работает во всех режимах из списка, включая командные.
Зритель — это не игрок.
Хочу внести ясность, потому что, как только я включил его, первым делом проверил, влияет ли просмотр матча на это. Нет, не влияет.
- Вы не занимаете место. Заполненное лобби остается заполненным. Наблюдение никогда не вытесняет игрока.
- Вы не отображаетесь в статистике игроков. Ни в списке матчей, ни в списке серверов, нигде, где отображается количество игроков.
- Вас нет в таблице результатов , и вы ничего не получаете за матч: ни результатов, ни опыта, ни места.
- Вы не можете общаться с игроками, за которыми наблюдаете. Зрители не могут участвовать в игровом чате матча, поэтому никто не будет оскорбляться с трибун.
Когда закончите, выйдите, и вы вернетесь в главное меню.
Как мы это сделали: три запертые двери
Я искренне думал, что это будет выходной. Но это оказался не выходной.
Движок Spellbreak фактически поддерживает зрителей «из коробки». Вы добавляете ?SpectatorOnly=1 к адресу, к которому подключаетесь, движок помечает вас как «только для наблюдения» и предоставляет вам камеру вместо персонажа. Так что теоретически все, что мне нужно было сделать, это добавить это к соединению и позволить вам пройти.
На практике Spellbreak между вами и уже начавшимся матчем было три отдельные двери , и каждая из них была заперта.
Первая проверка — это проверка авторизации. В момент начала матча сервер переключает тумблер, который гласит: «Никто больше не может подключиться», и каждое последующее новое соединение отклоняется с сообщением «В данный момент никто не может присоединиться». Хорошо. Я научил сервер, что соединение, запрашивающее просмотр и имеющее действительный логин, проходит эту проверку. Но его всё равно отклоняют. Оказывается, перед первой проверкой есть вторая, стандартная, которая гласит: «Матч начался!» и захлопывает дверь ещё до того, как будет проведена первая проверка. Так что с этим произошло то же самое.
Вторая дверь была хитрее. Я проходил авторизацию, загружалась карта, я видел остров примерно треть секунды, а затем меня выкидывало с сообщением «Матч уже начался». Обычный процесс авторизации движка считывает это ?SpectatorOnly=1 и помечает вас как наблюдателя. Spellbreak заменяет эту часть авторизации своим собственным кодом , и его собственный код никогда её не считывает. Таким образом, сервер не знал, что я наблюдатель, и его проверка позднего подключения делала именно то, для чего была создана. Решение заключалось в завершении шага наблюдателя движка вручную, сразу после запуска версии Spellbreak .
Третья дверь — вот где я потерял больше всего времени. Даже будучи отмеченным как наблюдатель, я всё равно получал тот же самый фейковый сигнал. Я исправил функцию, которая, как я думал, выкидывала опоздавших игроков, но она даже не запустилась. Spellbreak собственный шаг после входа в систему проверяет «начался ли матч?» и выкидывает вас прямо там, прежде чем дойдёт до части, которую я исправил. Таким образом, наблюдатель теперь проходит стандартный шаг после входа в систему движка, а не шаг Spellbreak , который выполняет всю обычную настройку вашего соединения, пропускает фейковый сигнал и пропускает попытку создать персонажа для того, у кого его нет.
Затем появилась камера. Battle Royale позволяет наблюдать за игрой только в том случае, если вы вошли в матч и погибли, чего никогда не случалось со зрителем, поэтому это правило получило еще одно исключение. И как только вы вошли, сервер переводит вас в собственный режим наблюдения за игрой точно так же, как и после вашего изгнания. Он выбирает ближайшего живого игрока, показывает вам HUD для наблюдения, а кнопка «следующий игрок» в самой игре делает все остальное. Вот почему это выглядит точно так же, как наблюдение за игрой после смерти. Это и есть наблюдение за игрой после смерти, за исключением самой смерти.
Часть 2 из 4: Повтор матча
Просмотр прямой трансляции — это половина дела. Другая половина — это возможность оглянуться назад.
Каждый Battle Royale матч теперь записывается. Каждый матч в одиночном, парном и командном режимах ведет полную запись того, как он проходил: куда перемещался каждый игрок и каждый бот примерно десять раз в секунду, каждое попадание, каждое падение, каждое изгнание, кто в какой команде, и что все носили и несли. Класс, таланты, перчатки, снаряжение, заклинания — все.
Сотрудники могут воспроизвести любой фрагмент. Это называется Spellbreak Replayer . Он отображает весь матч на карте посекундно. Модератор может просмотреть его, проследить за одним игроком, посмотреть на пути двух игроков рядом и увидеть, что именно произошло, вместо того, чтобы пытаться собрать воедино информацию из двух версий одного и того же боя.
Почему это существует
Совместные атаки в одиночных играх. Это одна из самых часто сообщаемых проблем, и до сих пор у нас не было способа доказать это ни в ту, ни в другую сторону. Два игрока, которые «случайно» никогда не сражаются, бродят по карте вместе и одновременно нападают на третьего игрока. Без записей каждое из этих сообщений было лишь словом одного человека против слова другого. Теперь мы можем это увидеть. Или, что не менее важно, мы можем увидеть, что этого не было, и оправдать того, на кого пожаловались за то, что он оказался не в том месте и не в то время.
Что происходит с записями?
- Записи хранятся в течение 14 дней , после чего удаляются.
- Когда вы сообщаете о нарушении со стороны игрока, информация о матче сохраняется в течение 180 дней , поэтому она всё ещё будет доступна модератору, когда он рассмотрит вашу жалобу.
- Их могут открывать только сотрудники. Они не являются общедоступными и не привязаны к вашему профилю.
Как мы это сделали: черный ящик для острова.
Регистратор находится внутри игрового сервера. Каждые десятые доли секунды он считывает местоположение, здоровье и состояние каждого игрока и записывает крошечную запись — пару десятков байт на игрока за такт. Весь матч помещается в пару мегабайт. Каждое попадание, падение и изгнание записываются в отдельный лог в момент их совершения, и каждое получение новой перчатки или смена таланта также заносятся в лог.
Самое важное — это когда программа всё это считывает. Игровой сервер занят проведением матча, и любое замедление его работы ощущается как эффект «резиновой ленты». Поэтому программа записи никогда не останавливает игру для чтения. Она читает в своём собственном потоке, в стороне, и проверяет всё, что считывает, прежде чем к этому прикоснуться. В первой версии она недостаточно тщательно проверяла одну вещь — поиск имени, и это привело к сбоям в работе нескольких серверов примерно на двадцать минут, прежде чем я это обнаружил. Теперь это исправлено, и эта проверка является самой строгой во всей программе записи.
Когда матч заканчивается, сервер объединяет запись в один пакет, считывает её отпечаток и загружает его перед тем, как будет объявлен результат матча. Сам результат содержит этот отпечаток. Поэтому, если кто-то отредактирует запись после матча, она больше не будет соответствовать отпечатку в результате, и мы это узнаем.
Часть 3 из 4: Исправления
Больше никаких бесконечных экранов загрузки!
Этот паразит уже давно кусает людей, и я наконец-то застал его на месте преступления.
Если ваше соединение с нашими серверами прервалось во время матча, например, из-за сбоя в сети или перезагрузки одного из наших серверов, игра не сообщит вам об этом сразу. Она не может показать ошибку посреди боя, поэтому сохраняет сообщение об ошибке на потом . Затем вы заканчиваете матч и возвращаетесь в главное меню, и главное меню ждет завершения работы наших серверов, прежде чем отобразить экран загрузки. Но ваше соединение уже прервано, и ничего не пытается восстановиться. Поэтому оно ждет. Вечно. Вы будете сидеть на «Загрузка…», пока не закроете игру.
Теперь, если вы вернетесь в главное меню, и соединение прервется, игра автоматически переподключится через несколько секунд, используя тот же самый способ переподключения, что и кнопка «Повторить» при ошибке соединения. Она будет продолжать попытки, пока не установит соединение, после чего меню загрузится, как ни в чем не бывало.
Изгнаны и собираетесь уйти? Ваши очки опыта останутся с вами.
Если вас изгоняют из матча Battle Royale и вы выходите, ваш опыт и мастерство класса раньше учитывались только после завершения всего матча. Это было нормально, если до конца матча оставалась минута. Раздражало, если оставалось пятнадцать, потому что вы возвращались в меню, смотрели на свой старый ранг и гадали, куда делся ваш прогресс.
Теперь отсчет начинается с момента вашего выхода. Вы вышли, вернулись в меню, и ваш ранг уже обновлен.
Правило не изменилось: уход, пока ты ещё жив, ничего не даёт. Если ты закончил, значит, закончил. Если ты бросаешь борьбу, в которой всё ещё участвуешь, это всё равно считается уходом.
Часть 4 из 4: Для персонала
Обратный отсчет, который можно перемещать. В меню персонала, в разделе «Настройки матча», появился новый элемент управления «Обратный отсчет» . Перетащите его на нужное количество секунд до начала матча или нажмите кнопки 10, 30, 60 или 120 секунд , и отсчет вступит в силу в момент отпускания кнопки. Он работает как в запущенном, так и в остановленном режиме, что значительно упрощает настройку тестового матча или события по сравнению с принципом «остановить обратный отсчет, подождать, запустить снова, надеяться».
Классические серверы теперь имеют названия. Раньше в списке серверов все классические серверы отображались как «Не назначены». Теперь они отображаются по своему назначению: Solo (Classic), Squads (Classic) и так далее.
Начиная
Уже играете? Перезапустите лаунчер, и он загрузит мод 3.20.0 . Откройте EF Controller , перейдите в «Матчи» и выберите бой для просмотра.
Новичок? Скачайте лаунчер с elefrac.com , создайте учетную запись, войдите в систему и нажмите «Играть». Или сначала попробуйте режим наблюдателя и посмотрите, что вас ждет.
Увидимся на арене! ⚡