BALLOON
ABOUT
The balloon is a two-player cooperative game that uses two bicycle pumps as Alternative Controllers in-place of traditional controllers such as a Joystick, Keyboard, Mouse etc. Two players control the ship to prevent from dying and reach the end point to complete the levels.
Tech: Unreal Engine
Genre: Alternative Controller Game, Physics-based, 3D Side Scroller
Platform: PC
Team Size: 10
SUMMARY OF CONTRIBUTIONS
Environment Obstacles: Implemented environment obstacles such as Falling Candy by applying Physics laws of force and motion, utilizing the in-built Unreal Physics.
Rest Point System: Implemented rest points to allow players to land the ship and take a breath before resuming the game. Since this game involves physical activity, this mechanic became crucial in enhancing the user experience and pushing players to complete the levels by taking short breaks at regular intervals. Allows players to resume whenever they want by pumping the balloons together (cannot resume the game alone to support cooperativeness).
Dynamic camera and vertical velocity adjustment: Dynamic detection of change in the level's height using ray tracing to adjust camera position and set the ship's vertical velocity boundaries for a smoother experience.
Mini-map: Dynamic generation of mini-map of any level and live-update of player’s position in mini-map.
UI programming: Handled all of UI programming including importing UI assets, setting up various UI scenes, integrating UI buttons with bike pump actions, and menu and level transitions.
Camera controller: Implemented a following camera but with certain vertical boundaries to ensure the camera doesn't go too below or too above that it goes out of the map. Using dynamic detection of level height, the boundaries are adjusted.
Checkpoint system to save the player's progress.
Respawn system for the player: The player respawns on the last checkpoint crossed.
Optimized the collision detection systems by adding a custom collision channel.
Resetting falling obstacles and unique collectibles upon the player's death.
Level-based scoreboard.
Co-operative team name input using scroll and burst mechanics with bike pumps.
Improved user experience by adding minor effects, such as blinking at the end of fever mode, ship drop at death, etc.
Handled all things related to GitHub for the team.
Refactored existing blueprints for performance, maintenance, and readability.
Health system for the player, which includes three lives for the player (deprecated and changed it to unlimited lives with a penalty of 100 to the score for each death).