Jump to content
View in the app

A better way to browse. Learn more.

FRONT LINE

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Ошибки в точках, взлет позже по времени и уже с высотой
image.png

  • Replies 240
  • Views 10.9k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Известная всем - зачастую при смене звания, оно не обновляется на сайте, а лишь в полоске прогресса в плейнсете. Фиксится появлением и исчезновением на филде, но это такое.

  • 3 минуты минимум надо откатать, чтобы не было "пропал без вести". Для танков так. То, что в стате написано 3 минуты, там округляется. Могло не хватить секунды и все. В общем. Надо дольше катать.

  • Результативный вылет (2 сбитых), ранение, успешная посадка на филд. В итоге 0 очков и минус 2k денег. Нахожусь в группе из 1 чел, в журнале вылетов значка группы нет, то есть дохода не было, все в ми

Posted Images

  • Author
  • Developer
17 минут назад, NooBAsTiK сказал:

Ошибки в точках, взлет позже по времени и уже с высотой
image.png

Нет тут ошибок. Я не виноват, что событие взлета сервер так пишет в лог, с высотой.

2 минуты назад, Zlodey сказал:

Нет тут ошибок. Я не виноват, что событие взлета сервер так пишет в лог, с высотой.

Нет так нет

  • Author
  • Developer
21 минуту назад, Hanko сказал:

За смертные вылеты не списывает очки и деньги, свежие примеры

https://il2-fl.ru/ru/stats/sortie/130493/0?gamerId=1327&tab=flight-log

Во втором все спиано.

Если поставить галочку показывать только доступную технику, то вся недоступная техника рисуется с погоном рядового (Gefreiter)

image.png

Заметил, что иногда как в примере за вылет защитывает как 0 по времени, не смотря на то, что в журнале события взлёта, прыжка с парашютом, крушения и конца задания, получены.

Начало 23.02.2026, 22:12:35
Окончание 23.02.2026, 23:24:32
Длительность 00:00

из журнала полёта:
23.02.2026 23:16:37 Урон 0,29% Окружение
23.02.2026 23:16:37 Урон 0,03% Окружение
23.02.2026 23:21:38 Урон 0,22% Окружение
23.02.2026 23:21:38 Урон 0,02% Окружение
23.02.2026 23:21:42 Прыгнул с парашютом пилот
23.02.2026 23:21:42 Урон 36,08% Окружение
23.02.2026 23:21:42 Крушение 100,00%
23.02.2026 23:24:32 Конец

Подозреваю, что случилось это из-за того, что журнал вылета оба события "Прыгнул с парашютом" и "Крушение" получил буквально одновременно. Хотя на самом деле, я выпрыгнул раньше минимум за 2-2,5 минуты до того, как мой самолет с оборванными флаттером рулями по спирали совершил еще минимум 2-3 размашистых круга почета и довольно жестко, но по касательной ухнулся на поле под ногами, даже без взрыва топлива (самолет защитало как полностью разрушен на 100%, пилот и экипаж соответственно 0% жив-здоров (прыгал с 1000 не меньше)).

Мне кажется, что технически происходит (рейс кондишн) - по какой-то причине неверно (читай не вовремя) получаем время прыжка из самолета или в целом не получаем такое состояние как "прыгнул с парашютом" (как отдельное условие для проверки состояния игрока между событиями "взлёт" и "крушение"). Когда дело доходит до учета прыжка _rootEntity игрока не переключается в промежуточное состояние "жив в парашюте", а просто наследует смерть от крушения самолета, принудительно выставляется IsDead = true для связанного PID игнорируя тот факт, что пилот уже является отдельной сущностью (парашютистом). В общем Sortie получил profile.DurationGame = 0; несмотря на то, что пилот был жив до самой земли, жестко отработало условие (ent.IsDead).

Если есть техническая возможность, добавить базовую проверку совершал ли пилот прыжок до крушения самолета и контрольную жив ли пилот после момента крушения. Мелочь, но работает не так как диктует логика. Если пилот остался жив (да еще и прыгнул над своей территорией) налет часов хотелось бы сохранить не как 0.

