Это страница документации Модуль:StatEngine.

Документация Документация

Модуль является основным вычислительным блоком, отвечающим за обработку и анализ игровой статистики. Модуль использует данные о матчах и правила из Config для расчёта всех показателей игроков и команд, а также для определения победителей в различных номинациях.

Структура модуля

Секция «Комбайн» (Harvester)

Ядро модуля, предназначенное для массовой обработки данных. За один проход анализирует всю базу данных по матчам за год и извлекает из неё всю необходимую информацию: голы, передачи, сыгранные матчи, карточки и т.д. Такой подход обеспечивает высокую скорость обработки.

Блок обратной совместимости

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

Блок агрегации игрового дня

Инструмент для расчёта итоговой статистики игроков за один конкретный игровой день. Собирает все действия игроков в рамках одного игрового дня (очки, голы, MVP) и подготавливает данные для определения лучших игроков.

Блок «машины дуэлей»

Функция для прямого сравнения двух игроков друг против друга. Анализирует только те матчи, в которых оба игрока играли друг против друга, и рассчитывает их личную статистику встреч. Используется как один из критериев при разрешении ничьих.

Блок судейства и призов Набор функций для определения победителей в различных номинациях. Применяет сложные, многоуровневые правила и критерии для ранжирования игроков и присвоения призовых мест (например, «Лучший бомбардир», «Самый полезный игрок», «Лучший вратарь»).

Блок определения наград турнира

Специализированные функции для присуждения итоговых наград всего турнира, таких как «Золотой Башмак». Использует официальную систему правил для разрешения ничьих, учитывая не только общее количество голов, но и их важность (в плей-офф, без учёта пенальти) и хронологию.

Блок тестов

Служебные функции для проверки корректности работы модуля. Позволяют разработчикам быстро выводить на тестовую страницу сводные таблицы со всеми рассчитанными показателями для проверки правильности вычислений.