Game Development - Final Project: Playable Game

25.06.2025 - 03.08.2025 (Week 11 - Week 15)
Lew Guo Ying / 0365721 / Bachelor of Design in Creative Media
Game Development
Final Project: Playable Game

Index

    1.1 Submission
2. Feedback

Instructions

MIB for Game Development

Requirement: 

Students are required to integrate their art assets into their game development and produce a fully functional, playable game. The project must demonstrate both technical implementation and creative design, ensuring a smooth gameplay experience.

Students must create an E-Portfolio to describe and reflect on their social competencies during the project. This should be supported with evidence and include reflections on how they:
  • Empathized with others in group settings,

  • Interacted positively within a team,

  • Fostered stable and harmonious relationships for productive teamwork.

Reflective writing is an essential part of the TGCP (Teamwork & Group Collaboration Performance).

Submission requirement:
  • Unity Project files and Folders
  • Video Capture and Presentation of Gameplay Walkthrough
  • Game WebGL Build
  • Blog Post for Reflective Studies

Final Project Plan – Sands of the Stolen Heart

For our final project, Sands of the Stolen Heart, the primary goal is to complete the full game level and bring all core mechanics to life. This final phase aims to deliver a polished, fully playable experience, tying together narrative, gameplay, and system design.

The development will focus on:

  • Finalizing the crafting system for minions, expanding it to allow players to summon additional followers, turrets, and shields to aid Sahira in her soul-collecting quest.

  • Introducing new enemy types to make combat more dynamic and challenging.

  • Designing and implementing the complete boss mechanics for Anubis, featuring an intense two-phase battle where Anubis enters an ultra state at low health, unleashing devastating attacks and patterns.

  • Developing the introduction and ending sequences to enhance the narrative and provide a satisfying conclusion to the adventure.


Winnie’s Tasks
  • Write and finalize the game’s intro and outro story, completing the overall narrative.

  • Complete the crafting system for minions, including:

    • Adding new followers, turrets, and shields as craftable options.

    • Balancing crafting costs and progression to ensure fair and rewarding gameplay.

  • Add new enemy types to make combat and soul collection more engaging.


My Tasks (Lew Guo Ying)
  • Build the full boss mechanics for Anubis, including:

    • Implementing two boss phases, with the ultra state activating at below 20% health.

    • Designing and coding new attack patterns for both phases.

  • Conduct combat balancing and bug fixing for boss fights and enemy interactions.

  • Perform final polishing and debugging of gameplay mechanics, UI elements, and scene transitions.


Progression:
Fig1.1 Exporation

For the boss development, I first worked on Anubis’s animations in After Effects, rendering only the key frames as PNG sequences with RGB+Alpha to preserve transparency. These frames were imported into Unity, where I set them as Sprite (2D and UI) and organized them into multiple animation clips, including appear, idle, fire attack, ice attack, and dash.


Fig1.2 Animator
In Unity’s Animator, I added parameters such as bossPhase (starting at 1, then switching to 2 when HP drops below 20%) and attackType (1 for fire, 2 for ice, 3 for dash). This setup allowed smooth transitions between different states and made scripting the boss’s behavior much easier.


Fig1.3 Script
The boss mechanics are controlled by two main scripts:

  • BossController: manages the boss’s health, phase changes, and death events.

  • BossAttackManager: defines how Anubis attacks, including movement before firing, timing pauses, and showing a warning line to indicate the attack path, giving players a short window to dodge.

During Phase 1, Anubis cycles through fire, ice, and dash attacks with a 3-second interval. In Phase 2, when his HP falls below 20%, he becomes more aggressive: attack intervals shorten to 2 seconds, and dash attacks happen twice per cycle. The addition of a warning line not only raises tension but also keeps gameplay fair by allowing players to anticipate attacks.

I also added a player height offset to fix projectile aiming, ensuring that attacks feel accurate and hit the player’s body correctly. This small detail improved the overall combat experience.

Overall, creating the boss was a mix of animation setup, scripting, and balancing. Through constant testing and tweaking, I achieved a fight that feels intense, fair, and fun, perfectly serving as the climax of the game.


Fig1.4 CinemachineConfiner

Fig1.41 Bosszone
Next, I continued refining the Boss-related features. First, I adjusted the CinemachineConfiner to perfectly enclose the boss area. To create a more dynamic battle space, I designed the boss arena as a pyramid-shaped multi-layer platform, giving players plenty of room to dodge while adding verticality to the fight.


Fig1.5 Script
I also wrote a script that allows the Boss to spawn as a Prefab inside the BossZone, triggering the encounter automatically when the player enters the area. This script requires linking both the BossSpawnPoint and BossPrefab to ensure proper spawning.


Fig1.6 Healthbar
In addition, I implemented a dedicated boss health bar that appears at the bottom of the screen when the boss spawns, providing clear feedback during the fight. Since the boss is larger, I gave the player enhanced jumping ability during the battle to aid in dodging. At the same time, the camera zooms out to capture more of the action.

