top of page
Swip Logo.png

SWIP

Project summary

Release: Q1 2024* (Google Play Internal Testing)

Platforms: Android

Project Length: 3 months (April 2022 - June 2022)

Team size: Solo Project

Engine: Unity

Responsibilities: Sole developer

GitHub Repository

* Explanation for this gap between development finish and release date is that at first I did not plan to release this game. Decision was made recently that it would benefit me a lot to learn how to publish an App on Google Play

· Familiarize myself with Unity Game Engine

· Learn how to develop and publish games on mobile devices

· Keep the game simple and minimize scope

  1. Game Design

  2. Main Mechanic

  3. Level Design

  4. Art & Sound

  5. Final Thoughts

Before opening Unity project for the first time I took my time to think about the game I wanted to make.

To minimize scope risk I've decided to pick something I can recreate or add some twist to an already existent idea seen in other mobile games.

Here is the the game I took inspiration from vs. Swip

 

                                                     

 

Finally I locked on one idea and in short it was something like this:

"Player needs to figure out only with one swipe of the screen how to complete the level while bouncing off blocks, avoiding obstacles and having good sense of timing at once."

gifokay
swipgif

Okay? by kamibox

Swip

Main Mechanic

At the start of developing cycle I've struggled with an idea how player should move the ball. After some brainstorming I did come up with 2 systems where:

1. Player can swipe multiple times during one level based on checkpoint system, but first of all it would collide with my initial idea of "only one swipe", second it would make game more complex to make.

2. Per level player can only swipe once and progressing trough levels is straight forward. You need to swipe on the screen and hit the target, something similar how would you aim and shoot with an slingshot. Simple swipe determines the direction of movement, making it accessible to players of all skill levels.

I wanted to make straight forward gameplay for the player and initial prototype proved system number 2 was a better match for my game idea.

How does this system work?

swipgifdrag
swipdragrelease

Drag

Release

swiptiming
swiptiming

Great thing about this system is that player can control ball speed. In level building this allowed me to put timing based levels in my game where to progress player either needs slower or faster movement of the ball.

Just like a slingshot, longer the pullback, faster movement of the ball. When playtesting I stumbled upon some major problem. If speed depends of how far player drag across the screen. What if player makes ball move too slow that it will take eternity to reach something in the game? To battle this issue and still give player the control of the speed I've added restart button which nicely fixes this issue allowing player to quickly start the level again without affecting the game flow.

swiprestart

Level Design

Main goal of the game is to reach the golden cube which is winning condition to complete the level. To achieve that player needs to figure out and calculate how to make the ball reach this golden cube with one swipe

Pretty simple concept but I made sure there are few aspects player needs to be aware of:

 

 

 

 

 

 

 

 

 

 

 

                                                                                                                                                                                                                                                                                               

                                                   

                                                             

 

swipobsctacle
swiptiming
swipprecisiongif

Obstacles

(on collision level is restarted)

Timing

(because of some blocks that can rotate, or change position game requires good timing from the player)

Precision

(player needs to drag & release in the right direction)

Get familiar with the system 

Harder Challenges 

Learn new system

(combine with previous one)

With this setup I created a scheme for learning curve which allows player to get familiar with every system and learn how to play

The further player is into the game then the player needs to figure out how to pass the level with multiple systems at once which increases difficulty from level to level

Art & Sound

When it comes to visuals I knew I was very limited and I couldn't afford to spend a lot of time on it. This wasn't the top priority in this project. End goal was to familiarize myself with the engine itself and spend more time "under the hood" than on the visual part. So I went for something simple and achievable with my current skillset and resources at the time. I've chosen to create the game out of basic shapes which proved to be handy later in the development. Because of the simple shapes I could scrap, build and come up with new levels with lighting speed. Which was a huge time saver for new solo developer like me

For player to distinct which one is neutral block, obstacle or win square I made sure to use colors we are familiar with like red that we associate with something dangerous, likely to be avoided and golden-ish where many of us assign success to

Sounds & Player Feedback

To highlight if player did something right or wrong I knew I needed to add some effects. First I toyed with sounds. I hovered through Unity Asset Store and Internet to find matching sounds effects and then later tweaked them to my liking. My pick for background music brings out the laid back and relaxing tone of the game.  As for the Player Feedback I added some shakes, glow, particles and sound effects depending on if it's positive or negative one.

 

Here is the video showcasing all Sounds & Feedbacks

Final Thoughts

Looking back on this project, got to say, I achieved the goals I set for myself when I started the project. It was like my initiation into the whole game development scene, and it really greased the wheels for me to move around Unity more freely in my next bigger project.

Choosing to keep things simple was a smart move, because I didn't have to stress about the basics of Unity when I jumped into a bigger project. Instead, I could focus on leveling up my art skills and letting my creativity run wild with game design, unshackled by my Unity knowledge.

Now, here's the one con – if I could go back and change one thing, it'd be sticking to one vision. I spent way too much time flip-flopping on game visuals, tossing around different colors, shapes, and random effects like player trails. Scrapped all of that right before finish which was too late in my opinion. Maybe I'll dig those ideas up for a future remake, who knows?

All in all, pretty happy about how this project turned out. Learned a ton, and it's the solid groundwork I needed to dive headfirst into my next game developing  adventures.

Contact me for more information

Send me an e-mail

or contact me trough  my socials

  • facebook
  • twitterx
  • linkedin
bottom of page