Thank you so much for playing! I really appreciate it ^-^
Yes, the level is continuously generated every time you take 8 steps upward (which is really the world shifting down). I have a list of ~37 8x8 PNG image files (frames of a sprite in GM) that I drew out a bunch of sample levels in. These images make up the map chunks which are laid down one-by-one as the game plays in a random order (meaning they can repeat a bunch if RNGesus wishes it). I read the RGB values of each pixel to determine the game objects that should be spawned, though there's also another layer of randomness, flipping the levels sideways 50% of the time, making presents less likely to spawn, and every tile has a 1% chance to randomly not be placed to add a bit more variety. The patterns are definitely recognizable and the it's not a smart system, doesn't react like an AI Director at all, but it's quick and cheap. Makes it so the game loads very fast even on web and stays at a high FPS, at least on my machine. It's a really simple process, only about 20 lines of very readable code.
And thank you so much! I think it came out fairly well. It's a silly story, but I like silly things.
And yes, I made all the music with FL Studio during the 3 hours allotted for music creation for the jam, and during that time I also threw together the SFX using sfxr (the more modern successor being bfxr).