top of page

Vibe City

Capture.PNG

Summary

Vibe City is a team project made as the final project in the Advanced Diploma course I took in 2021. The team had 7 people all working on it in their respective fields. The team was made up of 3 programmers, 2 designers and 2 artists. 

​

Among the programmers we split the project into 3 small tasks that we could contribute to, VFX programming, Progression and customisation programming, and Gameplay and networking programming. I was assigned the progression and customisation task as I had an Idea where some customisation items were locked behind achievements.

​

Other than programming I did a little bit of asset modeling and Design work to help with the load of the other disciplines.

Achievement System

The achievement system is an extra system I made to add more levels of progression to the game. The achievements them selves are Scriptable Objects that can be created in a editor window tool I made to stream line the creation process and for ease of use for the others on the project.

​

The Achievement Manager class is a singleton that should never be destroyed and controls achievement score and alerts the player when they have unlocked and achievement.

 

The BaseAchievement class is overridable as there may be a case where an achievement might need to be unlocked through a very specific method.

​

Customisation System

The Customisation system is fairly simple in execution but it is very modular allowing anyone to add objects to the system easily. 

​

I had to work closely with the artists on this as most of the models had to be exported in a certain way for it to work as intended. The artists had to export the main weight painted objects overlapping each other as I couldn't find a way to add weight painted objects in a modular way, however any object that is independent to the models skeleton could be exported separately as I just parented those objects to the skeleton, making the process a bit easier on everyone.

​

I created editor tools to make the process even easier, with an included developer check to draw the default unity inspector as a just incase the editor tool became out of date so others could use that and not wait on me to update the tool.

​

I also made a tool to create achievements and unlocks as the systems are similar and are involved with each other.

​

Editor tool.PNG
Editor tool2.PNG

Menu UI

A smaller system I made was the basic menu system, I had this from a previous project I imported as a modular system. This system works very similarly to a state machine.

 

The main script called menu manger has a list of menu scripts and a MenuInitaliser script, the MenuInitaliser script is a overridable class allowing for users to implement their own custom code to set up any menu, such as an inventory needing to be created at runtime.

​

there are three methods to change menus, first is to change directly to a menu by its index in the Menus list, second is to change by the gameobject name, and last is to cycle through the list.

​

The Menu script has two Unity Events, the first is invoked when the menu is activated and another is invoked when exiting the menu.

MenuManager.PNG
Menu.PNG

Meet The Team

Haydn-Tanner.jpg

Haydn Tanner

    Programmer

    Luke-Jones.jpg

    Luke Jones

    • 899479-200

    Programmer

    Matthew-Dale.jpg

    Mathew Dale

    • 899479-200

    Programmer

    Reuben-Azevedo.jpg

    Reuben Azevedo

    • 307-3071745_art-station-artstation-icon

    Artist

    Flynn-Williams.jpg

    Flynn Williams

    • 307-3071745_art-station-artstation-icon

    Artist

    James-Walker.jpg

    James Walker

    • 899479-200

    Designer

    Louis-Francis-2021-Headshot.jpg

    Louis Francis

    • 899479-200

    Designer

    bottom of page