Meh

Trying this blogging thing again. I don’t know why. Well, I do know why: Michael Klamerus keeps talking about people having small personal sites and I’ve always thought it would be neat to be the kind of person who had a small personal site that got updated regularly. But I know perfectly well that in practice I don’t care if my thoughts are public or not. I’m just as happy to noodle around with things privately and never publish them. I don’t have any need for other people to see them, so I start doing it and then just… stop.

I think I probably had my first web space in like 1996. I’ve done this before. But I’m in the mood right now to mess around with it again, so I guess I’m doing this for a little while.

I don’t remember exactly what the deal is with this static site generator: this is Hexo with a modified “cactus” theme. I think I kind of hated how clunky and badly done the theme was: none of them seem to support relative URLs and part of that was still broken even after I spent several hours messing with it (what IS it with static site generators wanting to hard-code your whole servername and directory structure into every link? How incredibly stupid can you be? Web devs are such sheeple) and I’m pretty sure the screen-reader accessibility is crap. But I set it up quickly for Blaugust 2023 and hit threshold with messing with it. So if I keep doing this I’ll want to go back and re-work some more of the theme at some point.

Or… I ran across another static site generator called Zola the other day that seemed like it might fit my values better. And I’m pretty sure it’d be quick to port over the portions of the layout that I care about. So who knows. I don’t want to spend more time fussing with the site generation than writing posts. Did that back in the late 90s, done with it. But I would like it not to suck for screenreaders, and I would like the links to all work. Those seem pretty basic. Oh yeah, and it was stupid that I couldn’t stick markdown posts and static resources like images in the same directory but had to have a separate parallel directory tree. Ugh.

Anyway.


a landscape fading into the fog: framed on the left by part of a
giant maple trunk, and on the right by a telephone pole, looking
across a lawn completely covered in yellow maple leaves, across a
small road at grass and weeds and increasingly faded
treelines. A lone twig of a branch reaches way out from the maple
trunk, with vertical sprays of still-mostly-green leaves

It has been extremely warm the last several days: high 60s/low 70s Fahrenheit (maybe 20-22° C). I think this is the last one and then we’re back to nights around freezing. Which is still unseasonably warm but a little better. But it was cool and very foggy this morning. Kind of fun with the fall color.

We’re so far behind. With my dad being mostly bedridden and my brother and sister-in-law just having their third kid, the teenage summer workers back to school, we’ve just… well, I’ve been focusing on getting the weeds under control and not planting stuff. So only one of the four greenhouses is really planted. We’re just starting to getting back to working on that now. There’s going to be at least a month here where we won’t really have anything to sell, but… Dunno. Better that than letting the weeds go to seed in the greenhouses and crushing any hope of profit from those beds for a couple years…

But the landscape sure is pretty this time of year. I wasn’t sure how much color we were going to get with it being so warm, but it seems about the same as usual.


With all the stuff going on, my hobby programming has been pretty sporadic all year. I’ve mostly been playing videogames and reading fluffy novels.

But I did make my favorite solitaire game in digital form and I play that way more now than when I had to get out and lay out all the cards. Penguin is a variant on Eight Off or Baker’s Game by David Parlett, an “open” game where all the cards are laid out face-up, and it’s solvable nearly all the time but nearly always has one or two places where you juuust scrape by. It’s kinda clunky and has no real UI but it’s just for me so it’s fine.

And I’ve been thinking about what else I could make that would be a little game that I could play a few times a day. I also ran across this interesting little paper about mental calendar math which I used to refine my method slightly (I wasn’t going to use it directly: I don’t understand why the Doomsday algorithm has you memorize a random date for each month instead of always being a number from 0-7. I dunno about John Conway sometimes). And that made me think that I’m still not really fluid with it: I just don’t use it enough. So what if I had a game to practice? And I’ve been wanting to make a small RPG for a while, thinking back to how much fun we had with the first of Spiderweb Software’s games as teenagers.

