The implementation of the omni-directional movement in the Green Zone is exceptionally smooth; it captures that zero-g space sensation perfectly. The environmental combat mechanics—specifically luring those buzzing, red-orbed enemies into lasers—create a fantastic gameplay loop. Achieving this level of polish and enemy variety in just one month is a serious achievement. Memorable work!
Play game
Undulo's itch.io pageResults
| Criteria | Rank | Score* | Raw Score |
| Graphics | #7 | 4.281 | 4.281 |
| Overall | #17 | 3.875 | 3.875 |
| Gameplay | #26 | 3.688 | 3.688 |
| Innovation | #31 | 3.844 | 3.844 |
| Audio | #35 | 3.656 | 3.656 |
| Theme interpretation | #38 | 3.938 | 3.938 |
Ranked from 32 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.
GitHub repository URL
https://github.com/Foxy-Trot-Games/undulo-game
Game description
Undulo is a pixel platformer created for the GitHub Game Jam in November 2025. Play as an adorable fox with a pulse gun! Weave through hazards and push enemies to their deaths as you wander the abandoned alien spaceship you wake up in.
Explore the ship, finding hidden sublevels--collecting ammo and other upgrades as you go--and gathering runes on each level to reach 100%. Make your way to the reactor to stop it exploding.
Theme interpretation
The player must use a pulse gun that shoots waves of energy at enemies. The gun is also used to traverse the level by shooting to propel in the opposite direction.
A gravity wave is also constantly being emitted, pushing the player around the level, and providing additional platforming challenges.
Comments
This is an outstanding entry, well done. I think with some polish and expansion, perhaps brining more of the emergent storytelling to the front… this could be a decent steam release. Let me start with the best parts first.
First of all I think the pixel art is outstanding, the quality level of the art assets and attention to detail on things like the shader effects is quite exceptional. My only criticism in the graphics department is that the important things (ammo recharge, upgrades etc) aren’t distinct enough from background details.
Being terrible at art myself I’m not so sure what the fix is. But in places like this:
… the high level of detail matched or exceeded the level of detail of the upgrade stones / ammo refills. Later on in the game this was nowhere near as confusing, once i knew what i was looking for, but early on it was a little bit disorienting.
Overall though i was blown away by the level of artistic detail on display. Unreal that you made something this good looking in a jam timespan.
Next, I really appreciated the innovation on display in this entry.
In terms of the idea “fox with a gun” is pretty cool already, but i also liked the idea that the fox is stuck in some kind of futuristic facility is also fascinating. Pushed around by waves of causation beyond their understanding, with a vague idea that they need to confront and stop the source of the ever pulsating gravity wave… Loved it.
As a game mechanic, “shooting to move” is not as original in this jam, but I think you’ve done something interesting with it, with a set number of bullets and mechanisms to reset and refill you’ve managed to create some interesting platforming physics.
I didn’t like the delay refill when hitting the ground. I would frequently attempt a high velocity maneuver only to plummet to my death when i’d forgotten I needed to recharge my bullets. Getting the upgrades severely reduced this pain point over time, and when i noticed the refill noise it was easier to train myself. But I feel early on it stopped me from “high octane” speed running some parts in a fluid way.
My favourite innovation was the periodic wave. I like the idea of it from a storytelling / ambient perspective, and I like the usage in platforming. Being able to ride the wave with a precision jump felt great, and there were multiple shortcuts available once i understood a layout and could time a perfect wave ride upwards. It also added lots of timing challenge to some otherwise straight forward puzzles.
Finally, I should specially mention the audio / sound engineering. I think there was a lot of subtlety and ambience to the experience which added a lot to the vibe of the game, I also didn’t notice anything grating or poorly mixed. The sound effects felt very polished and professional. Great work!
Next let me address some issues i found with the game. I think the biggest of which is the aerial control feeling very floaty. Perfect platforming physics are ridiculously difficult to get right if i understand correctly (haven’t written one myself since being a kid, but i’ve heard horror stories), and overall for this jam your’s is one of the best controlled that I played.
However I found it frequently very difficult to land my fox in the precise position i needed it to go in, which i think was due to momentum being conserved while moving in the air.
Normally as the source of being airborne is a jump button followed by navigating in the air with arrow keys - the momentum being instantly halted by an opposite arrow makes for smooth navigation…
However in this game that would completely screw up the wave manipulation D:. So I’m not sure how you could add more precision to fix this. Perhaps things like “coyote time” or a tad more acceleration on the aerial movement would give it a bit more crispness, but it’s very hard to say exactly.
Likewise, the green / orange / grey areas were fascinating idea, but slightly let down by their inconsistent behaviour. This was most notable with the grey “launch pad” setups. Where I found that you needed to carefully position your fox right at the edge of the grey square and ensure you ride the fox the entire way along it’s length in order to get the full boost.
Running further into it would negatively impact the trajectory direction, and shooting downwards while inside it would counter-intuitively cause you to gain less total speed when exiting because you spent less time being accelerated within it.
If you decide to ever revisit this project and produce a full release, I think tightening up the physics and platforming should be #1 on the priority list.
Finally, I must confess I didn’t make it to the end. I got stuck here, and couldn’t figure out how to make the jump across to the other side:

