====== Frequently Asked Questions ====== ===== Release Date, Availability of a Demo ===== On the January 9, 2024 the developer posted on Discord that he was registered for Steam Nextfest in June. "I'm registered... now the question is if I can make that date. I give it 50/50: ... It depends on how far along I get and just what is in the demo. I'm working on tutorial infrastructure and all that load of stuff currently, as well as all of the front end support for space travel, etc. So the festival demo could possible be the actual game demo (like the first N missions). But I won't know that till closer to the fest" ===== On simulations used in the game ===== "There's the creeper, the sand, the unit movement particles, the 'sparticles' (special effects mostly, that can convert to sand), and a few other things. They all work a bit differently to achieve the result they are after. Creeper is double buffered and uses what is called the von Neumann neighborhood for updates. Sand is not double buffered and uses the Moore neighborhood. Its update pattern matters (unlike creeper that is double buffered) but the pattern changes, alternating directions to remove bias (effectively), except for the downward direction, which is something the games wants most of the time. Unit movement particles are updated in creation order, but use data structures maintained before and after them per frame. Sparticles update in a pseudo random order based on how they hash. All of this is complicated by "resting', which allows areas of sand or creeper to skip updating their simulation based on the idle state. For creeper that just means no creeper in a section. For Sand it is complicated enough that I would overfill the discord post limit describing it. It's complicated enough that I'm still working on the edge cases to make it as efficient as possible. In the simple case, if there is no sand or sand that is "moving", it can skip updates. This resting happens in sections which are smaller parts of the entire map. These sections are also used for multithreading since they can, except for the interior edges, run in parallel."