So I took sethbb’s 32rogues asset pack and threw together a hex-grid thing that’s still basically flash cards for the month codes but I’m having fun tinkering.

an island of dark green hexagons with animals in them for four
different months: reindeer and turkeys for January and May (code
0) and cassowaries and iguanas for September and December (code
4). A faceless monk is targeting an iguana and a cassowary with
the number 4

By mental calendar math I mean questions of the form “what day of the week is October 23rd?” (or reversing the problem for “what date is the fourth Wednesday in October?”) And the forward problems are made up of several pieces (century code, 2-digit-year code, month code, day-of-month) which are all expressed as a weekday (so 7 different answers).

So I’ve been thinking that fits well with seven different enemy classes. I want to make it a game of tactics and positioning. You’ll have different attack patterns and try to arrange the enemies so you can hit more of them at once. The last day or so I sat down and added ranged attacks and not just bump-into-the-enemy ones. Now I’m starting to think about what I want from enemy design and how to make it fun to play.

I want it to be playable in 5-15 minute bursts. I want it to have player-selectable difficulty for each of those play chunks. So I’m looking at a Mavis Beacon Teaches Typing or Heat Signature-like mission structure where the game will present you with a handful of options and you can choose what kind of playstyle and difficulty you feel like at the moment.

I mostly don’t want it to be terribly difficult. Neither in the math part nor the tactics part. I didn’t really play much of Into the Breach because it was just more work than fun for me. Ditto FTL: Faster Than Light, come to think of it. Same with the Firaxis reboot of XCOM: Enemy Unknown. It’s not that I can’t play these games (I think I beat FTL on my fifth playthrough), it’s just that I want a more casual challenge most of the time.

And I do want it to be “you’re probably going to lose” hard some of the time. So… yeah. Short player-selectable missions.

And ideally I want easily predictable enemy behavior that becomes interesting in combination. Nuclear Throne really hits a sweet spot for me here. That’s real-time, free movement, so it’ll be different for a turn-based hex grid game, but it seems like a good reference, and one I know well.


So let’s take the bandits from Nuclear Throne. The first enemy you encounter, low-level basic guys. About every second or so they randomly start an action. Which is either to move a constant distance in a random direction, or shoot at the player. Nice and simple. But there are a bunch of subtleties to it.

Their “turn timer” is just about the same as the slower more-powerful weapons that are available at the beginning of the game. So if you fire at them and miss because they’re moving, and then fire again as soon as you can, you’re likely to miss again because they’ll be moving again. Easy enough to work around if you know about it, but frustrating if you’re blazing away without thinking. Or if you’re fighting a bunch of enemies and want to fire as fast as possible.

They have a minimum distance. Personal space? If you’re too close, they’ll always move (and are more likely to move away from the player) and never shoot. But it’s a pretty short distance, and the movement is still fairly random, so it’s tricky to herd them. And it’s easy to get shot point-blank if you get sloppy.

And they have some kind of attention/awareness flag? Their first shot almost always goes wild. But after that they’re accurate enough to be annoying.

So the basic behavior template is readable enough but there are a bunch of exploitable quirks that will probably take you a while to figure out. And you always want to time your shots (shoot just as they stop moving, or shoot once you know where they’re moving to). And it can actually be easier to dodge a group of them if you stand still for a while (so their bullets are all aimed at the same place) and then step to the side. It’s harder to dodge if you’re moving around a lot and all the bullets are travelling in different directions.

And all of the other enemies have that kind of design too. I really like that. So I’m mulling over how I might get that kind of thing in a turn-based grid-based setting. Fairly obvious basic mechanics, but with some exceptions and subtleties to uncover and exploit. Mechanics that interact in interesting ways with the player’s mechanics (you want a slow-firing powerful gun for these guys, but then it’s terrible for the hordes of unpredictably moving little guys, that kind of thing).

I haven’t gotten to any answers yet: I’m thinking I’ll start by coming up with a bunch of possible attack patterns and mechanics, and with some possible enemy behaviors, and then work from both ends toward the middle to see where some interesting intersections might be.