Rolling Pixels: Looking for Framework
An old coder’s new game dev adventures!
Hello World
I not only sling code for a living, but I’m also the owner of a code-slinging consulting business. These days I work on a lot of bespoke software for small businesses. Full-stack stuff. Ruby-on-Rails is my workhorse around here, often paired with a React front-end. We’ve done a few projects in Go, Scala, and PHP. I miss C/C++; it’s still my favorite. All this is prologue, so you know I know my way around some code editors and the processes of code-slinging.
I’m an old man, and these action RPGs will be the death of fun for me. I just don’t twitch like I use too! This often leaves me as food in many online multi-murder mob games today. What’s a dev to do?
Rolling Pixels
So I’m planning an old-school turn-based adventure RPG. A sandbox, not a roguelike. Tactical combat, maybe quasi-auto-battler, think Darkest Dungeon-ish. Party management, ala War tales. Vancian magic — I did say old school! Lots of TTRPG elements, like what does a CRPG look like that isn’t inspired/derived from D&D? There are other, newer tabletop roleplaying games with better tech to pull inspiration from! I want to work on that.
Anyways, THEY say, start small. But 🦆 that, I’m old and ain’t nobody got time for that. My plan is to build prototypes of my big project to test out what’s fun and what it looks like and rapidly learn the software tooling.
I looked at the Holy Trinity of Game Engines: Unity, Unreal, and Godot. That feels like the way to go! But the engineer in me just..sheesh…it’s overkill, right now for me. I like the framework or library approach better. I took some time and jumped in with SDL2 and some C, you know…for nostalgia! Lemme tell you on a MacOS, that setup just suuuuuuuuuuux. But, after some deep web digging — just like riding a bike. I’m back, bay-bay!
I’ve spent a few weeks on DragonRuby, which does some amazing stuff using embedded Ruby. Ruby is a strong skill for me at the moment so this was some nice rapid learning. I got some sprites on a layered 2D background; I can select and highlight them. It’s pretty straightforward about cross-platform development and deployment to Itch.io. I understand, but I am cranky about the demo or examples code. It’s all contained in one file -which is unrealistic IRL. I also spent a day noodling around with Ruby2D, which I enjoyed. There is a directness in the Ruby2D API. I expect and want more of that in DragonRuby’s API. Ruby2D is a lower-level library.
I’m onto using Defold — I know it’s an engine, but it uses Lua, which is used by Love2D — which I’m also playing with in parallel. In this iteration, I hope to nail down a kind of the game dev equivalent of “Hello World” or “ToDo App” that is meaningful for me in figuring out what framework I want to work in.
Wizard Time!
That’s what this is all about. Deciding what framework or library to build Wizard Time! (working name) with and, in the process, make and play with game prototypes as I go along. Some might argue, “That’s starting small,” and those folks can catch a bird!
Oh, what’s Wizard Time? You’re a wizard in a world where Templars hunt you and put you to the stake. Other wizards want you for your spells. You’ll need to acquire spells to keep yourself alive. There are only 100 spells in the world, some in forgotten places, some with other wizards, some in Templar outposts. Inspired by the Dying Earth series, The Dread Empire, and all manner of tabletop roleplaying games.
Thanks for coming on this journey with me!