Slingshot Demolition- Prototype

Unity / C#
Game Developer & Designer
GitHub Code

Games about physics have been popular since the days of Worms and Angry Birds, so this prototype takes the principle mechanics of those games and adds a little flair (some castles and a giant slingshot - what’s not to love?). There were a number of gameplay and programming techniques added to game, the more notable ones are discussed below.

  • Parallax Scrolling - Giving the user a sense of movement by moving the background clouds at a slower pace to the foreground, a classic gameplay technique but really adds to the sense of speed that the user gets when they fire off a ball.

  • Custom Physics - Not only have I utilised Unity’s own physics engine but have tweaked some of the values to ensure that the gameplay is fast, realistic and fun. Things like; ensuring the ball comes to rest correctly, that a relevant friction material is applied to game objects from the ball to the surface and even how the castles realistically break apart.

  • Fun Collisions - How the game objects collide with one another is especially important in a physics based game and is readily made apparent when the ball collides with the castles and the way the structs of the castles collapse upon impact, which behave as you would expect.

  • Multiple Levels - 4 different levels have been created that increase with difficulty as the castles get tougher and tougher to knock down and reach that elusive green glowing goal.

  • Centralised Game Management - An abstracted script handles the key management of the game from scores, to increasing the difficulty, to handling the generation of new game objects via the use of prefabs.

  • Smooth Animations - With the use of time based linear interpolation, when the ball is fired from the slingshot, it smoothly transitions across the screen with an appropriate level of ‘juiciness’.

  • Smart Gameplay Techniques - The use of line renders to see the ball’s previous path and the seamless ability to navigate multiple camera positions throughout the level allows the user to project where they want to go and adds to the gameplay.

  • Minimalistic UI - A simple but effective UI that shows what level the user is currently on, a method of camera navigation and the number of shots taken. Freeing the user to concentrate on the action of the game.

The prototype game was created using game programming art so as to focus on the building of the game, how it feels and expanding the design elements that I wanted to add. There are a lot of traditional programming paradigms being used; like abstraction of responsibility and singular responsibility of scripts, the code is heavily commented to show my thought process throughout development.