Edited by Matpocob

+ если рассматривать тот факт, что каждое срабатывание ent.IsDead приводит еще и к profile.AirStreak = 0; profile.GroundStreak = 0; то в предверье обновления с наградами, не такая уж это возможно и мелочь...

weeeps.png

  • Author
  • Developer
7 часов назад, Matpocob сказал:

рейс кондишн

Не пытайся гадать не понимая как "оно" работает и не видя исходников. Твое дело просто сообщить об ошибке.

Хочешь "работать" над проектом, велкам на собес.

До:

 var list = Sortie.Events
                .Where(x => x.EventType is TypeEventSortie.TakeOff or TypeEventSortie.Landing
                    or TypeEventSortie.IncomingKill)
                .OrderBy(x => x.EventDate)
                .ToList();

После:

 	/// <summary>
    /// Рассчитывает общую продолжительность полета (в секундах) на основе событий взлета и посадки в вылете.
    /// </summary>
    /// <returns>Продолжительность полета в секундах. Возвращает 0, если вылет или его события отсутствуют.</returns>
    private long GetDurationFlight()
    {
        if (Sortie?.Events == null)
            return 0;

        if (TypeVehicle == TypeVehicle.AirCraft)
        {
            var list = Sortie.Events
                .Where(x => x.EventType is TypeEventSortie.TakeOff or TypeEventSortie.Landing
                    or TypeEventSortie.IncomingKill or TypeEventSortie.BotEjectLeave)
                .OrderBy(x => x.EventDate)
                .ToList();

            long totalDuration = 0;
            DateTime? takeOffTime = null;

            foreach (var flightEvent in list)
            {
                if (flightEvent.EventType == TypeEventSortie.TakeOff)
                {
                    // Если мы встречаем взлет, просто запоминаем его время.
                    // Если предыдущий взлет был без посадки, он перезапишется.
                    takeOffTime = flightEvent.EventDate;
                }
                // 2. Вычисляем продолжительность, только если был зафиксирован взлет (takeOffTime != null)
                else if ((flightEvent.EventType == TypeEventSortie.Landing ||
                          flightEvent.EventType == TypeEventSortie.IncomingKill ||
                          flightEvent.EventType == TypeEventSortie.Crash ||
                          flightEvent.EventType == TypeEventSortie.BotEjectLeave) && takeOffTime.HasValue)
                {
                    // Убедимся, что посадка произошла после взлета
                    if (flightEvent.EventDate > takeOffTime.Value)
                    {
                        totalDuration += (long)(flightEvent.EventDate - takeOffTime.Value).TotalSeconds;
                    }

                    // 4. Сбрасываем время взлета, чтобы ожидать следующую пару "взлет-посадка"
                    takeOffTime = null;
                }
            }

            return totalDuration;
        }

        if (TypeVehicle == TypeVehicle.Vehicle)
        {
            return (long)(Sortie.EndDate - Sortie.StartDate).TotalSeconds;
        }

        return 0;
    }

Для тех, кто не понял - исправлено.

  • Author
  • Developer
11 минут назад, Zlodey сказал:

Для тех, кто не понял - исправлено.

Но, работать исправление начнет немного позже.

  • Author
  • Developer
9 минут назад, Zlodey сказал:

Но, работать исправление начнет немного позже.

Хотя, нет, вру. Все уже работает))

51 минуту назад, Zlodey сказал:

Не пытайся гадать не понимая как "оно" работает и не видя исходников. Твое дело просто сообщить об ошибке.Хочешь "работать" над проектом, велкам на собес.

Для тех, кто не понял - исправлено.

Да ладно, что ты меня в краску вгоняешь... Простого одобрительного кивка было бы вполне достаточно ;)
Рад, что фикс уже в работе! За оперативный фикс - спасибо, теперь за стрики спокойнее.

4 часа назад, Zlodey сказал:

Все уже работает))

Обрати внимание в журнале пошла мешанина по хронологии событий. Объединяются явно по временной метке в группу и перемешиваются с другими группами нарушая последовательность произвольно.
image.png

