Friday at 10:05 AM4 days Author Developer 17 минут назад, NooBAsTiK сказал:Ошибки в точках, взлет позже по времени и уже с высотойНет тут ошибок. Я не виноват, что событие взлета сервер так пишет в лог, с высотой.
Friday at 10:08 AM4 days 2 минуты назад, Zlodey сказал:Нет тут ошибок. Я не виноват, что событие взлета сервер так пишет в лог, с высотой.Нет так нет
Friday at 12:43 PM4 days 6 часов назад, KPblM сказал:https://il2-fl.ru/ru/stats/profile/17/1?gamerId=561&tab=statisticsкосяк в статеимеется в виду что не отображается звание.
Saturday at 06:49 PM3 days За смертные вылеты не списывает очки и деньги, свежие примерыhttps://il2-fl.ru/ru/stats/sortie/130125/0?gamerId=817&tab=flight-loghttps://il2-fl.ru/ru/stats/sortie/130493/0?gamerId=1327&tab=flight-log
Saturday at 07:13 PM3 days Author Developer 21 минуту назад, Hanko сказал:За смертные вылеты не списывает очки и деньги, свежие примерыhttps://il2-fl.ru/ru/stats/sortie/130493/0?gamerId=1327&tab=flight-logВо втором все спиано.
Yesterday at 06:59 AM1 day Если поставить галочку показывать только доступную технику, то вся недоступная техника рисуется с погоном рядового (Gefreiter)
14 hours ago14 hr Заметил, что иногда как в примере за вылет защитывает как 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 14 hours ago14 hr by Matpocob
14 hours ago14 hr + если рассматривать тот факт, что каждое срабатывание ent.IsDead приводит еще и к profile.AirStreak = 0; profile.GroundStreak = 0; то в предверье обновления с наградами, не такая уж это возможно и мелочь...
7 hours ago7 hr 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; }Для тех, кто не понял - исправлено.
7 hours ago7 hr Author Developer 11 минут назад, Zlodey сказал:Для тех, кто не понял - исправлено.Но, работать исправление начнет немного позже.
7 hours ago7 hr Author Developer 9 минут назад, Zlodey сказал:Но, работать исправление начнет немного позже.Хотя, нет, вру. Все уже работает))
6 hours ago6 hr 51 минуту назад, Zlodey сказал:Не пытайся гадать не понимая как "оно" работает и не видя исходников. Твое дело просто сообщить об ошибке.Хочешь "работать" над проектом, велкам на собес.Для тех, кто не понял - исправлено.Да ладно, что ты меня в краску вгоняешь... Простого одобрительного кивка было бы вполне достаточно ;)Рад, что фикс уже в работе! За оперативный фикс - спасибо, теперь за стрики спокойнее.
2 hours ago2 hr 4 часа назад, Zlodey сказал:Все уже работает))Обрати внимание в журнале пошла мешанина по хронологии событий. Объединяются явно по временной метке в группу и перемешиваются с другими группами нарушая последовательность произвольно.сортирует странно, причем не зависит от выбора стрелок (сначала ранние, сначала поздние) все перемешивает по своему Edited 2 hours ago2 hr by Matpocob
1 hour ago1 hr P.S.> Раз уж заговорили о журнале вылета, разрешите добавить свой манюсенький "фичур рюквэйст", пока мысль не выветрилась. Сейчас в лог сыпется очень много событий, особенно "Урон". Раз механизм наполнения явно умеет объединять их по таймингу, быть может, стоит его чуть "причесать", чтобы он одновременные события по одному и тому же объекту суммировал и объединял в одну запись до вывода в журнал? Ну и таже "петрушка" с событием "Урон от Окружения" ... там вообще бывает лента, если самолет в воздухе горит (эти вообще можно было бы склеивать в одну запись с указанием промежутка, аля "16:30:38 - 16:35:12 20,3% Урон Окружение"). У меня аж скрол греется, пока я доберусь до своей посадки, чесслово... Например, если вместо 10 строк "Урон по грузовику 0,1%" мы станем получать одну строку "Урон по грузовику 1%", это на порядок повысит информативность, удобство, да и в целом UX. Журнал станет чище, а наглядность только выиграет. У-уочень просим-с.Естественно, это "на завтра/послезавтра на после обеда в пятницу", сначала важнее поднять "хронологию".Отдельно напоминаю, что я размещаю свои сообщения исключительно как пожелания, делюсь своим навязчивым субъективным мнением исходя из личного опыта и не на чем не настаиваю, ничего не требую, никого ничему бесплатно не обучаю и за свои подколы оплату не прошу, заискиваю только в коварных и корысных целях! Не открывать, к лицу не подносить, не вдыхать, держать подальше от женщин в неэрогированном состоянии, пломбы не снимать, пробу негде ставить.
Create an account or sign in to comment