tl;dr: I'm working on a falling sand physics-powered, 2d block-based open-world survival crafting game with spells instead of weapons and tools.
Working on a game that takes elements from Terraria, Noita and Wizard of Legend.
The falling sand physics of Noita intrigued me, but I always wondered what it would be like in a game like Terraria.
I watched the Noita dev talks about their engine (Games Now! Talk and GDC Talk), and they were nice to get started, but they definitely omitted some of the hard details (due to time restrictions I imagine), and for some reason, I found it real hard to find a good lighting algorithm online that worked for block-based games (I ended up finding a simple one that was easily parallelizable, works for day/night cycles and moving light sources that are grid aligned).
Like Terraria, the world is made up of blocks, but for my game blocks can become part of the falling sand physics when they crumble in some way, and they can be interacted with through the falling sand physics too.
So I've got the interactions of things like fire burning wood blocks one pixel at a time, acid melting through dirt and stone, flammable gas, water. Example of fire interacting with wood here
And a full image of what the game looks like with its basic UI here
Now I'm working on implementing a bunch of spells as well as enemies. Spells have cooldowns unless they're basic spells. What I really wanted to do with non-basic spells is to have them be cast by taking the element from the world itself and then casting the spell with it, much like bending in Avatar. For now though, I just want to implement something so testing it isn't boring (falling sand physics alone took a bunch of time).
I really want to see multiplayer in this, too, so I've been careful not to make it completely impossible to do later (I did abuse RNG a bit, but I'm hoping I can fix that later ;))
I also decided to make it in Rust, using bevy_ecs (not bevy itself) and Vulkano (Vulkan rust library) with SDL for windowing and fmod for audio.
Since I don't actually have a dev log or anything, I mostly use my existing (Terraria server) community so at least some people are around to help me test things or give feedback, so I post it all here: https://forum.dark-gaming.com/c/game-testers/54.
If anyone needs details for any of the systems I mentioned, let me know, some of that stuff was difficult to implement (I'm still refining them) and a lot of information is scattered around the web that makes it hard to implement this stuff (seriously with the lighting, did I just miss some obvious post somewhere?).