Cosmic Jump is a 2D endless runner game where players control an astronaut navigating through space, avoiding asteroids, and scoring points. The game offers an engaging and challenging experience, requiring quick reflexes and strategic jumping to achieve high scores.
Menu Screen of the Cosmic Jump
Inspiration
The inspiration for Cosmic Jump came from classic endless runner games like Flappy Bird, combined with a space theme to add a unique twist. The goal was to create a simple yet addictive game that can be enjoyed by players of all ages.
The astronaut (player) in the game scene
My Role
As the developer of Cosmic Jump, I was responsible for the entire development process, including designing the game mechanics, implementing the code, creating the UI, and ensuring smooth gameplay. I also managed the integration of animations and sound effects to enhance the gaming experience.
Technical Details
Technologies that I used
Unity
C#
TextMesh Pro
Adobe Photoshop
Unity Workspace
Libraries and Assets
Unity Assets Store:
Cosmic Man by Quantum Fox Studios
Space Star Field Backgrounds by Dilapidated Meow
2D Pixel Asteroids by EVPO Games
2. Background music and sound effects from Pixabay
Game Over Scene
Features
Gameplay Mechanics
Endless Runner: The astronaut moves forward automatically, and the player must navigate through randomly spawning asteroids.
Jump Mechanic: Pressing the space bar makes the astronaut jump, allowing it to avoid obstacles.
Score System: Points are earned by successfully passing asteroids without collision.
Game Over Condition: The game ends when the astronaut hits an asteroid or goes off-screen.
Animations
Smooth jumping animation for the astronaut
Moving asteroids to create a dynamic environment
UI Elements
Main menu with a start button and background music toggle
Score display during gameplay
Game-over screen with the final score and a restart option
Unique Features
Randomized asteroid spawning positions to keep the game challenging and unpredictable.
Background music that can be toggled on and off by the player.
Challenges and Solutions
Asteroid Spawning
Challenge: Ensuring that asteroids spawn at random positions without making the game too difficult or too easy.
Solution: Implemented a random range for the Y-axis spawn position while maintaining a minimum gap between consecutive asteroids.
2. Collision Detection
Challenge: Accurately detecting collisions between the astronaut and asteroids to trigger the game-over state.
Solution: Used Unity's built-in 2D collision detection and adjusted colliders for precise detection.
3. Astronaut Rotation
Challenge: The astronaut was rotating uncontrollably when hitting obstacles or jumping.
Solution: Applied Unity's Rigidbody2D constraints to freeze the astronaut's rotation, ensuring it stays upright during gameplay.
4. Screen Boundaries
Challenge: Ensuring the game ends when the astronaut goes off-screen.
Solution: Implemented boundary detection in the Update method to check if the astronaut's position exceeds screen limits, triggering the game-over state if true.
Play Demo
To play this game and experience it for yourself, click this link!!!
Developed a 2D space-themed game using Unity and C#. Features include obstacle spawning, scoring system, animations, and game-over conditions. Hosted on GitHub