Chased bugs around and worked on a little PHP script for mass generating items, specifically weapons and armour pieces. I also just spent some time actually playing the game, which I feel is a good sign. Even though I know all the possible outcomes the dungeon generator might come up with, it was still fun to stomp around the randomised caverns, hacking and slashing.
I really doubt I am going to be ready for a launch this weekend though. Wherever I am, I’ll throw it up on the live site and that can be that. I don’t know how much coding I’ll get done once I’m back at work; I’ll have to find a new pattern. I’m a little down-in-the-dumps about it, truthfully. I sort of wish I had another month or two, ideally, but that’s just not practical. Still, there are plenty of working hobbyist roguelike developers out there, and I will join their ranks.
Feeling a little sick this evening though. I don’t know why, I haven’t eaten anything odd, but my stomach is distinctly unsettled. Urgh.
Some days I feel like I haven’t got so much to say here, but I hope the slow accumulation of posting everyday will eventual reveal deeper truths. Or something.
Pretty standard Sunday. Bacon and brie sandwich, episode of QI, and then watched Detective Pikachu on Amazon Prime, which was a much better film than it really had any right to be. It is quite possibly the best videogame adaptation film ever, though that’s really not saying much at all.
After that I wandered the Appalachian wasteland in Fallout 76 a little more. Still enjoying it, and still haven’t encountered any terrible bugs, though I did have a pack of rabid molerats invade my C.A.M.P. base despite my perimeter turret guns, which apparently do nothing.
Next week I’ll be back on the BotLG development, hopefully adding in a bunch of content; equipment items and corresponding recipes first. To be honest, now that all the heavily coding is (air quotes)done I feel a little deflated with it; but you can’t wait for inspiration to strike or it never will. You’ve just got to get on with things, whether you feel like it our not.
A very relaxed Saturday. Did some cleaning and tidying of the house, walked down to the shops for a few bits and pieces, and then spent about six hours proving to myself that, in fact, Fallout 76 is not a bad game. I really enjoyed myself, and got up to level ten just wandering around and trying to survive. It feels harder than Fallout 4.
It is a bit buggy and sometimes unresponsive feeling, though, I admit. The gunplay feels a bit clunky, there’s lots of weird floating ragdoll glitches, but nothing game breaking. I’m enjoying building my little campsite hut and foraging for food. Can’t complain, and I’ll likely play some more tomorrow.
Nothing much to report today, really. Do of a few bug fixes and a couple of CSS tweaks, and then this afternoon I closed my dev tools and played some Fallout 4. Okay, a lot of Fallout 4.
I really love the first three games, but I’ve never played New Vegas, and the last time I tried FO4 I bounced off it pretty quickly. But I got interested in it again after watching that speedrun video the other day, so I thought I’d give it another try — and this time it’s clicked. I’m really enjoying wandering the Commonwealth, collecting junk and shooting raiders in VATS.
Is Fallout 76 still terrible? I played it a little at launch on the PS4, and to be honest, it was fine. I didn’t encounter any weird bugs (nothing more than the usual physics jiggles and slightly chunky animation that accompanies all Bethesda’s Creation Engine games, anyway), but I didn’t get too far into it, and of course it was the Internet’s favourite punching bag for a long time.
I have a pretty generous tolerance for bad games. I loved No Man’s Sky even at launch. I pre-ordered it, bought a PS4 for it, and I wasn’t even disappointed. It’s a much, much better game now, and I still play it periodically, but I thought it was pretty amazing even on day one. Maybe it’s not so much that I’m able to enjoy a bad game, but that I’m not particularly swayed by the Internet Zeitgeist telling me what I’m enjoying is wrong…
Had another meeting with my chief game-tester and rubber duck, Simon. It was pretty productive as usual, and we uncovered some interesting bugs in the storage system, an interesting quirk in pathfinding, and an issue with monster respawning. None of them are particularly complex, and I should be able to get them all fixed up tomorrow.
We also had a chat about the overall state of the game, and I was able to show him the new starting map I’ve been working on my immediate plans. It seems like there’s still such a lot to do, and I’m not sure I’ll make my (completely arbitrary) deadline of next week. It wouldn’t be the end of the world if I don’t make it — I’m going to be working on this for a long time to come — but it’d be nice to go back to full-time employment with a clean to-do list.
Mainly, it’s content. All the main systems are in place, which is great; I just have a lot of items, recipes, NPCs and quests to make. I’m starting to wish I’d written some more tools, to be honest. I often don’t like to make a tool too early, lest I get caught up in making them too nice and never actually making the thing the tool is supposed to make — so many game ideas over the years have resulted only a half-baked engine and a really nice level editor.
But I could really do with an item editor, and a monster editor, and an NPC dialogue/quest editor. Making an NPC in particular is a bit convoluted. I may have over-stretched myself right at the “finish” line. We’ll see where I’m at by this time next week…
Everything old is new again. When I first started dabbling in creating stuff for the web, everything was “static”. Then we had cgi-bin, scripting languages, server-side whatever, huge web applications many layers deep, and now we’ve come around full-circle to pushing out static files again.
The funny thing is, the BotLG client definitely qualifies as jammy. It’s all static, and once the initial page load has happened, it’s done. There’s literally nothing server-side, so I could easily host it through something like Netlify and benefit from all that lovely CDN caching. To be honest though, it does seem a bit like overkill. At the moment it’s hosted through my Linode account, and I’m perfectly happy with it. I do want to go and double-check my Apache rules for caching and so on, but, you know. If it ain’t broke, don’t fix it?
For the first time in a couple of weeks, I made almost no progress on BotLG today; I just couldn’t seem to settle on anything, and everything felt very unsatisfying.
I made a little progress on adding keyboard controls. So far everything is mouse-driven, so things work equally nicely on mobile. But when playing on a desktop machine, it would be really nice to be and to use the keyboard. I’ve got it so you can move around, and start and stop interactions, which is 90% of the game, but I need to go back to the pop-up/overlay system and make sure all the dialogue boxes can be controlled and navigated with the keyboard, too.
This afternoon — and let’s be honest, most of this evening, too — I ended up in a YouTube black hole of watching GDQ speedrun videos. I watched Doom (2016), the entire mainline Fallout series as a marathon, which was very impressive, and then a random-seed Minecraft run. I haven’t touched Minecraft in a while, but I think I’ll get it reinstalled; it’s always fun to noodle around in there for a while, and there’s so much content that’s been added since I last played.
Hopefully tomorrow I’ll be a bit more productive. There’s dungeons to build, NPCs to write and new items to impotent. I want to get a “version 1.0” out by the end of next week.
I’ve had a really great, productive day today. This morning I implemented account-wide storage, so players can keep items and money safe in chests — doing the money side of things was way more complicated than I expected, due to my dogged insistence on having copper, silver, gold instead of just one number. Obviously I only store one number in the background, but the UI had to allow for all the coins the player is used to seeing. It was a bit of a pain, but it’s working now.
Then this evening I did a bit of work on the procedurally generated dungeons. I want them to be the main focus of the game, really, so it’s worth investing the time in them. As usual, I was using the Rat King’s Lair as my development ground, and it’s looking pretty good now. It starts out as a dark, wet cave, with lots of mushrooms and water — with plenty of mushrooms for the player to harvest to make potions, and water to fish in for food — and then progresses into a more traditional rooms-based dungeon, with carved walls, but still with water and rubble, making it look run-down and badly constructed.
Because of the new, more damp and fungus-y environment, I added a new monster, the Sentient mushroom. It’s pretty easy to kill (about on par with a regular rat) and drops loot from the same pool as harvesting mushrooms. It also has some fantastic attack verbs. Splorp splorp splorp.
This only leaves account-wide progression through retirement left to do, and if I’m honest, I’m not sure it’s needed now that the game is more active and less idle; I’ve been having second thoughts about it for a few days now. I think I’m going to spend the next few days pushing out new content — there’s a great new starter map I’m working on — and see how I feel.
Tried on a couple of leather jackets today, and didn’t particularly like either of them; one too large and one too small (which was horrific). I do really want to get one, though. I used to have a really nice leather coat, which was my father’s, and now I don’t. I can’t remember what happened to it, which really kind of upsets me, if I’m honest. I wish I still had that.
No BotLG progress today, but instead I did some work on my own homepage. I mainly use it to have a published list of links and videos I want to remember and return to; I guess it’s a web log in the oldest, grognardian definition. I updated the stylesheet a little and then wrote a little tool for adding new entries to the JSON file that populates it. And that’s it for today.
Took the cat to the vet for his yearly checkup and booster shots. He’s doing fine, and still charming around strangers. In fact, to quote the vet, “he’s so handsome he doesn’t even have to try, does he?” He’s a good boy.
When I got in, I spent a little time on BotLG — the “have a break from development at the weekend” rule has now well and truly gone out the window. Discovered that having monsters stop wandering around when the player is nearby is working out pretty well, but it does rather lead to them mobbing you if you stand still for a long time. I think I’m okay with that; it makes exploring areas infested with beasties a bit more perilous, and stopping to harvest materials is now something to actually think about. Plus, actually catching them to initiate combat is much easier, which was the primary goal of this change.
Later I did a little recreational spreadsheeting, and worked out some prices for items. I’m reasonably happy with what I came up with, but I’m sure they’ll end up being tweaked over time. Additionally, and even more experimentally, I made the amount of XP you earn for completing a gathering or crafting action related to the value of the item gained; in theory crafting higher-level and more valuable items will level you up quicker, which feels about right. I just have to get the amount of XP needed to level each time right, and make sure none of the skills feel better than others — I think hedge magic being the only source of quaffable potions is a little overpowered, and a quick look through my new spreadsheet shows mining could be a little too profitable, but we’ll see. I’m genuinely not too bothered about balancing. Old-school D&D never felt particularly balanced and (in my opinion) didn’t suffer for it. Let the players find their own routes.
The 2020 7-day roguelike challenge starts in a couple of weeks. Unfortunately, it starts right as I am resuming full-time employment, worse luck. I was considering giving it a go, with a focus on some aspect that BotLG lacks, so that I could port over anything interesting that I came up with, but I’m not sure I’ll have the time or energy for it now. We shall see.