The real problem is the lack of Z-ordering of surfaces with alpha. We are reviving an old gaming project which went open source and try to modernise the graphics to reach some new audience. We wanted to switch from masked to alpha textures and we have a tough decision to make now.
I find the omission of alpha Z-ordering rather puzzling as it had to be implemented analogously for opaque surfaces before alpha surfaces were even considered. It probably wouldn't be difficult to add a flag enabling alpha Z-ordering directly in the Blitz source, and certainly easier than doing it in the Blitz code, as the Z-order needs to be updated per-mesh relative to active camera, in each frame.