so my one-player game jam finished yesterday, and overall i think it was a success. here’s my roundup of what i learned.
before i started i had a few specific goals in mind. i wanted to refine some of the movement mechanics, and specifically include double-jumping, floating, and sliding.
double-jumping was really easy, as i just looked up a tutorial and copied the blueprint directly.
floating has proved a little more difficult, partially because i wasn’t sure what to search for. (so far in my experience game design mostly seems to involve googling ‘unreal engine double jump blueprint’ etc.) the specific ability i want to include is what i’d call floating, but other people seem to refer to it as a ‘hover jump’ or some other such thing. the best example i can think of is the ‘flutter jump‘ in various Mario games.
this is what i’ve figured out so far but it’s not perfect for a number of reasons.
firstly, as of now the ability requires pressing its own key, rather than holding down the jump button. figuring out that functionality is gonna take more work because it will also require tweaking the double-jump due to how the second ‘jump’ works. so for the time being, i just settled on using a separate button because i’m more interested in fleshing things out quickly.
the real problem is that i need to work out how to limit the use of the ability so that the player can only float once per jump, because as-is you can float indefinitely as long as you press and release Q quickly enough. The GIFs below should illustrate what I mean.
floating the way i want it to work:
there’s also a problem with how the movement change translates the character’s velocity/direction, because if the float button is pressed on the way up Popojojo will float upwards rather than begin floating once the maximum height of the jump has been reached. so, still a lot of work to do on the floating mechanic, but i’m at least glad that i’m beginning to understand how blueprints translate into practice.
i never even got around to try working on a sliding mechanic, but i did change the landscape from 2D sprites to a proper 3D landscape, which made everything more slippery anyways. it seems like the next step for this is going to be working with the friction setting and figuring out how to use crouching/pressing down as a slide button. right now when you press S Popojojo goes into a crouch but it’s just an animation and doesn’t actually change anything about the movement speed or friction.
i had some stretch goals for myself, including adding music and sound, a menu system, and a new landscape. i didn’t do anything related to making menus (i suspect that’s going to be a whole thing) but i did add some ambient music and sounds, though it’s not perfect. the music seems to stop when Popojojo goes underwater, which i’ll have to figure out.
here’s a little video that includes the ambient music, some bird sounds, and a jump sound.
maybe the thing i’m most excited about is that i learned how to make a river! i’ve consciously tried to pace how many different parts of the engine i learn so i don’t get overwhelmed or burnt out, which means that until now i’ve avoided physics and post processing volumes because when i knew nothing about them they seemed really complicated. turns out they’re not!
i added water to the world using this tutorial, which uses the water material from this example project. there are a ton of details about how the material works that i just decided to skip by importing the complete material directly, so as of now the water itself looks a little wonky because the waves are moving way too fast.
i’m sure the underwater effect (that’s the post processing part) can use some work because i sort of just guessed at what visual changes might seem underwater-y, but that’s not a big deal. at the moment the thing i’m more interested in working out is exiting the water, because right now the player basically only has one jump available. like, when you float to the top, you can only jump out of the water as long as you haven’t already pressed the jump key, because the whole time you’re swimming the game treats it as if you’re still jumping/haven’t landed. so, that’s a thing i’ll have to figure out.
i probably won’t work much on Popojojo in the next couple of weeks because i need to get the first three books of Ages of Decay online, but this has been super fun and i’m excited for the next time i work on it because i’ll have much more specific goals in mind.
(also, i learned how to make gifs, which is its own neat fun thing)