Welcome to ENIGMA!!!!

This project was completed independently, with the following outlining my contributions.

Demo Video:


Project Overview:

In this project, I developed a 2.5D platformer game called "Enigma," aimed at providing players with an environment that evokes a sense of mystery in a science fiction setting. The game consists of 5 levels, each designed with a unique level design principle, increasing in difficulty. Usability engineering and user experience design were prioritized, with the development of a menu screen and user interface incorporating both diegetic and non-diegetic elements to promote player engagement. Generative AI was utilized for audio and background environment sprites/images, adding to the game's immersive experience.

Game Description:

"Enigma" is a 2.5D platformer game set in a mysterious science fiction world. Players control a rocket navigating through five increasingly challenging levels, each with distinct design principles:

  1. Level 1: Features moving platforms that players must maneuver over.
  2. Level 2: A dark level where players must carefully navigate to the goal without hitting obstacles.
  3. Level 3: Includes oscillating platforms that move forward and backward.
  4. Level 4: A challenging level with a unique and unconventional design.
  5. Level 5 (Boss Level): The boss shoots numerous projectiles that players must evade to reach the goal.

Players progress through the levels by successfully reaching the goal platform. Upon failure at any level, players restart from level 1, reflecting the game's lore of being stuck in a time loop in space, where they must find a way to escape.

The game features suitable particle effects that indicate success or failure and menu screens that reflect the overall game theme, including a short lore text to enhance the narrative.

Key Features

Level Design and Gameplay:

  • Moving Platforms (Level 1): Platforms that players need to maneuver over to reach the goal.


  • Dark Environment (Level 2): A level with limited visibility where players must navigate carefully.


  • Oscillating Platforms (Level 3): Platforms that move forward and backward, adding a dynamic challenge.

 

  • Unique Level Design (Level 4): An unconventional and challenging layout.


  • Boss Level (Level 5): A boss that shoots projectiles, requiring players to evade and strategize.


Usability Engineering and User Experience Design:

  • Developed an intuitive menu screen and user interface with both diegetic and non-diegetic elements.
  • Ensured smooth navigation and interaction to promote player engagement.
  • Included lore text to enhance the storytelling and immersive experience.

Generative AI Integration:

  • Used generative AI to create immersive audio and background environment sprites/images.
  • Enhanced the game's aesthetic and auditory experience with AI-generated assets.

Audio Management:

  • Dynamic background music and ambient sounds change based on the active scene.
  • Utilizes AudioSource components to play specific audio clips for different game states.

Collision Handling:

  • Manages responses to different collision events, including playing particle effects and sounds.
  • Handles level transitions, object rotation upon collision, and player respawning.


Player-Controlled Rocket:

  • Allows player control of a rocket using keyboard input, handling movement and rotation.
  • Plays appropriate sound and particle effects for thrust and collision interactions.

Classes and Implementations

AudioManager Class:

  • Description: Manages background music and ambient sounds for different game scenes.
  • Implementation: Uses AudioSource to play specific audio clips based on the current scene. Calls playAudio() to manage audio playback and stopAudio() to stop audio playback.

CollisionHandler Class:

  • Description: Handles collision events, triggering visual and audio feedback, and managing level transitions.
  • Implementation: Plays particle effects and sounds upon collision, rotates the object to simulate being hit, and manages level transitions and player respawning.

Oscillator Class:

  • Description: Provides oscillating movement for game objects, enhancing gameplay with dynamic movement challenges.
  • Implementation: Calculates new positions based on sine wave calculations and updates the object's position accordingly.

RocketController Class:

  • Description: Allows player control of a rocket using keyboard input, handling thrust and rotation mechanics.
  • Implementation: Processes player inputs for thrust and rotation, plays thrust sound and particle effects, and handles rocket movement using physics simulation.

Technical Skills

  • Proficient in C# programming within the Unity engine.
  • Experience with level design principles and implementing dynamic object behaviors.
  • Knowledge of usability engineering and user experience design.
  • Ability to design and implement extensible and maintainable code architectures.
  • Proficiency in integrating generative AI for game assets.

Conclusion :

This project demonstrates my ability to develop engaging platformer games with unique level designs and dynamic gameplay elements. "Enigma" showcases my skills in game programming, usability engineering, user experience design, and integrating generative AI to create an immersive science fiction environment.

Controls: 

Press SPACE to thrust the rocket upward. You can press or continuously hold to propagate rocket. 

Press A or D to control rotation.

Press ESC to pause and access Menu. 

Presentation:

https://docs.google.com/presentation/d/1xDu4dvJuGqJ5ebZJzkMn7u3MIEKiz2bZWqXKGjK0...


Updated 21 days ago
StatusPrototype
PlatformsHTML5
AuthorsCody Jiang, Rithviik Srinivasan
GenrePlatformer
Made withUnity

Download

Download
webgl (2).zip 84 MB

Leave a comment

Log in with itch.io to leave a comment.