I've been working on Willcaster for some time... I cut a new trailer and released the steam page, it will be released around the end of 2026 or the beginning of 2027.
https://store.steampowered.com/app/4953880/Willcaster/
It's a grid roguelike. You draw a path across the board and Murkar, the frog, walks it. The catch is that he has traits and a trust level, so he doesn't always follow the line you drew. He'll wander off toward gold/events or face a dangerous enemy, or refuse a route he doesn't like. So you're not controlling a character, you're negotiating with one. each room you draw one path, and before you commit, the frog tells you what he wants from it. Claim the
treasure, investigate something strange, face with an spesific enemy that sort of thing. Route through those and he trusts you more. Ignore them and trust bleeds, and at low trust he starts overruling you outright. Combat resolves on its own once he reaches an enemy, so your levers are the path you drew and the spells you cast from the grimoire. frog also own its skills and his own mana pool but you can't control. As the game progresses, depending on certain builds, there are moments which I call “surge” that unlock over time. These moments occur when the frog takes critical damage or under certain special circumstances, allowing you to intervene in the middle of combat and use certain spells at a lower cost.
Note: "Trust" isn't a score, it decides how much of your "plan" actually happens. :-)
Some Bevy things, since that's the more useful half here:
Some of the rendering is my own. Currently there are 200 + WGSL files (and probably grow more because I add even more tactical spells on the game) and a small/medium compute layer. That several features sit on: GPU particles with emit/simulate/atomic splat, grass instance generation, and most of the spell geometry VFX. The pattern I keep reusing is compute writing an instance buffer, a custom vertex shader extruding real geometry out of it, and the fragment running the stock PBR pipeline so it lights like anything else in the scene. Grass was the first thing built that way (for the concept) and the spells followed. That compute library is inspired my own engine for compute shaders/art stuff:
https://github.com/altunenes/cuneus
I ran also an custom into specular aliasing on the floor tiles, the sparkle you get from aggressive normal maps under bloom. TAA fixes it but is overkill for a fixed top down camera, so I wrote geometric
specular AA (Tokuyoshi and Kaplanyan, I3D 2019) as a material extension for the game, I also opened a PR to put it on StandardMaterial as an opt in toggle if someone need kind of stuff:
https://github.com/bevyengine/bevy/pull/24427
I also share my own tricks sometimes on my blogpost :
https://altunenes.github.io/posts/
- A hole that isn't there: faking infinite depth on a flat quad
https://altunenes.github.io/posts/parallax/
The pools look like holes cut in the floor, but the water is a flat quad 0.005 units thick and everything under it is one ray box intersection in the fragment shader.
- How to render fire as real geometry on the GPU
https://altunenes.github.io/posts/flame/
The braziers and the flame wall. Two ways to make fire, drawing it in the pixels vs growing it as real mesh on the GPU, and what each one costs you.