Модуль:StatEngine/doc
Это страница документации Модуль:StatEngine.
Модуль является основным вычислительным блоком, отвечающим за обработку и анализ игровой статистики. Модуль использует данные о матчах и правила из Config для расчёта всех показателей игроков и команд, а также для определения победителей в различных номинациях.
Структура модуля
- Секция «Комбайн» (Harvester)
Ядро модуля, предназначенное для массовой обработки данных. За один проход анализирует всю базу данных по матчам за год и извлекает из неё всю необходимую информацию: голы, передачи, сыгранные матчи, карточки и т.д. Такой подход обеспечивает высокую скорость обработки.
- Блок обратной совместимости
Набор функций, которые имитируют работу старой версии модуля. Позволяет страницам и шаблонам, которые использовали старые методы вызова, продолжать работать без изменений, но при этом использовать новый, более быстрый механизм расчётов. Перенесены на подстраницу StatEngine/Legacy.
- Блок агрегации игрового дня
Инструмент для расчёта итоговой статистики игроков за один конкретный игровой день. Собирает все действия игроков в рамках одного игрового дня (очки, голы, MVP) и подготавливает данные для определения лучших игроков.
- Блок «машины дуэлей»
Функция для прямого сравнения двух игроков друг против друга. Анализирует только те матчи, в которых оба игрока играли друг против друга, и рассчитывает их личную статистику встреч. Используется как один из критериев при разрешении ничьих.
Блок судейства и призов Набор функций для определения победителей в различных номинациях. Применяет сложные, многоуровневые правила и критерии для ранжирования игроков и присвоения призовых мест (например, «Лучший бомбардир», «Самый полезный игрок», «Лучший вратарь»).
- Блок определения наград турнира
Специализированные функции для присуждения итоговых наград всего турнира, таких как «Золотой Башмак». Использует официальную систему правил для разрешения ничьих, учитывая не только общее количество голов, но и их важность (в плей-офф, без учёта пенальти) и хронологию.
- Блок тестов
Служебные функции для проверки корректности работы модуля. Позволяют разработчикам быстро выводить на тестовую страницу сводные таблицы со всеми рассчитанными показателями для проверки правильности вычислений.