Banner image for the Outbreak-PTO project page.


Resources


Overview

Project Type

  • 4-Person Group Assignment

Project Role

  • Main Gameplay Programmer
  • Player Character Designer

Development Time

  • 3 Months

Tools Used

Game Engine

  • Unity

IDE

  • Visual Studio

Lanugage

  • C#

Animation

  • Aseprite

Description

Outbreak-PTO is a top-down action shooter videogame that uses a pixel-art style. The premise of the game is to survive on an infested space-ship and fight through various enemies. The end-goal is to defeat the game's final boss.

The project was created as an assignment for our introductory game development class. This game served as the final project for the course.

As part of the assignment, the game had a central theme that all groups in the class needed to follow. This theme was "potatoes". We implemented this idea into our game by creating potato enemies that fought against the character.

Project Website

(Made by Vivek Hedge)

My Work

During development of the game, my primary roles were as the player character designer and the main gameplay programmer. I was responsible for implementing most of the gameplay systems within Unity, such as the player character controls, player interactions, weapon functionality, and other general gameplay systems. I also designed the base health systens and enemy detection systems, but did not work on all the the enemy behavior implementations.

My other responsibility, as mentioned above, was as the player character designer. I produced all art and animations for the playable character and for other areas such as enemies and tiles.

My last task for the project was to create the trailer video which can be watched above.

Here's some galleries of some of the animation and art assets I created.




Unfortunately, not all of the assets we made were included in the final game. Due to time contstraints, we did were not able to plan where to use these assets I made.

What Went Well

Overall Quality

I consider the overall experience we created for the game to be high quality. I'm really proud of what we were able to create.

Communication

Our group was able to communicate very well during stressful parts of development. We never had any personal issues with each other.

Coordination

To work efficiently, we split up the work into seperate, individual sections. For the most part, each individual system we created worked well when congregated.

Cooperation

Everyone on our team put their best efforts down for the project. We all pulled our weight and worked to get things done on time.

Feature Prioritization

Ultimately, three months is not a lot of time to develop a game. We needed to scrap some planned features and prioritize other features. During this deliberation time, we were able to efficiently decide what was necessary and what we could disregard.

Problems We Faced

Git Merges

This was a BIG issue. None of us were very well-aquainted with Git, so we were unsure of how to manage Git merge collisions. We ended up manually dealing with merge issues and performing force pushes which was a frustrating process.

Not Enough Time

When we started planning out game, we were really ambitious and considered a lot of features. We didn't realize how short three months was for game development and were dissapointed when we had to cut ideas.

Performance

There are noticable frame drops when playing our game on occasion. I attempted to implement an obtimization unloading system, but the impact seemed minimal. We were unable to find the cause of the slowdown because of time constraints.

System Complexity

The systems I implemented for animation and weapon controls are really complex, making it difficult to maintain and modify.

What I learned

General Group Experience

This project was the first time I've every worked in a group for a programming project. I gained experience from working with my group members and teaching them about my system implementations.

C# Language and Unity

Unity was my first introduction to the C# language. From what I used, I really liked the syntax and would definitely consider using it again. The documentation for C# and Unity were also amazing.

Game Dev is Fun!

This project was the most fun I've had in a class project. I was completely invested in what I was doing and the end result was very satisfying!