
Hard Jumper
Project Overview
Hard Jumper is a 3D platformer game developed in Unity using C#. In this challenging arcade experience, players must perform single, double, and triple jumps to avoid obstacles, cross difficult terrain, and collect coins while progressing through handcrafted and dynamically generated levels.
The game features four unique biomes—Forest, City, Snow, and Sand—each with distinct visual themes, environmental assets, and obstacle designs. Levels are generated procedurally using ScriptableObjects, enabling a flexible and data-driven approach to content creation. A structured level unlocking system rewards player progress and gradually introduces more difficult stages and environments.
Hard Jumper combines responsive movement mechanics, procedural level generation, and progression systems to deliver an engaging and replayable 3D platforming experience.
Key Features
- Single, Double, and Triple Jump Mechanics — Players can chain jumps to overcome obstacles, traps, and gaps.
- Coin Collection System — Gather coins to increase score and support progression.
- Level-Based Gameplay — Complete individual stages with increasing difficulty.
- Dynamic Level Generation — Levels are generated procedurally at runtime.
- ScriptableObject-Based Configuration — Level segments, obstacles, and biome settings are managed through reusable ScriptableObjects.
- Four Distinct Biomes — Includes Forest, City, Snow, and Sand environments.
- Level Unlocking System — New levels and biomes become available as players progress.
- Responsive 3D Controls — Designed for precise timing and smooth gameplay.
Technical Implementation
Core Systems Developed
- Player Controller — Handles movement, jumping, and multi-jump logic.
- Procedural Level Generator — Creates level layouts dynamically based on ScriptableObject data.
- ScriptableObject Data System — Stores biome settings, obstacle prefabs, and level parameters.
- Coin System — Manages collectible detection and score updates.
- Biome Manager — Switches between Forest, City, Snow, and Sand themes.
- Level Progression Manager — Controls unlocking and saving of completed levels.
- Game Manager — Handles game state, restart logic, and UI updates.
- Obstacle System — Spawns and manages hazards and collision behavior.
Technologies Used
- Unity
- C#
- Visual Studio
- ScriptableObjects
- 3D Physics and Colliders
- Procedural Content Generation
Development Challenges and Solutions
Designing Multi-Jump Mechanics
Implementing single, double, and triple jumps required careful state management to ensure responsive controls and prevent unintended extra jumps.
Building Flexible Procedural Levels
ScriptableObjects were used to separate data from logic, allowing level layouts, obstacle sets, and biome settings to be configured easily without modifying code.
Creating a Robust Progression System
A comprehensive level unlocking and save system was developed to track player achievements and gradually introduce new environments and increasingly difficult stages.
Skills Demonstrated
- 3D Game Development
- Procedural Level Generation
- ScriptableObject Architecture
- Gameplay Programming
- Object-Oriented Programming (OOP)
- Progression and Save Systems
- UI Programming
- Problem Solving and Debugging
Learning Outcomes
This project strengthened my understanding of 3D platformer mechanics, procedural content generation, and data-driven development using ScriptableObjects. It also enhanced my ability to design scalable gameplay systems and progression mechanics that keep players engaged through structured level-based challenges.

Hard Jumper