Every week I make a small jam game inspired by a randomly selected album. My patrons have exclusivity with it for a week - here's the one I finished last week, inspired by White Zombie's "Astro Creep: 2000" album. #godotEngine #gameDev #devLog

https://sgdf.bearblog.dev/head-gamez/

Head Gamez

Avoid the bouncing skulls

Small Games Done Fast

flow graph for test_sdl3.n and test_hylo.n

reactive edges are now highlighted.

#devlog #nudl

same program, different layout.

it does help that a program iteration is acyclic, so all arrows point down, except for cue operations which feed the next iteration.

#devlog #nudl

a convoluted test program (you might now realize why it's named "nudl") and the generated graph, as the scheduler sees it.

time to add some styling...

#devlog #nudl

thanks to the rudimentary step debugger, i figured out why recent semantic changes messed up a test: an event to clear a vertex buffer is set, but only executed _after_ the vertex buffer has already been filled. this was a user error :)

i have yet to acclimate to the fact that all cases need to be time-bracketed: i.e. "trigger this *after* x, but *before* y"

next i'm going to add dot output for graphviz.

#devlog #nudl

Day 41 of making my own indie MMO without engine or team

Today I finally managed to beat souffle's datalog -> C++ code, it's funny how after a few hours trying, the change that got me over that line was walking back on the assumption that clearing the length of the indices in delta sets would be faster than just starting a new set of indices from scratch every iteration with new allocations. I tried to use a arena allocator to help reuse memory but the bookkeeping I need to add to the data structures made it slower.

This should have been it, the end of the datalog sidequest. But I made a critical miss roll on my sanity check and went ahead to ensure it was also better at facts/ms on my x86_64 desktop (spoiler: it was at 900k but not at 64M)...

I had a general idea of what was happening, but when optimizing you need to measure things, because it's very cheap. So, I spent a few hours trying to get Intel's vtune working on my AMD machine, then resigned and went with AMD uProf. It showed that most of my time is dominated by misspredictions and misses when trying to ensure that the hashtable slot I compute IS the slot of the fact or the index I'm trying to fetch (which happens like ~50% time, due to low load factors).

#woao #solodev #gamedev #indiedev #mmo #devlog #programming #coding

figured because of side effects, term products are partially non-commutative which is an interesting constraint.

also, it is safe to add an optimization for the case that a factor is zero for every product produced by the left-hand side.

#devlog #nudl

hm. i realize i have everything to begin the rewrite of Tukan.

#devlog #nudl #tukan

Working on a new game, Sanguine: The Forsaken. This is a Game Boy first person RPG I hope to submit to @zine. It's up on itch now, but it's really rough with only a short dialogue scene.

Right now I'm trying to learn how to switch background tiles, then I need to work on the battle system.
#devlog #sanguine

Hi folks! 👋✌️ What's the beautiful day, right? 🙂

I've publish the new version of "Vasya go to home 🏡", and you can download it from here 👉 https://codeberg.org/xolatgames/Vasya-go-to-home/releases/tag/v1.2.2

Also don't forget to check my devlog 👉 https://xolat.games/devlogs/2026/03/21/post/ , or it's sometimes better to subscribe on it through RSS 👉 https://xolat.games/feed.xml

Have a good day to everyone! 😉

#vasya #macroquad #rust #rustlang #game #gamedev #devlog #appimage #linux #games #indiegame #indiedev #inkscape #tiled #TiledMapEditor #2d #maze #arcade