{"id":15031933,"url":"https://github.com/anuken/mindustry","last_synced_at":"2025-05-12T03:46:26.984Z","repository":{"id":37451134,"uuid":"89822531","full_name":"Anuken/Mindustry","owner":"Anuken","description":"The automation tower defense RTS","archived":false,"fork":false,"pushed_at":"2025-05-01T04:10:11.000Z","size":1858113,"stargazers_count":23801,"open_issues_count":31,"forks_count":3081,"subscribers_count":537,"default_branch":"master","last_synced_at":"2025-05-01T11:46:41.569Z","etag":null,"topics":["android","desktop","game","java","mindustry","mobile-game","multiplatform","rts","sandbox-game","tower-defense"],"latest_commit_sha":null,"homepage":"https://mindustrygame.github.io","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Anuken.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-04-30T01:24:29.000Z","updated_at":"2025-05-01T09:05:20.000Z","dependencies_parsed_at":"2024-03-28T15:28:28.100Z","dependency_job_id":"1b9e5380-31c7-4514-92a9-942bef233827","html_url":"https://github.com/Anuken/Mindustry","commit_stats":null,"previous_names":[],"tags_count":164,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuken%2FMindustry","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuken%2FMindustry/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuken%2FMindustry/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuken%2FMindustry/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Anuken","download_url":"https://codeload.github.com/Anuken/Mindustry/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251885130,"owners_count":21659803,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","desktop","game","java","mindustry","mobile-game","multiplatform","rts","sandbox-game","tower-defense"],"created_at":"2024-09-24T20:16:55.091Z","updated_at":"2025-05-01T13:50:12.201Z","avatar_url":"https://github.com/Anuken.png","language":"Java","readme":"![Logo](core/assets-raw/sprites/ui/logo.png)\n\n[![Build Status](https://github.com/Anuken/Mindustry/workflows/Tests/badge.svg?event=push)](https://github.com/Anuken/Mindustry/actions)\n[![Discord](https://img.shields.io/discord/391020510269669376.svg?logo=discord\u0026logoColor=white\u0026logoWidth=20\u0026labelColor=7289DA\u0026label=Discord\u0026color=17cf48)](https://discord.gg/mindustry)  \n\nThe automation tower defense RTS, written in Java.\n\n_[Trello Board](https://trello.com/b/aE2tcUwF/mindustry-40-plans)_  \n_[Wiki](https://mindustrygame.github.io/wiki)_  \n_[Javadoc](https://mindustrygame.github.io/docs/)_ \n\n## Contributing\n\nSee [CONTRIBUTING](CONTRIBUTING.md).\n\n## Building\n\nBleeding-edge builds are generated automatically for every commit. You can see them [here](https://github.com/Anuken/MindustryBuilds/releases).\n\nIf you'd rather compile on your own, follow these instructions.\nFirst, make sure you have [JDK 17](https://adoptium.net/archive.html?variant=openjdk17\u0026jvmVariant=hotspot) installed. **Other JDK versions will not work.** Open a terminal in the Mindustry directory and run the following commands:\n\n### Windows\n\n_Running:_ `gradlew desktop:run`  \n_Building:_ `gradlew desktop:dist`  \n_Sprite Packing:_ `gradlew tools:pack`\n\n### Linux/Mac OS\n\n_Running:_ `./gradlew desktop:run`  \n_Building:_ `./gradlew desktop:dist`  \n_Sprite Packing:_ `./gradlew tools:pack`\n\n### Server\n\nServer 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`.\n\n### Android\n\n1. Install the Android SDK [here.](https://developer.android.com/studio#command-tools) Make sure you're downloading the \"Command line tools only\", as Android Studio is not required.\n2. 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.\n3. In the same directory run the command `sdkmanager --licenses` (or `./sdkmanager --licenses` if on linux/mac)\n4. Set the `ANDROID_HOME` environment variable to point to your unzipped Android SDK directory.\n5. Enable developer mode on your device/emulator. If you are on testing on a phone you can follow [these instructions](https://developer.android.com/studio/command-line/adb#Enabling), otherwise you need to google how to enable your emulator's developer mode specifically.\n6. Run `gradlew android:assembleDebug` (or `./gradlew` if on linux/mac). This will create an unsigned APK in `android/build/outputs/apk`.\n\nTo debug the application on a connected device/emulator, run `gradlew android:installDebug android:run`.\n\n### Troubleshooting\n\n#### Permission Denied\n\nIf 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.*\n\n#### Where is the `mindustry.gen` package?\n\nAs the name implies, `mindustry.gen` is generated *at build time* based on other code. You will not find source code for this package in the repository, and it should not be edited by hand.\n\nThe following is a non-exhaustive list of the \"source\" of generated code in `mindustry.gen`:\n\n- `Call`, `*Packet` classes: Generated from methods marked with `@Remote`.\n- All entity classes (`Unit`, `EffectState`, `Posc`, etc): Generated from component classes in the `mindustry.entities.comp` package, and combined using definitions in `mindustry.content.UnitTypes`.\n- `Sounds`, `Musics`, `Tex`, `Icon`, etc: Generated based on files in the respective asset folders.\n\n---\n\nGradle may take up to several minutes to download files. Be patient. \u003cbr\u003e\nAfter 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.\n\n## Feature Requests\n\nPost feature requests and feedback [here](https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose).\n\n## Downloads\n\n| [![](https://static.itch.io/images/badge.svg)](https://anuke.itch.io/mindustry)    |    [![](https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png)](https://play.google.com/store/apps/details?id=io.anuke.mindustry)   |    [![](https://fdroid.gitlab.io/artwork/badge/get-it-on.png)](https://f-droid.org/packages/io.anuke.mindustry)\t| [![](https://flathub.org/assets/badges/flathub-badge-en.svg)](https://flathub.org/apps/details/com.github.Anuken.Mindustry)  \n|---\t|---\t|---\t|---\t|\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuken%2Fmindustry","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanuken%2Fmindustry","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuken%2Fmindustry/lists"}