Техническое задание: Рефакторинг и отладка игрового скрипта для умного освещения
Имеется готовый, но нестабильно работающий скрипт, который связывает умные лампы Yeelight с событиями в компьютерной игре Counter-Strike 2 (CS2). Задача - провести полный рефакторинг кода, устранить ошибки и обеспечить его бесперебойную, точную работу.
Цель проекта
Создать надежный, оптимизированный скрипт, который в реальном времени отслеживает игровые события (например, получение урона, смерть, победу раунда) и мгновенно изменяет цвет или режим работы подключенных ламп Yeelight, создавая иммерсивную игровую атмосферу.
Ключевые требования
- Проанализировать существующий код, выявить причины нестабильной работы («кривой» работы).
- Полностью переписать скрипт, применяя лучшие практики программирования: четкую структуру, обработку исключений, логирование.
- Обеспечить минимальную задержку между игровым событием и реакцией лампы.
- Реализовать стабильное подключение и управление лампами Yeelight через локальную сеть (LAN).
- Настроить обработку основных игровых событий CS2 с возможностью легкого расширения списка событий в будущем.
- Добиться «работы как часы» - отсутствия самопроизвольных отключений, зависаний и ложных срабатываний.
- Предоставить чистый, документированный код и краткую инструкцию по запуску.
Технические детали
- Целевая платформа: Умные лампы Yeelight с поддержкой управления по локальной сети.
- Источник событий: Игра Counter-Strike 2 (CS2). Необходимо определить надежный метод получения данных из игры (например, анализ лог-файлов, использование игрового состояния).
- Язык программирования: Ожидается, что текущий скрипт написан на Python (требуется уточнение у заказчика), но исполнитель должен предложить оптимальное решение для стабильности и производительности.
Результат работы
- Исходный код полностью переработанного, отлаженного и стабильного скрипта.
- Код должен быть читаемым, модульным и с комментариями.
- Скрипт работает без ручного вмешательства на протяжении длительных игровых сессий.
- Реакция ламп на события происходит мгновенно и соответствует заданным условиям.