With ‘Transmission’ as the main theme, our entry for last year’s GGJ was a game where players would be tasked with firing arrows that’d bounce all over the map in order to deliver messages to certain targets.

While we struggled to come up with a decent concept for quite a while at the start, we eventually settled upon the idea of shooting projectiles that’d bounce against objects in order to get them somewhere, which proved to be a pretty simple and fun mechanic after some prototyping. We actually intended to create a couple more levels in order to better explore the game’s design space, but time constraints meant we had to focus on polishing the main game loop instead.

Unlike our protagonist, the team managed to plan ahead
and avoided the worst-case scenario of shipping
a buggy mess of a game this time (take that, Old Save!)

Our artist also managed to hit it out of the park with the arts-and-crafts style, and she even had the time to work on reaction shots we implemented for important game events, such as running out of arrows, successfully delivering the message, or having it be intercepted by a guard.

Art like this made what could’ve been
a pretty ‘meh’ project into something awesome

Code-wise, I had lots of fun coming up with the arrow prediction system, even though it took some tweaking before I managed to come up with a prediction that’d actually line up with the arrow’s actual path once fired. If I remember correctly, the prediction relies on the arrow’s hitbox being small enough that I could get away with just using raycasts, but I guess you could use a boxcast instead for thicker projectiles.

All in all, this definitely is one of the projects I’d love to turn into a full-fledged game someday, since it feels like it has the potential and design space to make for a fun experience to both design and play. Most of the people in the team are really busy nowadays, but who knows, maybe we’ll get around to it eventually!

Leave a Comment

Your email address will not be published. Required fields are marked *