top of page

FryFall

Fryfall is a 2D platformer where the player is a lobster named James Prawn who uses his mechanical claw to attach/detach from pegs and swing across the kitchen to save his fellow crustacean shrimps from the fry and escape the kitchen. The player can use James Prawn’s mechanical claw to connect to pegs and swing throughout the level while avoiding hazards and try to save as many shrimps as possible from hell’s kitchen. As a side objective players can try to speed run their way through the level without saving the shrimps.

Role

Generalist Programmer

Game Engine

Unity 2019

Platform

Android

Development Time

3 Months, 2019

Team Size

4 People (1 Programmer)

fryfall_poster.png
Download
Orange Download Icon Transparent.png
Trailer
Fryfall Trailer
Screenshots
Screenshots
UI Level Selection Script for Level Designer

A basic script where the level designers can easily reference a scene by name or index of the level and some other utility functions to reset certain specific data and switching between various levels. This also ensured that the game was tested rigorously from the menu screens from early milestones. The same script also handles storing level best times and total shrimps collected per level.

FryFall Level Selection Menu

Level Selection Menu

Level Selection Script

UI Level Selection Script for Level Designer
High Score System Scripts

The High Score Manager is a Game Object responsible for keeping track of the total shrimps collected on a level and Best Time on that level as high score records separately.

FryFall Level Selection Menu

Level Selection Menu

High Score Initialization

High Score Scripts
Mission Completion HUD

The Mission Completion HUD is placed on the Escape prefab and once the player reaches the escape hatch, the data is checked to see if any update is needed to the "Best Time" high score and the "Most Shrimps" collected on the level high score separately.

As the development progressed I realized how hard it is to make changes to the UI and the HUD components since they involve highly cohesive multiple minor scripts and making changes like scalable UI and HUD or adding in even a new functionality can prove to be very difficult.

Fryfall - Mission Completion HUD

Mission Completion HUD

Gameplay Timer Class

Mission Accomplished Script Methods

Mission Completion HUD
Multi-Direction Panning Camera Tool

Implemented a panning camera to show the level layout at the start of every level. It comes with a gizmo that helps level designers view the results in editor time as line strip.

FryFall - Camera Panning

Camera Panning at the start of the level.

Camera Panning at the start of the level.

Multi-Direction Panning Camera Tool
Checkpoint System Tool

Contrived a simple checkpoint system to make the game less punishing for the player with gizmos for better usability for the level designers.

Fryfall - Checkpoints

Player Restarting from Checkpoint on death

Checkpoints Manager and Checkpoint

Checkpoint System Tool
Pull Effect using Point Effectors

The fastest way to rapid development is use the existing tools rather than trying to reinvent the wheel. By exploring engine point effectors, an effector was placed on the "Escape Hatch" prefab to create a pulling effect and enhance the user experience and by giving the feeling as if the James Prawn was escaping the window at the end of the level.

Fryfall - Escape

Pull Effect on Level Completion

Unity Point Effectors | Fryfall - Escape

Point Effector Settings to turn it into a Physics Pull Effect

Pull Effect using Point Effectors
Post Mortem
Post Mortem

What Went Well ?

  • Became proficient with perforce (version control)  and was not afraid to take risks with it early on in my attempt to learn it and which helped the team resolve integration issues quickly in late development stage.

  • The commitment to complete the tasks on time to avoid dependency delays for other team members.

  • Collaboratively working in a team.

What Went Wrong ?

  • Expectations surrounding communication were not all met.

  • Initially, I was working more competitively rather than collaboratively but within a couple of weeks I realized that any good development requires more collaboration than competition.

  • Time estimations were off the expected mark and error corrections in those estimations did not help.

 What I Learned ?

  • Communication is the key to maintaining a healthy environment at the workplace and people have different levels of professionalism or personalism preferences in communication.

  • Growth in personal work ethic and professionalism involved completing tedious tasks by attacking them with a fun and unconventional approach.

  • Understanding the limitations of personal skill set plays a key role in estimating completion time for any particular task.

bottom of page