• he/him

Occasionally I start making roguelikes and then mostly don't finish them



I never really posted much here, but I enjoyed lurking here while it lasted. I'm over on mastodon now but probably won't post much over there either. Possibly just occasional updates for games I'm working on, but who knows (if you just care about game updates, following me on itch.io works too).

I'm not really working on anything right now, but my plans for whenever I get around to it are:

  • Finish my 7DRL from this year, Byte Thief. I originally wanted to include limited use special abilities but didn't have time during the actual challenge, so I'd like to go back and add them at some point so the game feels more complete to me.
  • Make a full version of my 7DRL from 2023, Loose Spirits. The released version is pretty bare bones, but I'm really happy with how the core mechanics of the game worked out and I have an unreasonable number of ideas for additional stuff I could add. I'd abandoned the project since I wasn't happy with any of my ideas for how to structure a larger version of the game, but after letting it sit for a while I was randomly reminded of it last week and now have a good idea of how to proceed.

There's also a non-zero chance I'll be at the Seattle Cohost Wake. I haven't really decided if I'm going, but it's a convenient location for me, so on some level I feel like I might as well go.



I've submitted my 7DRL for this year to the 7 Day Roguelike Challenge 2024 game jam. It's called Byte Thief and it's a hacking themed stealth Broughlike. You can play it in your browser here: https://sportzer.itch.io/byte-thief.

The basic idea is that enemies by default don't really care about you, but each type has a unique behavior and detection ability. If you trigger an enemy's detection ability it will become alerted, which will make your life more difficult, and if it detects you again while already alerted it will generate trace. If you get too much trace you lose the game. The goal is to sneak your way through 8 levels worth of random maps and steal some data from the final level.

Comparing this to the previous 2 7DRLs I made, I'm definitely noticing some trends. That's probably to be expected, there's only so much you can do in 7 days and even less that I personally find interesting. My general 7DRL design philosophy seems to be:

  • Pick an interesting but relatively simple core idea. For me this tends to be a core mechanic involving some degree of enemy manipulation.
  • Design a bunch of stuff that fits with that idea that you can jettison from the game if you run out of time. Scoping is hard and 7 days is not a lot of time to make a game. The last 2 years this took the form of planning way more unique enemy types than I could reasonable manage, but that worked out well since I could focus on only implementing the least complicated ones. This year I ended up dropping an entire major game mechanic. You'll still need to implement enough variety to keep things interesting, but it's nice to have a surplus of ideas to pull from.

The biggest issue I ran into this year was that I was using a relatively new to me UI framework. My past 2 7DRLs were based on a wrapper around a terminal UI library (specifically cursive) that let me use it in a web browser. I was starting to run into the limitations inherent in using a UI library that thinks it's running in a terminal, and as much as I enjoy a good ASCII graphics interface, the ideas I had for this year made that a non-starter. It's still just text and very low resolution pixel graphics, but making the jump to "actual" graphics afforded me such luxuries as:

  • Proportional fonts
  • Rendering maps at two different sizes
  • Enemies with directional facing
  • Enemies with chirality
  • Having multiple enemy types whose name starts with the letter "S" without having to do something weird with how I choose to visually represent them

I'm pretty sure I spent well over half of the 7 days just wrestling with UI, whereas the actual gameplay implementation felt pretty straightforward. I could probably spend another 7 days worth of time just cleaning up the UI mess I made (and probably should, albeit spread over a much longer duration of time). On the plus side, if I'm still using the same framework next year I'll have a much better starting point for next year's 7DRL.

Anyways, I'm pretty happy with how it turned out in spite of everything. The different combinations of enemy types make for fun tactical puzzles and I think it's a fairly novel take on puzzley stealth gameplay.



I mean, I already made it (for last year's 7DRL challenge), but now it's actually complete. It's got a whole alphabet's worth of different enemy types and everything. It probably says something that the new version is roughly what I'd planned out for the original 7DRL version, yet I'm only just now releasing it nearly a year later, but the thing I choose to take away from all of this is that putting a lot of the planned complexity into enemy variety is a good way of letting you jettison scope if you really need to get something released in 7 days.

I may have painted myself into a corner game balance wise since the main knob for adjusting difficulty (number of groups of enemies per level) has 3 settings that make any sort of sense: 2 (too easy), 3 (about right), and 4 (overly difficult). So ramping it up to 4 on the last two levels in the interest of having some sort of difficulty curve may be a bit much, but I have confirmed that it's winnable even if it requires a bit of luck. Most of the game balancing happened via playing the game a bunch and nerfing any specific enemy types that annoyed me too much, though.

Anyways, link: https://sportzer.itch.io/maneuver

I'll be doing the 7DRL challenge again this year and will be sticking with the same formula of giving the player a weird gimmick mechanic instead of bump to attack and then throwing a variety of wildly different enemy types at them since that worked pretty well last year.