GAMES DEVELOPMENT / ASSIGNMENT 03

Naura / 0356798 / Interactive Spatial Design
DST61104 / Games Development
Assignment 03: Game Prototype


__________________________________________________________

Instructions:
  • Prioritize functionality over visuals
  • Focus on creating and testing core game mechanics
    • Develop the Minimum Viable Product (MVP) for the game.
  • Implement player movement mechanics and action functionality.
  • Develop interactions between the player, obstacles, and enemies.
  • Structure the logic for game levels, including progression and flow.
__________________________________________________________

Before I began, I was genuinely apprehensive about getting started. (I would like to briefly share the challenges I have encountered so far.)

Initially, I found myself staring at the screen, hesitant to take the first step. Eventually, I decided to rely on a common approach: I turned to YouTube tutorials and followed along carefully.

One of the most significant frustrations I encountered early on was implementing the gravity-flipping mechanic. In hindsight, I wondered why I had chosen such a complex feature to begin with (AAAAAA). The first major issue arose when the player flipped upward but failed to rotate properly so that their feet aligned with the ceiling. At that point, I had no idea how to resolve it. After thoroughly exploring various YouTube tutorials, I discovered that implementing a “groundcheck” system was essential. This system ensures that the player rotates correctly when in proximity to any surface—whether it be the floor or the ceiling.

The next challenge involved implementing the shooting mechanic, which proved to be an even greater struggle. When the player moved to the ceiling, the firepoint’s rotation did not function as intended. Instead of shooting forward, the player would inadvertently shoot themselves.

I consulted with Sir Razif regarding this issue, and he suggested a simpler approach: rather than manipulating the rotation, I should instead adjust the scale of the x and y axes. At first, I was unsure, but I decided to give it a try. To my relief, this solution worked out perfectly in the end.

This is my game's progress report:

  1. Player Health, Controls and Animations:
    • Walk
    • Switch gravity
    • Attack 1
    • Hit
    • Death
  2. Level Design:
    • All 5 levels completed
    • Implemented moving platforms and disappearing platforms
  3. Traps
    • Spikes
    • Rotating Saws
  4. Collectibles
    • Bandage
  5. Enemies:
    • Wraith: Idle, walk, attack, hit, and death animations
    • Abyssal: Idle, walk, attack (issue remains), hit, and death animations
  6. Checkpoints
  7. UI Features:
    • Respawn
    • Pause Menu
    • Main Menu
    • Quit Option
  8. Sound Effects:
    • Background music for Levels 1 and 2
    • Sound effects for all implemented sprites

The prototype is playable at its current stage, but several key mechanics and features are yet to be implemented:

Pending Features:

  1. Player Controls and Animations:
    • Attack 2 (long-range attack)
  2. Enemies:
    • Colossi: Idle, walk, attack, hit, and death animations
    • Mini-Boss: Idle, walk, attack, hit, and death animations
    • Boss: Idle, walk, attack, hit, and death animations
  3. Sound Effects:
    • For all pending enemy sprites (Colossi, Mini-Boss, Boss)
  4. Collectibles:
    • Key
    • Access card
  5. Map Detailing:
    • Adding environmental and visual polish
  6. Cutscenes:
    • Story-driven cutscenes to enhance the narrative
  7. UI: 
    • Saved Guildmates Icon

Game Prototype Video Presentation

In this video, I try to provide a clear overview of the game’s playability at this stage and highlight the next steps in completing the project.

Reflection:

I must admit that this assignment has been quite challenging. Despite my efforts to learn and familiarize myself with the weekly exercises, I often find that debugging—understanding where things went wrong and why—is the most time-consuming part of the process.

Additionally, I attempted to implement a mechanic that we had not yet covered, which led me to seek assistance from YouTube tutorials and tools like ChatGPT. Although I started coding my prototype/game early, I faced persistent issues with Unity, which significantly hindered my progress. As a result, I’m not entirely satisfied with what I’ve achieved so far, especially given the number of mechanics I had initially planned to implement.

That said, I remain hopeful that I can complete my game on time to the best of my ability and feel a sense of accomplishment once it is finished. Moving forward, I plan to explore state machines for implementing my remaining sprites, as many game developers emphasize that state machines are an essential tool for streamlining animations and behaviors.


Comments

Popular Posts