The automation tower defense RTS, written in Java.
See CONTRIBUTING.
Bleeding-edge builds are generated automatically for every commit. You can see them here.
If you'd rather compile on your own, follow these instructions. First, make sure you have JDK 16-17 installed. Other JDK versions will not work. Open a terminal in the Mindustry directory and run the following commands:
Running: gradlew desktop:run
Building: gradlew desktop:dist
Sprite Packing: gradlew tools:pack
Running: ./gradlew desktop:run
Building: ./gradlew desktop:dist
Sprite Packing: ./gradlew tools:pack
Server builds are bundled with each released build (in Releases). If you'd rather compile on your own, replace 'desktop' with 'server', e.g. gradlew server:dist
.
- Install the Android SDK here. Make sure you're downloading the "Command line tools only", as Android Studio is not required.
- In the unzipped Android SDK folder, find the cmdline-tools directory. Then create a folder inside of it called
latest
and put all of its contents into the newly created folder. - In the same directory run the command
sdkmanager --licenses
(or./sdkmanager --licenses
if on linux/mac) - Set the
ANDROID_HOME
environment variable to point to your unzipped Android SDK directory. - Enable developer mode on your device/emulator. If you are on testing on a phone you can follow these instructions, otherwise you need to google how to enable your emulator's developer mode specifically.
- Run
gradlew android:assembleDebug
(or./gradlew
if on linux/mac). This will create an unsigned APK inandroid/build/outputs/apk
.
To debug the application on a connected device/emulator, run gradlew android:installDebug android:run
.
If the terminal returns Permission denied
or Command not found
on Mac/Linux, run chmod +x ./gradlew
before running ./gradlew
. This is a one-time procedure.
Gradle may take up to several minutes to download files. Be patient.
After building, the output .JAR file should be in /desktop/build/libs/Mindustry.jar
for desktop builds, and in /server/build/libs/server-release.jar
for server builds.
Post feature requests and feedback here.