2022-08-13 Finally finished something in the form of a flanking and retreating ai tutorial!
It's been a long time since the last update as I've been whiling away the hours overhauling a lot of components.
First I wanted to switch from using X and Y coordinates for the tiles making up the levels to using tile numbers. When doing level related stuff you often end up traversing all the tiles sequentially anyway and allocating arrays contiguously in C requires pointer arithmetic which is the same as calculating a tile number so it looked like this would simplify the code. Lines-of-code-wize it's pretty much a wash with how it was before but overall I think it improved things.
Then the collision code started looking old. All of it was dumped in one giant function and splitting it into smaller parts I thought should be a small thing. Collision detection has always been a thing I've struggled with though and refactoring it took months.
As a third thing I then wanted to switch movement from Cartesian to polar coordinates. The reason for doing so was a bit nebulous to begin with but I like how you can get X and Y positions by just using trig functions and also I wanted to get rid of using square roots everywhere to check if the vector was too long. I never finished this but it's something I'm hoping to get done soon-ish.
None of this has been interesting enough to write about but if I get the polar coordinates working that might merit an article. I also think it might be possible to do sloped floors in the raycaster engine but that could just be a pipe dream.