Stay Hydrated!

git
Entry Global Game Jam 2023
Developer Team Hydrogen
Year 2023
Role Programmer, Designer, VFX
Tech Unreal Engine 5
Platform Windows
Download Page itch.io

This was my first ever game jam that I attend on-site, and managed to finish and submit just in time.

Code

In this project, I handle all the programming in the game, including:

A fairly standard main menu preceded by a splash screen, programmed with UMG.

Cinematics

Also fairly standard cinematic playback upon starting the game, programmed with UMG and Sequencer.

Gameplay Loop

The gameplay loop consists of guiding the root to reach the pool within the move count. Before making a move, it checks if there’s still remaining moves at all, then check for barriers and existing grown roots are checked with line trace forward to the direction, and check for any kind of triggers like the pool to trigger level completion.

If the move deemed valid from aforementioned check, a “mover” actor moves to adjacent grid and changing the sprite by means of switching the flipbook index in material, thus making a move. If it moves away from the core, a root trunk actor is created where the “mover” actor was last located, and determining the sprite used by comparing last move direction to the input direction, allowing for bend trunks.

To finish a level, player must reach the pool with 0 moves left. This was done by checking the remaining moves and aforementioned trigger using the “mover” actor. The core actor also switched the sprite to a fully grown tree upon completion.

VFX

I also handle some visual effects in the game, including the fake cloud shadows, cloud borders, and the cinematic comet intro.

Mistakes

Mistakes were made that I realized after the jam: first, I didn’t managed to write the tutorial on time. This caused some confusion among players the moment it was up for showcase. I also haven’t destroyed the UI upon changing level, causing overlap on the timer box.

The latter caused some side visual effect of those found on digital displays. This could be made intentional.