Mindustry/TODO.md
2017-12-17 23:51:55 -05:00

64 lines
2.6 KiB
Markdown

_Keep in mind that this is just a basic outline of planned features, and will be constantly changing!_
### 3.x Planned
- New save system: toggleable autosave, named slots, less clunky save UI
- [DONE?] Optimize for tablets
- Teleporter UI changes, more colors (?)
- [DONE] New building tools: selection-delete, hold to place blocks in a line, one-tap delete mode (mobile). New 'tool' menu (desktop).
- [DONE] Refactor `Renderer`, remove code for rendering platform-specific placement and move to 2 different classes
- New map format system. Each new version is a different class, convert between different versions.
- Underground conduits
- Minimap
- More indicators for when the core is damaged and/or under attack
- Fix bugs with junction not accepting blocks (low FPS)
- Fix bugs with tunnel merging and/or removing items (low FPS)
- Edit descriptions for conveyor tunnels to be more clear about how to use them
- [DONE] Add link to Mindustry discord everywhere
- Balancing to slow down progression
- Map editor
- Delete saves
- Display playtime
### Major Bugs
- Black screen when tabbing out on Android
- Infinite explosions that destroy blocks
- Random map reload when playing, leading to a crash (UI cause?)
- Google Payments verify crash
- Google Payments IllegalArgument crash
### 4.0 Planned
- Multiplayer framework, possibly implementation
- New look to blocks, make them less 'blocky'
### Misc
- Localization support. Change all in-game strings to localized strings. Check compatibility with GWT and Android libraries.
### Possible Additions
- Mech body upgrades
- Uranium extractor / uranium->iron converter
- Laser enemies
- Flying enemies that move in formation and spawn from different locations
- Fusion reactor
- Point defense turrets that take down projectiles
- Turrets fueled by lava
- Gas transporation and use
- Better enemy effects and looks
- Homing missile enemies and turrets
- Reflective shield blocks
- Tech tree with bonuses to production or turrets
- Spawn points changed into enemy bases with hostile turrets
- Unit production
### Optmiziation
- Look into uses for `IntMap`
- Spread updating over multiple frames for large groups of specific tile entities (?)
- Optimize enemy + bullet code and check quadtree leaf parameters
- Check for unnecessary use of `Timers#get()`
- Optimize generator laser distribution, especially finding targets
- Optimize UI
- Check memory usage and GC, profile
- Optimize health bars and enemies in general
- Make drawing of enemies more efficient (don't call `flush()`?)
- Look into `NodeRecord` storage for pathfinder, since it's taking 2MB+ of memory!