The difficulty curve was great for me, and I’m terrible at these sorts of games :( but after many attempts i couldn’t figure out how to get this jump, and the checkpoint was some distance back, requiring a fair effort between each attempt. So eventually I gave up.
I’ll never know if my fox manages to put a stop to the wave or not :(
Overall this was an extremely solid entry, with a ton of polish and love put into it. Very impressive, well done! Continue to grow and challenge yourself!
Thank you for the feedback!
The controls are probably the thing we got the most feedback on, and overall I wish we had more time to tweak it. I had to add a lot of edge cases to get it to work correctly and there are a ton more that needed to be addressed. The biggest issue was maintaining momentum when you enter a zone but not maintaining it in other parts of the game which added a lot of player states that turned the code into a big hacky mess.
I appreciate that you noticed some of the finer nuance to the mechanics to the game, it took a bit of work to get the mechanics to work together ‘smoothly’ and a lot of players gloss over it.
The booster zones also where just reverse gravity zones, you are correct that you have to stay in them for as long as possible in order to get the full boost. I realize that in other games with boosters they just add one single impulse to the players velocity which fixes this issue.
Making the game made me realize how hard metroidvanias plus platformers are to balance. Give the player too much and it just trivializes some platforming sections. We had a ton of cool upgrades but during testing players would miss them, which made the following sections harder. We had to limit just how much the player could get upgraded overall because of this.
Again thank you for the great detailed feedback!
Dang, I missed few...

Really fun! A super good amount of content too with a pretty good difficulty curve. Some of the lengthier sections could have used more checkpoints but it wasn't that bad really.
The biggest level design flaw in my opinion was near the end the branching path where you're punished by having to backtrack and repeat the whole thing if you choose wrong. Not fun. Guess which path I chose first...
I kept hating the design choice of that random wave for pretty much the whole play time. Especially on that flappy bird challenge room. It just felt mean to have a "random" thing come mess up your game every now and then in an already very tight flying section. And other times you could kinda abuse it to reach higher spots and so on but it being on a pretty lengthy delay made it that you'd have to wait around for it. And just waiting is never really that fun. But then seeing the final boss, it kinda made it worth it. Don't really like the wave as a design choice but tying it in to the story made it excusable and yeah, that was the theme.
Also didn't really like how you needed to backtrack from the challenge rooms. I kept thinking I should try not grabbing the checkpoint in the end there to just death teleport back but never got around to actually try it. I think it would make more sense it the run backwards was also a challenge with some additional hurdles but often it was just the same but a lot easier. Only the flappy bird room was the only challenging bit but even that without the need to collect the runes wasn't that bad.
On that same challenge room, the controls became a bit of an issue too. Quite often you had to dip very low to not hit the spikes when jumping up but being so low, you kidna didn't have enough mouse room to properly be beneath the character. I guess there was room though but being in the midst of action, there wasn't quite enough time to focus on pixel precise mouse cursor placement.
Good looking pixel art! There were few times it got a bit confusing to figure out what is an actual platform and what is background. I think you even used some of the same assets for both. At least the orangeish pipe was sometimes walkable and other times just on background.
The spike and enemy hitboxes felt a bit too punishing. Would feel a lot better to be able to graze the spikes and survive. It's one of those things that just makes it feel better when the scales are tipped a bit on behalf of the player. That way when you get hit and fail, you know for sure it was on you and not the game just being unfair.
And then it's the opposite for collecting the runes. Felt like you could even go through them sometimes and only the very center of the player spite did the collection. Like in this section I managed to not get the rune but hitting the spikes right under it three times before actually succeeding.

Anyways, good job, fun game! 👍
Thank you for the feedback! Yeah I’m not really happy with some of the level design choices that I added in the game, you can pretty much tell exactly where and when we ran out of time and rushed to finish (the last level). I also wanted to put in the key/door mechanic somewhere since we spent time implementing it but that spot wasn’t the best place for it and we have gotten a bunch of feedback on it.
The wave initially was only going to exist in just one level but we decided to expand it to the entire game to fit better with the theme but yeah it needs tweaking for some of the levels where it’s just an annoyance. We had an idea for a level where you only get the wave to traverse but it was too frustrating waiting during play testing and if I sped up the wave it would go to fast and couldn’t be used for traversal.
For a final challenge we were going to have the player run all the way back to the beginning in an escape sequence and wanted the existing challenge levels to prepare for that. It wasn’t that interesting in play testing so it was scraped.
As for the spikes the collision is definitely an issue because it just checks if the player enters the tile to kill, which isn’t very forgiving. Initially it was more precise with each spike having it’s own collision box and processing, but the game started lagging with the hundreds of spikes that could exist on screen so I moved the check to be on the player position instead.
I’m most proud of the boss level and I really like how it turned out overall so I’m glad you liked it!
Yeah, learning to let go of things you've already sunk time into making. Good thing that you managed to scrap some features that didn't work though. The key system could have been used on the challenge roomsto get a still use out of making the system. The key could replace on of the trickier nearby runes so you'd still get some use out of the system and wouldn't need too much forced backtracking. Oh and forgot to mention that one of my tries on the boss level, I actually found and got a key there which was a bit confusing and probably made it harder for me to figure out what to do. The real solution was easier than the key being there implied.
I'm not all that familiar with tile systems (especially on Godot which I pretty much just got into) but I'm pretty sure you can do composite colliders so that it'll bake them in to a single polygon instead. And of course you could always just do it manually too. Have the spike tiles be purely visual only and then add invisible killbox areas on top of them. More work of course to do it this way.
Yeah the escape sequence would have needed something more than just to go backwards the exact same thing. Quite a lot of the levels were not designed to be bi-directional. And they would even need to be harder on the way back, I think it would be pretty much the opposite and it would be just a smooth run back. Same kinda goes for repeating the same thing in a mini form on the challenge rooms. The rooms could maybe start caving in, thus adding more dangerous obstacles to make the run back trickier.
Oh yeah and the challenge room rewards started gotting stale after a few of them as it was always the same time reduction which getting diminishing returns too. It was just the completionist part of my brain compelling me to go finish them even if there was no much use. And on that same vein, it would have been nice to see the rune counts a bit better on UI. Often you couldn't really focus on the pickup number as it was in the middle of some tough platforming so it could have used a permanent place on UI. It should have also shown the total amount up to the end of that level (including the challenge rooms) so that you'd know that you're still missing some before exiting. Still annoyed about those missing five.
Talking about the rune counter I agree it would have been nice to have as a UI element in regular play, though we did have the total room amount and how many you had within the pause menu screen, it wasn't very intuitive to find. That's the only way I could make sure I found them all when I was doing my last playthrough of it. I also didn't use a mouse, just the arrow keys. I wonder how much that affects the difficulty of making precise jumps.
We had planned on different upgrades too and showing them as UI elements as well, but didn't have enough time to implement. We also had some more levels and mechanics like spinning lasers (also fire, electricity, and irradiated water, and of course more enemy types) that we didn't get to add, and that could have been something that turned on if we wanted to keep the backtracking. I do really like the idea of the hallways crumbling and maybe having a more open layout for levels and the map in general so that traveling around isn't so unidirectional if we ever revisit this game again. Something more along the lines of Rainworld maybe.
Side note, we didn't really optimize for mobile, but it is possible to play on it. The only problem is that you don't have regular movement, only the jumps, but I do think it'd be a really interesting challenge to try and beat the game in a Broken Legs Run or something. Definitely Rage inducing. It's hard just getting the first pulse lol.
This. Is. Just. Awesome!!!
The visuals, the sound design, the fresh touch on platforming mechanics, the atmosphere - everything! 10/10 guys, good job!
Speaking of cons, I only have to say something about air movement control. If you wanted to add rage-game elements you've definitely succeeded. Because I hate it 😀 God, I failed so many times just because it's impossible to fully kill your horizontal speed while mid-air... I've given up on getting all of the collectibles by the end of the game because of this. But, it's not necessarily a bad thing. It's just definitely not my thing, that's all.
Other than that great entry. This is a second game I give full 5-stars ratings
Thank you for the feedback!
Yeah I spent a lot of time trying to get the controls to feel good. The main issue is that we decided to support both mouse and keyboard earlier on and this was the best compromise we could come up with. One solution I tried was to completely kill horizontal movement if you pulsed in the opposite direction but it made it feel more clunky. I definitely have more respect for smooth feeling controls in other platformers now!
I actually managed to get all the runes in a playthrough. One of the sublevels near the end was definitely the most difficult. Crisp Lad calls it the flappy bird level lol. There is actually a way to have more fine control in midair, and I found it in that level actually. If you're pressing w while doing a or d, you travel less horizontally than if you're not pressing it. I really think that's the only way I was able to beat that particular level. You get a lot more fine control if you're pressing it, and a lot more distance if you're not, further jumps and all. It kinda felt like a hidden mechanic to movement like you can get in Rainworld when I discovered it, but it wasn't something we planned.
Ohhh, I love this. In our first Steam game we've actually discovered a "broken" jump if you press buttons in a particular order. But we decided to keep it and let players discover it.
Again I'm not saying it's a bad thing, just saying how I felt while playing, haha 😀 I think I just wasn't in a challenge mood
Yeah there is dampening to horizontal movement but only when you press A/D. The reason for this is because I didn’t want to dampen movement after you are launched from a gravity zone. Looking back I should have added a “launched from grav zone” player state to account for this, but it was too late in the games development to go back and refactor and the player code was already turning into a hacky mess anyway. It’s something I’d like to go back and fix if we were to do a full release of the game.
It would break using the booster zones then, you would launch and then immediately slow down instead of maintaining momentum.
One idea I had was to add a flag that turns off momentum when you leave a booster zone which reverts when you touch the ground or pulse. I’ve been trying to find other games that cleanly solves this issue but as far as I can tell they don’t really use gravity to propel the player but use a single force impulse.
Cool graphics and mechanics. Movement while jumping is little senstive for me, but in generall it's nice. Also, runes can often be overlooked, they blend in too much with the overall background of the game
Amazing! Lots of polish across all areas. Really, everything was excellent, but I'll specifically call out the level design. Innovative and intuitive, and great base difficulty with optional challenges.
As a minor point of feedback, I wasn't able to finish the game. I got stuck in one area where there was a drop that was telegraphed by runes.. that didn't respawn... so it become memorization =( That didn't take much away from my overall enjoyment, though!
Pretty original and pretty nice idea, i love ur approach and ur art
Awesome game I have ever played before! I even want to download it so that I can still play without an internet connection.
I love its art very much, it is serene and poignant. As an Asian, I seem to have keenly discovered its Eastern aesthetic elements. (hopefully the art style does contain Eastern aesthetics)
I will recommend this game to my friend!
This game was awesome!
One cool avenue I could see it going is object manipulation. Once my ground recharge got somewhat high I could spam clicks to throw enemies in the air. would be cool to have puzzles where you have to manipulate objects in the air to place them on pressure pads to unlock doors or something. It seems like it would be just challenging enough that people will want to get good at it.
Really nice submission!
Cool game! The first thought I had was that the game was really pretty, and later on I was also impressed with the gameplay. Jumping around with the pulse gun is lots of fun.
It could be just me but I feel like I'm seeing some influence from Celeste and Animal Well, which is very cool.
It was also impressive to see how many different mechanics were added to the game, as they all felt nice. I also liked the challenge rooms.
I have two small gripes with the game - the first is that the recurring wave, while mysterious, doesn't really add much to the game (at least at the start) and in general feels disconnected from the rest of the game design. This is a shame because obviously care and effort went into it, with the dedicated UI and graphics and SFX, but it just feels disconnected.
The second gripe is that at times the level design feels very "loose". Some parts feel like they have lots of intentionality in them and a specific platforming challenge you need to perform, while others feel more like some enemies and some collectibles were thrown in.
Overall, a great game and one I think worth iterating on even further. Good job!
Thanks for the feedback. We initially had the wave only on one level but decided to add it to every level to keep with the game jam theme. It also led nicely into a small narrative of finding the source. We had ideas for levels that were specifically for using just the wave to platform but it proved to be too difficult during playtesting and we ran out of time to further refine it.
Level design was one of the last things to get done during the jam, in the future I plan to prioritize it earlier.
Very cool game! well done everyone. The tutorial really efficient and smoothly showed most of the features. my brain instantly connected these "push-pull" mechanics to the colors. So when the "real" game started and the zones were introduced 1 by 1. It was easy to know what to do (without knowing what to do) if that makes sense. Also nice with the "optional challenge" room. this always makes a gamer happy. "ofc I can do that"





Leave a comment
Log in with itch.io to leave a comment.