Basic Level Blocking


Overview

This week I was focused on refining the fundamental aspects of level blocking and ensuring the foundational elements of the game environment were correctly set up. The goal was to establish a solid base for the game’s layout, incorporating feedback from the unit coordinator and enhancing the user interface to create a cohesive player experience. The layout established in early September provided a strong foundation for current testing and item interactions.

Main Menu Enhancements

Main Menu Setup:

  • Functionality: The main menu serves as the hub for character selection, where players choose between Elf and Valkyrie before entering the game. It will also accommodate future elements like settings, instructions, and additional options.
  • Character Selection: Players navigate and select their character directly from the main menu, with each character represented by interactive buttons and visuals. This setup enhances the overall user experience and provides a cohesive entry point into the game.
  • Confirmation Dialog: A pop-up window confirms the player’s choice, reducing accidental selections. This feature, added based on feedback, has improved the intentionality of the player’s choice.


Prefab Assignment Fix:

  • Issue: The Elf character’s PlayerMovement script threw an UnassignedReferenceException due to an unassigned arrowPrefab in the Unity Inspector, causing null references when shooting arrows.
  • Solution: I manually assigned the arrowPrefab into the Player Movement script Arrow Prefab field, restoring functionality. This highlights the importance of verifying prefab configurations after script changes.

Lessons Learned:

  • Regularly checking that all public fields in scripts are assigned correctly prevents runtime errors and ensures smooth gameplay.

Basic Level Blocking and Environment Setup

Initial Level Design:

  • Layout Creation: The layout established in early September is the foundation for testing item placement and interaction. Players can pick up items and store them in their inventory, which supports item management. Items are categorised into two types: items of value, which increase the player’s score, and items of enhancement, which affect health. A health and scoring display provides immediate feedback on item collection and player status.
  • Game Elements: Game elements like spawn points and interactive objects are fully functional.

 Feedback Implementation and Core System Refinements

Feedback from the Unit Coordinator:

  • Implemented Changes: Pop-up confirmation for character selection and PlayerPrefs integration were successfully added. This ensures that players can make intentional choices and have their selected characters preloaded into the game scene, streamlining the transition from the main menu to gameplay.

Prefab and Script Management:

  • Dynamic Prefab Handling: Implemented dynamic prefab handling in the GameManager to support scene transitions and character selection without manual reconfiguration. This prevents duplicate instances and improves overall game stability.
  • Updated Enemy and Player Prefabs: Enemy prefabs and spawned enemies now dynamically set the player transform as their target. The player prefab is configured to be instantiated into the game scene, improving gameplay dynamics.


  • Scene Transition Stability: Resolved issues with player characters not spawning correctly after returning from the main menu. Improved the GameManager script for better scene transitions.

Gameplay Mechanics:

  • Player Animation Fixes: Resolved animation issues to ensure fluid movements and reduce visual inconsistencies. The Valkyrie character, however, still has glitches and lacks offensive capabilities, which are planned for the next phase.
  • Exit Door and Key Interaction: Implemented key mechanics for unlocking doors, adding strategy to gameplay. This feature will be expanded in future levels.
  • Player Inventory System: A player inventory system has been developed, enabling item interaction and storage. This system integrates with the health and scoring display for real-time tracking.
  • Raytrace Activation: After picking up the Death Potion, players can press Keypad 5 to activate a ray trace, destroying all detectable ghost/enemy objects within a certain radius.


Key Takeaways and Challenges

Key Takeaways:

  • Level Blocking Importance: A clear and functional layout is crucial for developing more complex levels. Regular checks of prefab references and script fields prevent errors.

Challenges Faced:

  • Arrow Disappearance Bug: Arrows fired westward disappear unexpectedly. This will be addressed in the next cycle.
  • Enemy Behaviour Adjustments: Further refinements are needed to ensure consistent and challenging enemy behaviour.
  • Valkyrie Character Issues: The Valkyrie has animation glitches and lacks offensive capabilities, planned for the next development phase.
  • Main Menu: Keypress input is not working correctly and working on resolving the input is taking two keypresses to activate the confirmation screen.

 

Next Steps

  1. Expand the basic level design by adding complex structures and interactive elements.
  2. Implement visual and interactive features to enhance the environment.
  3. Address the arrow disappearance bug and refine enemy behaviours.
  4. Fix Valkyrie animation glitches and add offensive capabilities.
  5. Resolve the keypress input issue for smoother interactions.
  6. Conduct comprehensive testing to identify and resolve issues before moving to advanced-level designs.
  7. Restructure the first level after core development is nearly complete for optimal gameplay flow.
  8. Address the ghost/enemy random movement issue where some do not orientate in the direction of travel until close proximity of the player.

 

Leave a comment

Log in with itch.io to leave a comment.