# Mindustry v159 — v8 Build 159 - Product: Mindustry (https://whatsnew.fyi/product/mindustry) - Vendor: Anuken - Date: 2026-07-06 - Version: v159 - Original notes: https://github.com/Anuken/Mindustry/releases/tag/v159 - Permalink: https://whatsnew.fyi/product/mindustry/releases/v159 - Labels: Platforms: Desktop, Mobile What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **added** — New system for adding arbitrary content (sounds, music, images, blocks, items, etc.) to maps or servers via assets/ subdirectory - **added** — LOD-like system for hiding various details like power lasers when zoomed out - **added** — Key for teleporting to the cursor in sandbox mode - **added** — Developer Options settings tab - **added** — Option/hotkey to see performance stats - **added** — Multi-file select support to system file picker - **added** — New icons to font - **added** — Logic sensor for checking whether a unit is flying, and checking heat of Erekir blocks - **added** — Logic instruction & server remote methods for playing music sourced from server assets/map assets - **added** — Map rules for random music that will be played (Rules#ambientMusic, Rules#darkMusic) - **added** — NoiseEffect for JSON mods/data patches - **added** — Support for :emoji: formatting in content descriptions - **added** — Support for player-local WorldLabels via WorldLabel#show(Player) for plugins - **added** — Reading of processor links via read instruction - **changed** — Increased Java bytecode target to 17 on desktop, no longer compatible with Java 8 - **changed** — Raised Android minimum SDK version to 21 (Android 5.0+) - **changed** — Removed rounding of camera zoom levels - **changed** — Optimized rendering of various static blocks (e.g. walls) - **changed** — Made sounds load when played instead of at game startup, saving around 150mb of RAM - **changed** — Moved dedicated server rules config to a separate file - **changed** — Shuffled dedicated server fetch order on game start to prevent unfair ping resolution - **changed** — Improved terminal support on dedicated server via jline library - **changed** — Improved performance of server snapshot packet serialization - **changed** — Improved performance of Call.label for plugins - **changed** — Improved transfer rate of world connection streams - **changed** — Increased copper conveyor speed from 4.2 to 6.5 i/s - **changed** — Decreased junction build time from 0.15 to 0.075 s - **changed** — Made mass driver bullets move faster based on timescale - **changed** — Moved Steam public hosting checkbox to paused menu instead of game settings - **changed** — Made settings checkboxes look slightly less terrible - **changed** — Disabled global Steam griefer ban list in private (friends-only) lobbies - **changed** — Minor modifications to unnecessary requirements in Serpulo tech tree - **changed** — Renamed 'show enemy spawns' to 'hide enemy spawns' - **changed** — Updated many Serpulo sector submissions - **changed** — Updated difficulty of sector submissions to reflect their actual difficulty value - **changed** — Made research prioritize sectors the player is not playing on - **fixed** — Search bar getting reset in schematics dialog on Android - **fixed** — Derelict blocks sometimes still supplying power - **fixed** — Default methods not being overrideable in JS - **fixed** — Links being renamed under specific conditions when copying logic blocks - **fixed** — Ground Zero tutorial getting stuck when on Casual difficulty - **fixed** — A number of server crashes/exploits - **fixed** — Clearing planet research not properly resetting costs - **fixed** — Unit ability data (e.g. shields) not saving - **fixed** — Power node unlink causing power graph blinking - **fixed** — Audio not playing on iOS when ringer is off This release brings a new system for adding arbitrary content (sounds, music, images, blocks, items, etc.) to maps or servers. In terms of functionality, this is very close to what JSON mods can provide, except without any manual downloads necessary. Servers can add content by dropping files into the appropriate assets/ subdirectory next to the server JAR. Note that patches have been moved into this directory as well. Any maps/saves with assets in them must be exported through the in-game UI to work properly; for performance reasons, assets are not embedded in map/save files unless exported in this way. This system will likely have serious bugs, so expect hotfix releases after this one. - Increased Java bytecode target to 17 on desktop - you will no longer be able to launch the game/server with Java 8 at all - Raised Android minimum SDK version to 21 (Android 5.0+) - Added 'LOD-like' system for hiding various details like power lasers when zoomed out - Removed rounding of camera zoom levels - Optimized rendering of various static blocks (e.g. walls) - Made sounds load when played instead of at game startup (saves around ~150mb of RAM) - Added a key for teleporting to the cursor in sandbox mode - Added Developer Options settings tab - Added option/hotkey to see performance stats - Moved dedicated server rules config to a separate file - Shuffled dedicated server fetch order on game start to prevent unfair ping resolution - Improved terminal support on dedicated server via jline library - Improved performance of server snapshot packet serialization - Improved performance of `Call.label` (for plugins) - Improved transfer rate of world connection streams - Added support for player-local WorldLabels via `WorldLabel#show(Player)` (for plugins) - Added multi-file select support to system file picker - Added new icons to font - Added logic sensor for checking whether a unit is flying, and checking heat of Erekir blocks - Added data asset system (see info above) - Added logic instruction & server remote methods for playing music (can be sourced from server assets/map assets) - Added map rules for random music that will be played (`Rules#ambientMusic`, `Rules#darkMusic`); currently, these values can't be edited in the map editor UI - Added NoiseEffect for JSON mods/data patches - Added support for :emoji: formatting in content descriptions - Increased copper conveyor speed (4.2 -> 6.5 i/s) - Decreased junction build time (0.15 -> 0.075 s) - Added reading of processor links via read instruction - Made mass driver bullets move faster based on timescale - Moved Steam public hosting checkbox to paused menu instead of game settings - Made settings checkboxes look slightly less terrible - Disabled 'global' Steam griefer ban list in private (friends-only) lobbies - Minor modifications to unnecessary requirements in Serpulo tech tree - Renamed 'show enemy spawns' -> 'hide enemy spawns' - Updated many Serpulo sector submissions - Updated difficulty of sector submissions to reflect their actual difficulty value - Made research prioritize sectors the player is not playing on - Fixed (probably) search bar getting reset in schematics dialog on Android - Fixed derelict blocks sometimes still supplying power - Fixed default methods not being overrideable in JS - Fixed links being renamed under specific conditions when copying logic blocks - Fixed Ground Zero tutorial getting stuck when on Casual difficulty - Fixed a number of server crashes/exploits - Fixed clearing planet research not properly resetting costs - Fixed unit ability data (e.g. shields) not saving - Fixed power node unlink causing power graph blinking - Fixed audio not playing on iOS when ringer is off