Minecraft: программирование в игре
Курс Minecraft Education для детей в Днепре от My Computer Academy. Ученики 9–14 лет, которые любят Minecraft, изучают Python через любимую игру. Библиотека mcpi: автоматизация строительства, структуры кодом, алгоритмы. Собственный мод в финале курса. Путь от игрока до разработчика. Малая группа до 5 учеников, 24 занятия за 3 месяца. Онлайн и офлайн в Днепре. Первый урок бесплатно.
- Тема 1: Настройка среды разработки — Minecraft Education/Bedrock Edition, Code Builder, VS Code, интеграция с GitHub, библиотеки и расширения.
- Тема 2: Основы Python — Переменные, типы данных, условия, циклы, функции, модули, обработка ошибок, списки и словари.
- Тема 3: Основы JavaScript — Переменные, типы данных, функции, массивы и объекты, асинхронность (Promises, async/await), модули, ООП.
- Тема 4: Работа с Minecraft API — Управление объектами в мире, события и обработчики, создание структур через API, генерация случайных миров.
- Тема 5: Процедурная генерация структур — Алгоритмы случайной генерации, лабиринты и фракталы, симметричные объекты, биомы, оптимизация.
- Тема 6: Кастомные команды — Разработка новых команд, параметры и их обработка, автоматизация действий игрока, оптимизация для мультиплеера.
- Тема 7: Моды на JavaScript — Новые предметы и блоки, поведение мобов, анимации, интеграция с игровым интерфейсом, публикация модов.
- Тема 8: Работа с событиями — Обработка игровых событий (разрушение/создание блоков), кастомные события, триггеры, таймеры, уникальные сценарии.
- Тема 9: Интеграция с внешними API — REST API, визуализация данных в Minecraft, JSON, взаимодействие в реальном времени, внешние сервисы.
- Тема 10: Пользовательский интерфейс — Статистика и данные игрока, интерфейс для инвентаря и заданий, интерактивные панели, динамическое взаимодействие.
- Тема 11: Алгоритмы и структуры данных — Поиск пути (A*, Dijkstra), графы, сортировка, хеш-таблицы, очереди и стеки.
- Тема 12: Проекты на Python — Автоматизация агента, система управления ресурсами, генерация мини-игр, сохранение данных.
- Тема 13: Сетевые взаимодействия — WebSocket для игр, передача данных в реальном времени, многопользовательские проекты, оптимизация сети.
- Тема 14: Моделирование процессов — Природные явления, биомы и экосистемы, рост деревьев и растений, симуляция поведения мобов.
- Тема 15: Интерактивное обучение — Обучающие сценарии, подсказки и туториалы, интерактивные задания, системы адаптивного обучения.
- Тема 16: Оптимизация кода — Снижение времени выполнения, асинхронность, улучшение алгоритмов, тестирование производительности, устранение узких мест.
- Тема 17: Базы данных (SQLite) — SQLite для Minecraft, хранение данных об игроках и ресурсах, Python для работы с БД, автоматизация анализа.
- Тема 18: Создание мини-игр — Проектирование механик, правила игры, динамические сценарии, оптимизация для мультиплеера, визуальные эффекты.
- Тема 19: Интеграция AI — ИИ для мобов, адаптивное поведение, машинное обучение на Python, боты для заданий, обучающие системы.
- Тема 20: Работа с графикой — Шейдеры, кастомные текстуры, оптимизация графики, визуальные эффекты, Blender для текстурирования.
- Тема 21: Интерактивные сценарии — Диалоговые системы, квесты и задания, взаимодействие между игроками, Python для управления сценарием.
- Тема 22: Работа со звуком — Генерация звуковых эффектов кодом, кастомные аудиофайлы, звуковые сигналы для событий, автоматизация звука.
- Тема 23: Тестирование и отладка — Методы отладки, логи, автоматическое тестирование, мониторинг производительности, оптимизация после тестов.
- Тема 24: Анимация — Движение объектов, анимации мобов, кастомные анимационные эффекты, интеграция в сценарии, оптимизация.
- Тема 25: Сохранение данных — Автосохранение, файлы JSON и CSV, данные пользователя, восстановление прогресса, резервное копирование.
- Тема 26: Структура проектов — Организация файлов, шаблоны, системы контроля версий, стандарты написания кода, документация.
- Тема 27: Редстоун-логика через код — Симуляция логических схем, автоматические механизмы, взаимодействие с редстоун-блоками, тестирование.
- Тема 28: Плагины для серверов — Серверное программирование, плагины для Minecraft, взаимодействие с API сервера, мультиплеерные функции.
- Тема 29: Многопользовательские проекты — Сетевая инфраструктура, кооперативные механики, оптимизация сервера, совместные игровые сценарии.
- Тема 30: Публикация и поддержка — Публикация модов и плагинов, страницы для загрузки, взаимодействие с сообществом, обновления, монетизация.