MinecraftBot
Bot framework 1.20.1
Фреймворк ботов для Minecraft Java 1.20.1 в трёх вариантах: Python, нативный Rust и PyO3-обёртка.A bot framework for Minecraft Java 1.20.1 in three artefacts: Python, native Rust and a PyO3 facade.Фреймворк ботів для Minecraft Java 1.20.1 у трьох варіантах: Python, нативний Rust і PyO3-обгортка.
О проектеOverviewПро проєкт
Полноценный фреймворк для ботов под Minecraft Java 1.20.1 (протокол 763). Реализованы все 176 пакетов версии, кодек, фреймер и жизненный цикл соединения. Поверх протокола — высокоуровневый Bot API: ходьба с A*-поиском пути, физика на 20 Гц, кэш мира, трекер сущностей, инвентарь, авто-еда, деревья поведения.
Главная идея — один и тот же API в трёх обличьях. Python-версия без зависимостей для быстрой итерации, нативный Rust-крейт для встраивания, и PyO3-фасад: тот же Python-скрипт, но на скорости Rust заменой одной строки импорта. Совпадение API между ними проверяется автоматическим тестом на каждом коммите.
Всё протестировано на живом Paper-сервере 1.20.1 в offline-режиме. Разработка велась по спецификациям: три эпика (протокол, Bot API, Rust+PyO3) с полностью закрытыми задачами и замерами производительности.
A full bot framework for Minecraft Java 1.20.1 (protocol 763). All 176 packets of the version are implemented, plus codec, framer and the connection lifecycle. On top sits a high-level Bot API: A* pathfinding walks, 20 Hz physics, a world cache, entity tracker, inventory, auto-eat and behaviour trees.
The core idea is one API in three forms. A dependency-free Python build for fast iteration, a native Rust crate for embedding, and a PyO3 facade — the same Python script at Rust speed by swapping one import line. API parity is checked by an automated test on every commit.
All live-tested against a real Paper 1.20.1 server in offline mode. Development was spec-driven: three epics (protocol, Bot API, Rust+PyO3) with all tasks closed and performance gates measured.
Повноцінний фреймворк для ботів під Minecraft Java 1.20.1 (протокол 763). Реалізовано всі 176 пакетів версії, кодек, фреймер і життєвий цикл з'єднання. Поверх протоколу — високорівневий Bot API: ходьба з A*-пошуком шляху, фізика на 20 Гц, кеш світу, трекер сутностей.
Головна ідея — один і той самий API у трьох обличчях: Python без залежностей, нативний Rust-крейт і PyO3-фасад на швидкості Rust. Збіг API перевіряється автоматичним тестом на кожному коміті.
Усе протестовано на живому Paper 1.20.1 сервері. Розробка велася за специфікаціями: три епіки з повністю закритими задачами.
ОсобенностиFeaturesОсобливості
- Все 176 пакетов протокола 763 на Python и Rust
- Высокоуровневый Bot API: walk_to, A*, физика 20 Гц
- PyO3-фасад: скорость Rust в Python без переписывания
- Автотест паритета API на каждом PR
- Захват и воспроизведение сетевого трафика (WireLog)
- Деревья поведения, авто-еда, трекер сущностей, кэш мира
- All 176 protocol-763 packets in Python and Rust
- High-level Bot API: walk_to, A*, 20 Hz physics
- PyO3 facade: Rust speed in Python with no rewrite
- Automated API-parity test on every PR
- Network traffic capture and replay (WireLog)
- Behaviour trees, auto-eat, entity tracker, world cache
- Усі 176 пакетів протоколу 763 на Python і Rust
- Високорівневий Bot API: walk_to, A*, фізика 20 Гц
- PyO3-фасад: швидкість Rust у Python без переписування
- Автотест паритету API на кожному PR
- Захоплення та відтворення мережевого трафіку
- Дерева поведінки, авто-їжа, трекер сутностей