When the boss appears, a Boss HP bar is displayed at the bottom of the screen. During the fight, the player’s jump height is temporarily enhanced to make dodging attacks easier. The camera zooms out, offering a wider view of the battlefield.

Fig1.7 Projectiles
The Boss’s attack system consists of fire and ice projectiles, fully integrated with animation events using Shoot and EndAttack to coordinate timing.

  • Ice Attacks: In phase one, the boss fires a single IceBall; in phase two, it fires five at once.

  • Fire Attacks: In phase one, flames spawn on the tile where the player stands, dealing damage; in phase two, the boss casts a cross-shaped flame that locks onto the player’s position before striking.

  • Dash Attack: The boss charges at high speed, dealing collision damage.


Fig1.8 Event
All Projectile Prefabs and attack behaviors are managed through the BossAttackManager. The FireAreaDamage script handles ground fire damage, generating flames that deal damage over a short duration. In phase two, attack density and frequency are increased to make the battle more intense.


Fig1.9 Portal
Finally, when the boss is defeated, a Portal appears. Entering the portal triggers the Victory Scene, where a Restart Button allows players to replay the level. Many mechanics were initially difficult to bind directly to the boss prefab, so I implemented the trigger logic within BossZone instead. Additionally, all UI buttons, such as Restart, are fully functional and handled by the RestartManager.


I added red warning lines for the Boss’s Fire, Ice, and Dash attacks, managed by the Boss Warning Line Manager. This allows players to anticipate attack directions, adding tension while giving them a chance to dodge.

Fig1.10 Warning Lines
Minimap Implementation

I created a Render Texture minimap and displayed it on screen using a UI Raw Image.The minimap updates in real-time, preventing icon display errors.Green icons represent the player, while red icons show enemies, helping players stay aware of battlefield status.

Fig1.11 Minimap
Game Flow & Final Screens

Start Scene: Contains Start and About buttons.After entering, a short story cutscene plays, which players can progress by clicking.Ending: After defeating the Boss and entering the Portal, the ending story plays, followed by the Victory screen.


Fig1.12 Start Scene
Additional Optimizations

Added fall detection: if the player’s Y-axis drops below a threshold, they respawn instantly.
Added Scarab and Potions: allowing players to gain souls and heal easily, enhancing the thrill of overwhelming the Boss.


Fig1.13Publishing

Publishing

Finally, I configured the Unity Player Settings, adjusted all necessary parameters, and successfully exported the Windows executable (.exe).

The WebGL version initially worked but later threw multiple errors after pressing Start, which couldn’t be fixed. Therefore, I only uploaded the Windows .exe version to itch.io.

To make the presentation more complete, I prepared screenshots and a poster for the page, allowing players to instantly feel the game’s atmosphere.


Submission:



Presentation Video:


Feedback

Week 14: 

Dr. Mia gave high praise to my game’s unique gameplay. She was especially impressed by the crafting system, pointing out that even though it was technically complex, I successfully brought it to life. She also loved the boss mechanics, noting how they made the gameplay more engaging and intense.

She did, however, suggest that I adjust the crafting UI layout, as the current setup covers some text, which makes it hard to read and slightly reduces the user experience.


Reflections

Experience

During this final task, creating the game was not only challenging but also an invaluable learning experience. From the very beginning, we poured countless hours into planning, coding, testing, and refining every detail. There were moments of frustration when things didn’t work as expected, but each obstacle became an opportunity to grow and improve. The patience we developed during this process was just as important as the technical skills we gained.

Looking back, what made this journey truly special was the collaborative spirit within our team. Everyone contributed their unique strengths, from designing creative gameplay mechanics to solving difficult bugs. This experience reminded us that game development is not just about technical work, but also about communication, trust, and teamwork.

Observation

Throughout development, we observed how team synergy and shared creativity shaped the outcome of our project. Whenever we encountered a difficult problem, instead of being discouraged, we gathered as a team to brainstorm solutions. This collective effort often led to better ideas than any of us could have achieved alone.

We also realized that attention to detail has a huge influence on player experience. Small changes—whether in UI design, boss battle mechanics, or visual feedback—greatly improved the game’s overall feel. Moreover, our ability to adapt and learn from feedback, especially from our module instructor, made a real difference. Dr. Mia’s guidance and encouragement were instrumental in helping us refine our ideas and bring them to life.

Findings

In the end, this project taught us that successful game development is built on three pillars: persistence, teamwork, and iteration. Constant testing and refinement turned rough ideas into polished features. More importantly, the journey strengthened our bond as teammates—we learned to support each other’s efforts, celebrate small wins, and push through difficulties together.

We are deeply grateful for this module because it not only enhanced our technical knowledge but also gave us the chance to experience the true spirit of collaboration. It showed us how much can be achieved when passion meets teamwork. While we are proud of the game we created, we know there is still room for improvement, and this drives us to aim higher in future projects.


Comments

Popular posts from this blog

TYPOGRAPHY Task 1: Exercise ( Type Expression and Text Formatting)

Application Design 2 - Task 1: Self- Evaluation and Reflection

Advanced Interactive Design - Final Task: Completed Thematic Interactive Website