> But I see it as a kind of craftsmanship and sharpening my own tools. I don't know another, better way to do that.
Toooootalllly. This project started out for me as a learning exercise, and for a long time an explicit non-goal of the project was to ship a game. It's just my own little land that I know every nook and cranny of for experimenting and, sharpening my tools, as it were. It's also the best way I've ever found.
To be clear, your work is next level awesome and technically more sophisticated than anything I've done. Mine is Javascript based and essentially a sprite screen graph rendering engine mixed with pixel-level effects on top of canvas, with an isometric endless world platform for runners and RPGs built on top of that renderer. I did ship one game with it, back in 2016. Since then, I've relegated my commercial work in that vein to threejs and pixijs. It sounds counterintuitive, but using your own codebase like this to develop a finished commercial product inevitably forces you to pollute the purity of the code. You start to develop sets of features that are specific to the game's needs and which force compromises that shear it away from being a general-purpose green field engine. Do I still dream of the day when I finish a new game built on my own codebase....? Totally. But maintaining a game in production and not having its needs override the intent of keeping a general purpose engone is like 4x times the work.
Toooootalllly. This project started out for me as a learning exercise, and for a long time an explicit non-goal of the project was to ship a game. It's just my own little land that I know every nook and cranny of for experimenting and, sharpening my tools, as it were. It's also the best way I've ever found.