This is the second development update concerning 6.0, the next major update for Mindustry. For the first part, see here.
Many significant issues and bugs have been fixed since the last post. The game is now stable enough to play normally in multiplayer without game-breaking crashes or bugs, and most non-campaign content has been implemented. An alpha build may be released to a separate Steam branch in the coming couple of weeks.
Current Progress
Campaign
Research & Resources

Instead of being stored in a vague centralized location, all resources collected are now local to their cores on the ground. Resources cannot be "launched" anywhere except other sectors. This means that storage is limited by the amount of sectors you have captured, and the types of cores those sectors have.

Nearly all content is now required for research: Items, liquids and units have to be researched before they can be produced. While the amount of resources needed for research is significantly increased, this should not increase grinding, as all sectors under your control can passively generate resources while you play.
Units
Walker Units

Starting with Crawlers, a new branch of insect-like multi-legged units has been created.

Beginning with the second tier, these units are able to walk over most solid blocks. They specialize in sapping and splash-damage attacks.
Spiroct and
Arkyid units are able to pull enemies closer and leech health from them.
Naval Units

3 tiers of naval units have been added. These are made in a special naval factory, place-able only on water.

Compared to other units of similar tiers, these units are much faster and stronger, to make up for their reduced coverage. T3 naval units possess long range artillery, which can be devastating to coastal structures.
T4+T5 naval combat units may be added as well. Support naval units are also a possibility for future updates.
Boss Units
The "boss"-class units from 5.0 have all been re-implemented, renamed and cleaned up. New ones have also been implemented. The following previews should speak for themselves.
(yes, these units can be built in normal gameplay)
Logic
The long-awaited logic system has been implemented. It is still missing some important features, but is currently very much usable.

This system is based around several tiers of
processors, which execute
instructions at different rates - similar to assembly language, in some respects, but vastly simplified.

Logic is "programmed" by putting together sequences of instructions that manipulate variables and read/write from blocks. No programming knowledge is required, although the "code" can be exported as text and edited in an external text editor.

Each processor can be "linked" to other blocks. The linked blocks become variables in the logic UI that can be controlled in various ways: for example, most blocks can be
disabled to make them stop moving/functioning, and turrets can be manually set to fire at a specific position. Block state, such as item count or power balance can also be read by the processor.
In addition to processors, three new types of blocks have been added for logic-related purposes:
displays,
memory cells and
switches.
Displays

These can be used to display basic vector graphics when connected to a processor. Users have already made use of them for power and item visualization. Other applications, like graphical games, are possible as well.

Raster (typical PNG) images can technically be displayed as well, but with vector displays, the process is very inefficient and not practical outside of sandbox. The image shown here is drawn pixel-by-pixel using code generated from a PNG with an external script.
Memory Cells
These act as additional, indexable storage for processors. Each cell holds a certain amount of numbers (currently, 64) which can be read and written to using numbers 0-63. If you've programmed before, this is like an
array of numbers. Processors can link to the same memory cell, facilitating inter-processor communication.
Switches

These are simple blocks that do nothing on their own, but can be toggled by the player in order to do something with a processor. For example, a processor can read the "enabled" state of a switch and use it to toggle a conveyor on or off.

Shown above is a multiplayer pong game, with inputs handled by switches.
(The design shown was made by Xusk).
Limitations
These processors are currently only able to control
blocks. In the future, units will be controllable as well.
It is also worth noting that, to prevent various problems, processors can only read or write to blocks that are (manually) connected to them. Things such as self-replicating processor-powered bases are currently not possible, but may be in the future.
Release Time Frame
The new
tentative release date for 6.0 is somewhere around December 2020. This may change if unexpected problems arise, but hopefully that should be enough time for me to finish everything planned for this release.
[ 2020-09-09 01:36:39 CET ] [ Original post ]