Devlog: Prairie reprogramming
Added 2025-08-17 07:42:55 +0000 UTCThere is a technique I would like to start experimenting on. It might be tough, as it's a tool I don't have enough experience with, but if I manage to replicate my usual production process, it might help speed up some parts of the development of the game and make the final product more faithful to my personal style - as well as let me make stuff some of you have been requesting for quite a while. No promises yet, I'm just going to check if I can do it. I'll keep you posted.
Aug 10
All puzzle models were re-exported to Godot, surprisingly without any issues. I miscalculated the rotations of the maze and had to adjust the model a little, and for some reason the UV coordinates of the lake behind the hill refuse to export correctly, but other than that, it's functional. I still have to figure out how to detect when the player has jumped off the level.

Sheerk Prairie level in the Godot editor
Aug 12
As I explored the level in-game, I detected several things to fix:
The ramp of the maze reacted to Ternera's attacks even from above, which allowed the player to enter from the exit. I fixed it by only allowing it to react if the player is below ground. The maze also had a bit of polygon overlaying near the exit of the midway tunnel. I thought it would be an easy fix, but because the whole maze is made of vertically symmetrical parts, fixing the tunnel required adjusting the top too. A bit weird, but it works.
The swamp requires that the player can't jump over the water, I'll see if I can adjust the auto-jump mechanic so I don't have to make the ground there sticky for no reason. The swamp also has a few underwater paths that are supposed to be barely visible - they currently just aren't visible at all. I must adjust the fluid shader.
I forgot to disable the level collider when entering the sinkhole, so Ternera just floats above the entrance, unable to go down. Very easy fix. I planned using a sphere collider for the guardrail, but it messes up the camera, so I modeled an ad hoc one. It's more expensive, but we can afford it.
The ruins area works perfectly, but the textures were slightly misaligned near the breaking point of the tallest pillar. I know I shouldn't bother with those details this early in the development, but I just want it to look nice. Surprisingly, I found that it's impossible to yeet yourself off the level from the top of the ruins, the boundary collider is just barely out of reach. From the slide, however, yes, jumping off the level is easy and expected.
The slide isn't functional yet, as there are objects that the player must break there. Making them respond to attacks is easy, but animating them breaking apart isn't. I'll have to find a way to display that. Also, falling off the slide still doesn't deactivate the level collider (which is currently an infinite plane at Y = 0), so Ternera just walks on top of the lake if she jumps off the hill.
The texture of the next level, as seen from the prairie, looked off, so I got the UV coordinates fixed. I still have no idea how to check if the player has exited the level boundary, but I'll figure something out.
Aug 13
I solved the level boundary issue in the simplest way: I replaced the infinite plane collider with a flat polygon covering only the areas where the player is allowed to stand. It's a lot more expensive than just one plane, of course, but it's simple enough and it does the trick.
The movement code for the push blocks was wrong, mostly because of my obsession with saving as much memory as possible: the target position included both horizontal and vertical movement, but those had to be applied separately. It's fixed now - the block first slides off the edge, then falls.
The climbing mechanic now also takes into account non-level structures (like push blocks) when deciding if a ledge is safe to stand on, and I've made the jumping distance proportional to how far the ground is, so Ternera doesn't yeet herself off a 2" curb. Sadly, that isn't enough when the player can just attack in mid-air and reach platforms that should be out of reach.
I removed the extra height mid-jump attacks give, but I forgot something: ramming jumps. The only way to make the swamp puzzle work is to specifically remove the ability to jump inside it. I'm sorry, little one...
Oh well. Next task was adding breakable props to the slide puzzle. I needed them to be breakable, but the generic breakable block wouldn't cut it. I needed a properly explosive destruction animation. I researched how SM64 and LoZ:OoT did it and decided to just make an animation that I can attach to every large breakable object.
Rock explosion animation
With that and one very simple ad hoc push block, the slide puzzle is complete. Once the swamp texture is fixed, I can start programming the AI of the sheerks.
Aug 14
The swamp water shader was really easy to fix. I simply squared the alpha channel and now the underwater path is visible enough to walk safely, but the player still needs to look closely not to fall off. I confirmed that, despite this change, water still looks gorgeous in previous levels.
Fluid shader with squared alpha channel