Howdy, Kinoko fans!

Now we’ve come to the end of a winter that felt like it’d never end, spring is finally here. We’ve entered daylight savings time at last, and already my mood’s improving drastically. It’s been a tough few months, but I think it’s safe to say that we’re over the worst of it now, and we’re ready to go on making sure that 2024 – for Kinoko and the game at least – is our most productive and successful year yet.

Once again, I’ve left the monthly round-up until the very last possible moment, and so I haven’t had a chance to think of a theme for this one. Like last month, I’m just going to take this as an opportunity to read back over all my diary entries for the month and see what we accomplished in March!

Arguably, the biggest new development this month has been the addition of saving and loading. Now I’m well aware that I had saving and loading implemented for the first time more than a year ago, but that was for the old Unity build. We scrapped the Unity build in September 2023, taking with us everything we’d learned up to that point, and started afresh in the Unity build. Ever since then, we’ve focused mainly on the actual platforming elements of our platforming game, in addition to just generally making our Godot build better than our Unity one ever was, and so saving and loading were never a priority – until now.

Since our game is intended to be a form of metroidvania, saving and loading are pretty much crucial once we get past developing the first couple of levels. There was a fair bit of research involved in setting it all up. For the Unity build, when I was less confident a developer, I followed a tutorial. However, with Godot tutorials being more difficult to come across (particularly for developers using C# over GDScript, as I do), I didn’t have a lot of choice but to write saving and loading scratch. It’s a decent system we’ve ended up with, lacking in some areas though it may be, and it’s something I can build on.

It works precisely as you’d expect. The player gets four save slots (though we could offer more) and they can be freely started, overwritten and – as of today – deleted. They can save the game directly from the main menu, and (although we haven’t yet implemented it) we intend to autosave at regular intervals too. We have considered whether or not it’s worth breaking the established formula and doing something different, but honestly I don’t think we will. What would be the point?

Of course, that’s far from the only thing we accomplished in March! Behind the scenes, Chelsey and I have both been hard at work extending Kinoko’s platforming capabilities. I’d got to a point where I was feeling a bit guilty about spending so much time on them, but then I reminded myself that this is a platforming game, and so there’s nothing more important than getting these things right!

We’ve introduced the ability for Kinoko to walk now, in addition to running and dashing, so that’s three speeds he can move at now, and – despite briefly considering the addition of an energy bar – we’ve decided not to put any limitations on dashing, giving the player more choice in terms of speed versus control. Dashing has been reworked slightly, particularly in regards to controls and the resultant skidding, balancing the benefit of increased speed with the slight drawback of trickier handling. You can also shoot whilst walking, but not whilst dashing. Chelsey’s already produced a great new animation for dashing, and she’s almost done with the new walking animation too.

There are other new things we’ve added this month too in terms of Kinoko himself. For instance, it’s possible to shoot things now which used to require running into or hitting with a melee attack, such as meteorites (though we’re looking at replacing those – more on that shortly). We’ve also added the ability for Kinoko to grab onto a ledge when jumping, for those circumstances when he can’t quite jump high or far enough. Once hanging onto a ledge, it’s then possible to either climb up or fall back down.

Something else I’ve begun developing is the player abilities system. I’ve only implemented the very basics of this so far – mainly determining whether different moves and abilities are enabled or disabled – but we have lots of ideas for this, including the addition of a technology shop and even a possible skill tree for character abilities. For the time being, I’ve taken away Kinoko’s raygun as well as his ability to fly, since neither of those will be available from the very beginning of the game. (This also forces me to focus on improving Kinoko’s other platforming moves and the much-neglected melee attack.)

In addition to all of that, I also took an hour to redesign Kinoko’s bullets. I’d got a bit sick of seeing the dull white circle. Chelsey designed these bullets a while ago as a piece of concept art (seen below), and since she’s busy with character animations I just went ahead and ripped the bullet straight from there! (I’ve no doubt she’ll do a far better job when she has the time.)

Now then, what else? What else? Oh, I suppose I didn’t mention earlier that, in addition to the game now being able to save and load player progress, player preferences are now also stored and recalled. Think our music’s too loud, or don’t like our sound effects? Now you can change your settings in-game, and the game will remember your preferences. We’ve added a few new preferences into the mix, too, such as the ability to hide starsprites if you feel like they’re a distraction or get in the way (whilst still enjoying the benefits of having them, of course).

Speaking of starsprites, we’ve gone ahead and added four new ones into the mix. In addition to the classic yellow, blue, red and white, we’ve now added orange (a mainstay in Chelsey’s art, so really they should’ve been implemented from the start) as well as pink, green and purple starsprites. You may recall from a much older blog post of ours that starsprite colours make a big difference, because each variety of starsprite (other than the common yellow) provides the player with a different passive blessing. We’ve thought of passive effects for most of them now, so hopefully we’ll have more to say about these new colours and what they mean for the game soon!

We’ve also been thinking about currency. If you’ve watched any of our development videos thus far, you’ll have seen the multicoloured floating stars that Kinoko’s able to collect on his travels – we’ve been calling them ‘starbits’, in honour of Super Mario Galaxy – but the truth is that they haven’t actually done anything until now. In fact, they still don’t do anything – but we’ve been thinking about them! They’re no longer found randomly floating around the world, and I’ve removed the random boxes of them that I implemented for testing. They’re exclusively found from killing enemies now, and in terms of how they’re used, we think they’ll most likely be used for buying new technology and upgrades from Starlight City, after completion of the Fungaia chapter.

What’s Starlight City, you say? Well hopefully we’ll have loads more to say about that in future updates, but I believe we’ve alluded to the inclusion of an outer space ‘hub area’ before, if not here in our blog then certainly on our social media. In short, Starlight City is planned to be a hub for unlocking new technology at Melodia’s Workshop, acquiring divine new skills at the shrines, purchasing dashing new outfits from Madam Daz-zell (another new creation!) at her famous boutique, Luna Isle, and – most importantly – chilling out at Kinoko’s favourite haunt in the entire Milky Way Galaxy: the Star Lounge!

Anyway, that about covers the headlines for this month. I suppose, if you’re at all familiar with software development, you may be relieved to hear that I finally bothered to add our game to version control, so I’m no longer risking months of development going down the toilet if my computer explodes. I’ve also implemented Discord rich presence. I know it’s entirely too early to be worried about trivial things like that – but it sure does make me happy seeing myself as playing ‘Kinoko and the Cult of Galaxy’ in the users list!

With saving and loading out of the way, at least for now, I intend to go into April continuing to develop and improve Kinoko’s core platforming abilities, before hopefully moving on to melee combat and the improvement and expansion of enemies – probably the most underdeveloped area of our game thus far, and yet arguably one of the most critical. And whilst I do all this, Chelsey will, as ever, be focusing her energy on sprites, animations, levels, and the production of more concept art.

And with that out of the way, that’s me finished for another month.

Until next time, enjoy spring (or whichever season you’re in), and remember to smile. Life’s too short for frowning!