Об этом проекте
Mindustry — это открытая стратегия в реальном времени, сочетающая защиту башни с автоматизацией: игроки строят и соединяют производственные цепочки для снабжения обороны, а не просто размещают турели. Игра написана на Java и разрабатывается открыто на GitHub, где README описывает её как «стратегию защиты башни с автоматизацией».
Платформы и распространение
Проект компилируется в десктоп-клиент, Android-клиент и автономный сервер. Готовые релизы публикуются на GitHub, а README содержит ссылки на загрузки с itch.io, Google Play, F-Droid и Flathub. Автоматические сборки на основе последних коммитов генерируются в отдельном репозитории builds, что позволяет тестировщикам следить за разработкой без компиляции.
Сборка из исходников
Для вклада требуется JDK 17 (другие версии не работают), как указано в README. Система сборки — Gradle с обёртками для Windows и Linux/Mac. Типичные команды: `gradlew desktop:run` для запуска, `gradlew desktop:dist` для упаковки десктоп-JAR, `gradlew server:dist` для серверного релиза, `gradlew tools:pack` для упаковки спрайтов. Сборка Android проходит через командную строку SDK, требует `ANDROID_HOME`, принятия лицензии и режима разработчика на устройстве; `gradlew android:assembleDebug` создаёт неподписанный APK, а `gradlew android:installDebug android:run` устанавливает и запускает на подключённом устройстве. Выходные файлы: `desktop/build/libs/Mindustry.jar` и `server/build/libs/server-release.jar`. В README также указано решение для ошибки с правами доступа (`chmod +x ./gradlew`) и предупреждение, что первая сборка может занять несколько минут из-за загрузки зависимостей.
Генерация кода и архитектура
Важной частью проекта является пакет `mindustry.gen`, который генерируется при сборке и отсутствует в репозитории. README объясняет его источники: классы `Call` и пакеты — из методов с аннотацией `@Remote`; классы сущностей (`Unit`, `EffectState`, `Posc`) — из компонентных классов в `mindustry.entities.comp` и определений в `mindustry.content.UnitTypes`; `Sounds`, `Musics`, `Tex`, `Icon` — из соответствующих папок с активами. Этот сгенерированный пакет помечен как не подлежащий ручному редактированию.
Сообщество и вклад
Проект поддерживает руководство по вкладу с правилами стиля и ожиданиями для pull-request. Новым участникам предлагается смотреть на задачи с меткой «candidate» в отдельном репозитории Mindustry-Suggestions, где также размещаются запросы на функции и отзывы. Дополнительные ресурсы из README включают доску Trello для планов релизов, вики проекта, Javadoc и активное сообщество в Discord.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.