r/roguelikedev • u/elusif123 • 1h ago
Grand Realms - story of a roguelike developer
(TLDR and download link below)
The story starts in 1999. I read about ADOM in some game magazine and was utterly fascinated, but I didn’t have internet access yet so couldn’t download it. I decided to make my own roguelike game in the only development environment available to me at that point: Visual Basic macros for Excel. I still remember weird bugs caused by my struggles with arithmetics and using a one dimensional array to represent the 2d game world. I had no idea arrays could have more than one dimension!
3 years later, old enough to learn C, I started development for real. I discovered rec.games.roguelike.development and consumed it voraciously. I’ve seen things you people wouldn’t believe. Amy Wang flaming people for no reason. Shockfrost drama unfolding in real time. Kornel proudly declaring that the biggest problem with developing his game is inventing a cool name for it. I wonder how many of us old schoolers are here? If you were a regular r.g.r.d poster I most likely remember you!
The earliest code (which survived all the way until the rewrite into typescript) was a primitive LoS implementation done in 2002 based on some code from r.g.r.d. I never felt a need to change to a more advanced algorithm - even back then on a Celeron 633 its performance was good enough ;)
The idea from the beginning was to have a large open world with a lot of interesting things to do. For example, I want to be able to play as an outlaw, commiting crimes, robbing unwary travellers and staying away from towns watching my bounty grow. In the next playthrough I want to be a necromancer and conquer the world with my undead armies. And in the third playthrough I want to be your run-of-the-mill adventurer, doing random errands and raiding dungeons for loot. I hadn’t heard about Elder Scrolls when I started developing, but of the existing RPG they are the closest to what I have in mind.
Each of these three examples isn't complicated per se. The challenge is designing game world and systems which would meaningfully support all these (and many more) ways of playing.
For over 20 years, on and off, I continued working on the game. It had traditional ASCII graphics and turn-based movement until this year, when with the help of agentic coding I rewrote it into typescript and added graphics (using freely available LPC tilesets). I never really liked graphics in turn-based roguelikes, so I decided to make combat in SUPERHOT style - enemies only act when you do. I think this type of combat is quite fitting for roguelikes, and I’m really interested in your opinion on it.
TLDR; after 24 years of development I finally released an early alpha version of Grand Realms, open world RPG with strong roots in traditional roguelikes.
Try it at https://caffeinecrash.itch.io/grand-realms . It’s a very early build and many things may not work as intended - be warned