сортирует странно, причем не зависит от выбора стрелок (сначала ранние, сначала поздние) все перемешивает по своему
image.png

Edited by Matpocob

P.S.> Раз уж заговорили о журнале вылета, разрешите добавить свой манюсенький "фичур рюквэйст", пока мысль не выветрилась. Сейчас в лог сыпется очень много событий, особенно "Урон". Раз механизм наполнения явно умеет объединять их по таймингу, быть может, стоит его чуть "причесать", чтобы он одновременные события по одному и тому же объекту суммировал и объединял в одну запись до вывода в журнал? Ну и таже "петрушка" с событием "Урон от Окружения" ... там вообще бывает лента, если самолет в воздухе горит (эти вообще можно было бы склеивать в одну запись с указанием промежутка, аля "16:30:38 - 16:35:12 20,3% Урон Окружение"). У меня аж скрол греется, пока я доберусь до своей посадки, чесслово...

Например, если вместо 10 строк "Урон по грузовику 0,1%" мы станем получать одну строку "Урон по грузовику 1%", это на порядок повысит информативность, удобство, да и в целом UX. Журнал станет чище, а наглядность только выиграет. У-уочень просим-с.

Естественно, это "на завтра/послезавтра на после обеда в пятницу", сначала важнее поднять "хронологию".

Отдельно напоминаю, что я размещаю свои сообщения исключительно как пожелания, делюсь своим навязчивым субъективным мнением исходя из личного опыта и не на чем не настаиваю, ничего не требую, никого ничему бесплатно не обучаю и за свои подколы оплату не прошу, заискиваю только в коварных и корысных целях! Не открывать, к лицу не подносить, не вдыхать, держать подальше от женщин в неэрогированном состоянии, пломбы не снимать, пробу негде ставить.

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

https://il2-fl.ru/ru/stats/sortie/132987/1?gamerId=717&tab=flight-log

Screenshot_2026-02-25-15-12-28-115_org.telegram.messenger.jpg

Screenshot_2026-02-25-15-12-39-693_org.telegram.messenger.jpg

  • Author
  • Developer
2 минуты назад, Hariton сказал:

Выходил на своей территории.

3 минуты минимум надо откатать, чтобы не было "пропал без вести". Для танков так.

То, что в стате написано 3 минуты, там округляется. Могло не хватить секунды и все. В общем. Надо дольше катать.

2 часа назад, Zlodey сказал:

3 минуты минимум надо откатать, чтобы не было "пропал без вести". Для танков так.

То, что в стате написано 3 минуты, там округляется. Могло не хватить секунды и все. В общем. Надо дольше катать.

Это опять произошло! В этот раз я ездил 16 минут! https://il2-fl.ru/ru/stats/sortie/133040/1?gamerId=717&tab=flight-log

  • Author
  • Developer
9 минут назад, Hariton сказал:

Это опять произошло!

Проверю.

Что подразумевается под "Лучшие ударные за 24 часа" "Лучшие истребители за 24 часа" "Лучшие пилоты за 24 часа"? Сейчас как я понимаю это по сути у кого лучший действующих стрик по самолётам по целям и по очкам.

3 часа назад, NooBAsTiK сказал:

Что подразумевается под "Лучшие ударные за 24 часа" "Лучшие истребители за 24 часа" "Лучшие пилоты за 24 часа"? Сейчас как я понимаю это по сути у кого лучший действующих стрик по самолётам по целям и по очкам.

Это лучшие "живые" (по текущему стрику) пилоты, которые заходили на сервер в крайние сутки.

  • Author
  • Developer
Только что, NooBAsTiK сказал:

лучший действующих стрик по самолётам

Именно так и есть. Но еще условие крайний вылет должен быть не ранее чем сутки назад.

Или не позднее)) Уже сам запутался.

  • Author
  • Developer
17 минут назад, NooBAsTiK сказал:

Забрали звание и очки

Если у кого-то еще такое случалось и случится пишите сюда с сылкой на сессии. Прям удивительно.

Create an account or sign in to comment

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.