In the book "Starling House", being poor is defined as: you make a list for what you need, another for what you want, and then you throw away the second list.
The author of this post goes even further than that: He says to make a list of only what you need, and then flounder while you fail to acquire the items on that list.
Looks great! and seems like you have spent a lot of time on the detail, not just the graphics, but also the storyline (I started by having a read of the walk-through). Have you written your own game engine for this? anyway, well done, and I wish you success.
Yes, the engine is written in go and uses opengl (the isometric layout uses the opengl z buffer). The game is written in bscript (https://github.com/uzudil/bscript).
I've always been a huge Ultima fan and this was a lot of fun to work on.
Cool. I spent some years with opengl and now webgl2, so I have a feel for how much work that entails, well done!
I never quite got a satisfactory result with the z buffer, just a bit too much of a z gap on my geometry outlines to avoid z fighting.