Day 8.5 - Ominous silence


I (and devs in general) often claim I'll keep working on a game after the end of the contest/jam without ever doing so, but this time we mean it. See, we've blown past the seven day deadline and are still working on it!

Leading up to the deadline was a flurry of activity and we kept going past it for some hours in grim determination, neither of us admitting what had happened, and got a lot done, yet still lacking the laser focus needed to reach a release.

Although it's embarassing to say that we missed the deadline by more than a little bit, what I hate even more is releasing a game that's a trainwreck to meet a deadline, as I've done quite a few times in the past. Once you admit that a deadline is gone and not coming back, when do you release? As soon as possible regardless of state? Once it's playable? Once it's fun? We're aiming to have at least an element of fun, and  we're getting close!

Features

In the last two days things I worked on included:

-Rocks are obstructions

-Let you walk behind buildings and rocks. A dumb use of time; in hindsight should have instead removed the over-tall building templates. It only causes more problems...

-Added random choice of alternatives to my sentence-former/generator

-Added random messages for bumping into rocks. A lot of messages. I joked that we now have gameplay, because there are also (invisible) side effects...

-Improved Examine mode

-Helped implement equipment... only weapons for now

-Improved sentence-former's plurisation rules, support multiple verbs ("It swings but misses" becomes "You swing but miss")

-Drew some outlaw sprites (simple variants). Simplistic low-colour, single frame 16x16 sprites are such a breeze to draw. And yet I put in those rocks and painting textures in a stylistic contradiction.

-Made sentence-former's a/an handling more general

-Wrote a ripple effect shader for the titlescreen because I'm now on the hook for  writing shaders. (Being lazy, I personally favour omitting titlescreens to save on work.)

-NPC placement, and more templates for mapgen

-And the last thing I did, finally put in some NPC AI. Combat is very one-sided without it.

I also dealt with the folly of buildings you can walk behind with another effect, which revealed a surprise. No feature goes unpunished...

Bugs

However there were a lot of chores and sleep to catch up on, so progress has been slow for the last day. But even worse are the bugs! We've hit some horrible bugs today, some of them in Godot itself.

When Godot's error reporting and debugger work they are wonderful, when they don't, they're almost worse than no error reporting at all: they oft report misleading or nonexistent errors. Godot sure has some glitchy error reporting. (Another thing improved in Godot 4.0 apparently.) I often run the game from within Emacs because I get more error messages that way! But today it really was bad; it refused to load a code module without explanation. Restarting the editor didn't help, but making some changes and then reverting them did. Not possible!

Object initialisation fiasco redux, aka More sentence features

Another serious bug was certain types of objects only appearing at 0,0. I couldn't work out why, so I did the next best thing and made the sentence-former use pronouns like "he" instead of "the guard" in more contexts. But was surprised that humans had the "it" pronoun.

I tracked that bug down to calling the base class's Noun._init() from the derived class's Entity._init(). I didn't realise that in a very C++-like fashion this actually re-initialises instance variables to their default values (from the base class). Unexpected. Fixing that made me realise it was also the cause of the sprite position bug. No sentence-former feature goes unrewarded.

Leave a comment

Log in with itch.io to leave a comment.