Gealdor, a game I'm making
I'm making a programming magic game called Gealdor. The word is from Old English,
cognate with the Germanic word galdr, and
roughly means a spell or incantation.
Gealdor is/will be a 2D (or possibly 2.5D) puzzle game that involves writing spells to solve puzzles. The spells use a language grammar I've already determined. I need more puzzles, but I think the language is reasonably expressive and allows for some fun.
I'll waffle about this project a lot, so it has its own Gealdor tag.
Boring programming details
I'm writing the game in C++, using SDL3 for basics like window and input handling, and CMake manages the build and packaging.
The game has a Domain-Specific Language (DSL) implemented in C++ using PEGTL (I can't recommend PEGTL enough; it seems very solid and has lovely documentation). Developing the DSL is going remarkably smoothly, so far; perhaps actual gameplay will follow soon.
I wrote a janky renderer in OpenGL, too. This will probably change drastically if the game is ever published, but puzzles are the priority right now. I can get reasonably far with counters, paper and pen, but the puzzles can be quite complex, limiting what can be achieved before the gameplay works properly. Also, ultimately only the gameplay can make it fun—anything else is a (relative) waste of time.
Originally the game was a dual-language project with Racket as well, but I've since removed that part of the codebase. Maintaining a C API for language bindings was a pain, and also Racket has a couple of peculiarities that slowed the project down. I say this with love, though: I relish coding with Racket, and will keep trying to use it in my projects (it may even reappear in this one at a later date). I strongly recommend it if you want to learn a Lisp.