Skip to content

eggwad501/Orbscape

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Application Name: Orbscape

Group Members: Nhat Tran, Nicholas Ensey, Pranav Srinivasan, Ronghua Wang

General Description: Our app is a game where the player controls a ball, utilizing the phone’s gyroscope controls, to complete mazes.

Game Mechanics:

  • Player tilts and rotates their phone, rotating the maze, the ball moves along the maze as gravity pulls it down.
  • Three different maze levels that the player can pick from, each varying in difficulty.
  • The goal of the game is to complete the maze as fast as possible before the timer ends.
  • Player can collect stars, our game’s currency, along the way.
  • If the player completes the game, they will keep the collected stars, otherwise, they will lose them.
  • The player will have completed the level upon reaching the exit.

Levels:

  • Players are more likely to keep the stars on easier runs, but can only collect a limited amount of stars.
  • Players are less likely to keep the stars on harder runs, but can earn so much more stars in one run.

Customization:

  • Collected stars can then be used to unlock various customization options.
  • This includes purchasing cosmetic effects for the ball like skins and sound effects, and for the maze, such as the background gradient.

Dependencies:

  • iOS above 17.5+
  • Swift 5
  • Xcode 15.4

Special Instructions:

  • iPhone models above 4+ (an iPhone with Gyroscope sensor)
  • Must be played on a phyical iPhone and not a simulator
  • Open Orbscape.xcodeproj from the main folder
Feature Description Contribution
Design Original design of app structure 25% Pranav, 25% Nhat, 25% Ronghua, 25% Nick
Presentation/Documentation Presentation about app and demo 25% Pranav, 25% Nhat, 25% Ronghua, 25% Nick
Core Data End to end core data. Saves selected and purchasable items and its statuses, settings, star counts, and optional functionality for resetting core data 100% Pranav
Maze Generator Maze generation for walls and stars, entrance and exit holes, and its optimization 100% Nhat
Collision Handling collision between ball, walls, and stars 100% Nhat
Sounds & Music Integrated sound effects on collision with stars using SKAction. Integrated background music across all views using AVFAudio. 100% Nick
Timer Created countdown timer that updates the Gameplay UI and EndGameVC and also functions with pausing and resuming 100% Nick
Gyro Controls Utilized core motion to allow the player to control the gravity of the world based on accelerometer data 100% Nick
UI/UX & VC integration End to end UI/UX design including integrated all view controllers with correct animation 100% Ronghua
Custom Items Table Selection Developed dynamic table views and selection, reused for various customization options 100% Ronghua
Purchasing Conditions Check if purchasing can be made; update stars after purchasing, update UI image 33% Nick, 33% Pranav, 33% Ronghua