Click here to play the game yourself!

Inspiration

We first wanted to incorporate shells someway into our ShellHacks game! So after deliberating for a while, we agreed that a snail would be a fun shell-based protagonist to have! And soon after, one of us proposed calling the game "Snail Mail", and the rest is history.

What it does

Snail Mail is a side-scrolling bullet game in which you play as a snail delivering mail to a sand castle. Unfortunately, a Giant Pirate Crab wants to steal that mail, and will chase you across the beach for it! It's a shell-to-shell race as you head for the castle while the crab tries to knock you out.

In addition to the crab's lasers and projectiles, also be weary of the rock, seaweed, and bucket obstacles! The rocks damage you, the kelp slows you, and the buckets are in your way! You only have 3 lives, so being at the wrong place in the wrong time is costly! However, you can hide in your shell to become invulnerable, however you won't be able to move for the duration.

How we built it

We coded the game in C# using the Unity game engine, and used Aseprite for the art.

Challenges we ran into

One challenge we ran into was the side-scrolling mechanic. This was our first time making a side-scroller, so there was a lot of learning taking place! Our first approach was to have a pre-built map, and have the camera move at a fixed velocity. But that didn't seem very fun. Our second approach, was to keep the camera position fixed, but have the environment move right to left. That way, it was easy to restrict the bounds of the snail too. Then came the problem of, if the map is constantly moving from right to left, how do we make the obstacles move with the same velocity? And how about if the snail is idle, does it also move with the map's velocity? By making the obstacles children of the map, and referencing the map's speed in the snail's movement script, we were able to give the illusion that the snail is staying in place and the camera is moving, when really it's the other way around!

Accomplishments that we're proud of

  1. We are very proud of the vignette effect that occurs upon hiding in your shell! At first, there was no vignette, and something just felt missing. Then, after implementing it, the vignette just appeared too suddenly when you hid. So after some tinkering, we were able to use linear interpolation to modify the smoothness of the vignette effect, which results in that smooth grow/shrink effect.

  2. We are also proud of the crab's attacks! Designing these attacks wasn't an easy feat, and after some heavy thought, we made a very efficient pipeline to customize crab attacks! This pipeline reduced the time spent on attack creation by over 50%.

What we learned

We learned the fundamentals of making a side-scroller and bullet-frenzy game! Now, the time it'll take to implement the side-scrolling mechanic will be a fraction of what it was when developing Snail Mail. And the same applies to enemy attack creation!

Built With

Share this project:

Updates