Games Development - Final Project
Process
This assignment started with designing the core mechanics and structure of the game. I focused on scripting key features like player movement, attacks, health systems, and environmental interactions. Each level was planned with unique challenges to progressively increase difficulty, starting with basic controls and NPC interactions in the tutorial. As I moved forward, I implemented more complex mechanics such as tilting platforms, zero-gravity zones, and enemy behaviors like grenade attacks and laser patterns. Using Unity's Animator, I added transitions and animations to make the gameplay smoother and more engaging. Debugging scripts and refining interactions became a crucial part of ensuring the game flowed as intended.
The later stages involved enhancing user experience with UI elements like health bars, collectible counters, and level transitions. I integrated sound effects and background music to match the vibe of the game and make each level feel immersive. Lighting and camera adjustments added depth and atmosphere to the game environment. For the final boss, I worked on advanced mechanics such as health tracking and dynamic spawning of enemies, creating an engaging endgame challenge. Overall, this assignment helped me sharpen my scripting, level design, and debugging skills, while also improving my ability to manage a project from start to finish.
  | 
| Game Scenes | 
  | 
| Game Scripts | 
  | 
| BGM | 
  | 
| Sound Effect | 
  | 
PNG And Icons
  | 
  | 
Animations
  | 
  | 
| Background | 
  | 
| Game Prefabs | 
  | 
| Plugin for Audio Editing | 
Game UI Design
Additional Scene
Game Environment
Game Character
Game Flowchart
Below is a list of scripts that I have implemented in my game:
Player-Related Scripts
- Player Controller: Controls player movement.
 - Player Attack: Manages player attack mechanics.
 - Player Health: Handles player health system.
 - Player Death Handler: Displays the death screen when the player dies.
 
Enemy-Related Scripts
- Enemy Controller: Manages enemy movement and behavior.
 - Enemy Health: Controls the health system of enemies.
 - Enemy Kill Counter: Tracks the number of enemies defeated by the player.
 - Enemy Grenade: Handles grenade-type enemies and their functionality.
 - Grenade Damage: Manages damage caused by grenade enemies.
 
Health-Related Scripts
- Health Pickup: Controls heart collectibles that heal the player.
 - Health System: Manages the overall health mechanics of the game.
 - Health Pickup Reset: Respawns health collectibles in the boss level.
 - Gift Giver: Continuously spawns hearts during the boss battle.
 
Level Management Scripts
- Level Manager: Handles transitions and flow between levels.
 - Level Restart Trigger: Restarts the level if the player falls.
 - Door Trigger: Manages door mechanics at the end of each level.
 - Portal: Handles transitions between scenes (e.g., Level 3 to Ending).
 
Trap and Obstacle Scripts
- Sharp: Manages sharp elements that damage the player.
 - Cube Disappear on Jump: Controls cubes that disappear after the player jumps on them.
 - Tilting Platform: Manages platforms that tilt when the player steps on them.
 - Floating Floor: Controls floors that move up and down.
 - Floating Box: Acts as an elevator to send the player upward.
 - Zero Gravity Zone: Adds a floating effect in specific areas.
 - Blinking Object: Controls lasers for appearing and disappearing effects.
 
Boss and Combat Scripts
- Boss Testing Script: Manages the final boss's behavior.
 - Boss Health: Tracks and manages the boss's health.
 - Boss Health Bar: Displays the boss's health on the UI.
 
UI and Interaction Scripts
- Main Menu: Handles the start button to transition to the tutorial.
 - Button Hover: Adds hover effects to buttons in the main menu.
 - Transition Black: Manages screen transitions using alpha value adjustments.
 - Camera Zoom Trigger: Adjusts the camera's zoom level in specific areas.
 - Collectible: Manages all collectibles, such as notes and hearts.
 - NPC: Handles dialogue interactions between NPCs and the player.
 - NPC Ending: Manages dialogues in the ending scene.
 - Ending: Handles transitions between the ending scene and main menu.
 
Sound & BGM:
Main Character: Lyra
Jumping Sound: Bubble-like sound effect.
Attack Sound: A "he" sound recorded using my own voice.
Damage Sound: A scream sound effect when Lyra steps on sharp objects
Game Events
Door Transition: Success sound effect when the player collects enough notes and passes through the door.
Note Collection: A bell-ringing sound effect when a note is collected.
Background Music
BGM Style: Marimba-based music.
Reason: Marimba matches the lighthearted and adventurous vibe of the game.
Unique Tracks: Each level features a distinct marimba track to enhance the atmosphere.
  | 
StartMenu
  | 
- Goal : Bring Players to the Tutorial Level and Start the game
 
  | 
Tutorial Level
  | 
Goal: Teach basic controls (walk, jump, attack) and how to interact with NPCs.Interactables: NPC.  | 
Level 1
  | 
Goal: Practice basic controls and gameplay mechanics.Enemies: The Mischievous Ghost.Collectibles: Notes, Hearts.  | 
| Level 2 | 
Goal: Survive a more challenging level.Enemies: The Mischievous Ghost, The Grim Reaper.Collectibles: Colored Notes, Hearts.  | 
| Boss Level | 
Goal: Fight the boss and navigate difficult moving planes.Enemies: The Noise (boss), Enemy Grenades spawned from the boss.Collectibles: Notes, Hearts.  | 
| Ending Scene | 
Goal: Show Lyra saving the world through a short dialogue with an NPC.Interactables: NPC.  | 
| Restart Screen | 
Link to Game Design Document:Game Design Document
Link to the Playable Game:ECHO 
Reflection:
This assignment has been a rollercoaster of emotions for me. At start, I was super excited to turn my ideas into reality, but as things progressed, I faced so many unexpected challenges—bugs that wouldn’t go away, scripts that didn’t behave the way I wanted, and even moments where I questioned if I’d finish on time. Honestly, it was stressful, but also really rewarding.
Seeing everything come together, from Lyra's movements to the final boss fight, made all the late nights worth it. I’ve learned so much—not just about coding and game design, but also about patience and problem-solving under pressure. It’s crazy how something can go from just being an idea in your head to an actual playable game. This project reminded me why I love creating, even when it feels like everything’s going wrong. But at end,luckily everythings finish well eventhough is some of the stuff not going like what i planned but i did my best!
 
 
Comments
Post a Comment