Week 13
25/10/2021 Monday
Colour Editor UI
Today I worked on implementing UI for the colour changer. I first started by creating 5 colour wheels. The colour wheel types are red, blue, green, orange, and white. The red to orange wheels have 12 colour buttons within them, while the white contains only 6. I then made 4 buttons to control which body part is being edited. These are the primary, secondary, accent and emission. The accent was removed later as itâs changes werenât visible on the BroBot model, and the emission was renamed to lights. Lastly, I made the BroBot parts change colour based on the colour button selected.
Gif of colour changer:
26/10/2021 Tuesday:
Improved Menus
I spent today improving on the buttons and menus. I firstly started by adding back in the loading screen we had made in semester one. I changed the text prompt to âpress start on controller or space on keyboardâ. I changed it to this as I plan to edit the player spawn to use these inputs. I also plan on only allowing players to spawn in on the main menu screen.
I then set up functionality between the different menus. Within the main menu there is the play, paint job (colour editor), and quit buttons. The play button loads the player into the levels. The paint job button transitions the user into the paint jobs menu. The quit button exits the application. I improved the BroBots title text and added blinking text saying the required button to spawn in a second player.
Within the paint job menu, I added a return to menu button. This button transitions the user back to the main menu. I also added a âpaint jobâ title text to this menu and copied over the spawn player prompt from the main menu.
Button Effects
I created button effects for each word button, such as resume, quit, etc. These effects are a grow, shrink, and click effect. The grow makes the button bigger and brighter when selected. The shrink reduces the size and dims the button when deselected. The click shrinks and then enlarges the button creating a clicking effect.
27/10/2021 Wednesday:
Crate Button
I started today by creating a crate spawning system for Ashtonâs button asset. It works similarly to the buttons in semester one. When a player enters a trigger collider over the button, a pressing in animation will play for the button followed by a crate being spawned. Upon the player leaving the button an animation for the button lifting out will play.
The button required some tweaking as initially if one player was on it and then a second got on, the button would press again. To fix this I had to create two booleans that check if players 1 or 2 are already on the button and if they cancel any new button presses until all players have left the button.
Gif of crate button:
Dead Zone
I then created a dead zone and respawn system. I made it so that on entering an invisible collider under the map the player's manager and mesh would be disabled. I then set it up so that after 1 second the player would be moved to a respawn point, with their player-manager and mesh enabled.
I set-up 4 respawn points for the 4 levels that will be in the prototype. The dead zone uses a trigger surrounding each respawn point to determine which respawn area to use. You can only trigger a respawn point once, this disables potential backtracking ruining the player spawners.
Gif of dead zones:
Updated Player Spawner
I redesigned the player spawn system. I had to redesign this system to work only in the menu and to allow colours picked in the paint job menu to persist in the game scene. Firstly, I made start and space spawn the players into the project. This was because pressing A on Xbox, X on PlayStation, or enter on keyboard would also press the menu buttons.
Next, I worked to make colours picked in the paint job menu persist between the menu and game scenes. I originally made it so that the player mesh and input provider would spawn on a persistent gameobject (does not get destroyed between scene loads). Then when loading into the game I would spawn in proper players based on the number of controllers recorded in the menu scene. I thought this was a decent approach, but it proved to be extremely difficult assigning the players in the scenes to their appropriate controls. The difficulty came from having to assign the players without being able to use device input.
While trying to get the previous approach to work I realized I could just spawn in the proper player and have them persist between scenes. Then all Iâd have to do is disable their player-manager and cameras when in the menu and enable them in the levels. This worked and was simple enough to set up, only requiring a few edits to properly disable and enable the players. With this finished the menu system was functional and finished.
Gif of finished menu:
28/10/2021 Thursday:
Target Button
Today I started by creating the functionality for the target buttons. The targets are used to activate disabled jump pads. Similarly, to the crate button, this target button has a pressing in animation. However, the idea for this is that the player has to fire a crate at the target, and it will then stay down. In order to do this, I set up a trigger collider in Infront of the target that when a crate enters will play the pressing in animation. It will stay pressed in and activate a close by jump pad. This jump pad is then used to get to a previously inaccessible area.
Gif of target button:
Button and Jump pad Lights
After getting the target button working, I realized the buttons and jump pad lack flare. They all have lights on them that I decided to turn on and off depending on the objects state. To do this I created a colour value that edits the brightness and colour of the light. It sets the lights to dull when inactive and then assigns them to bright when activated by a player.
Level 4
My last additions to this project for semester two was the creation of level 4 and a return to menu event. Since Ashton was handling the design of levels 1 through 3, he helped me to use and snap into place the correct assets. Ashton and I had previously brainstormed the levels and aimed to introduce one new element in each level. For level 4 I was tasked with introducing the magnet gloves interactions with magnetic walls.
I created gaps that the player can only cross using their magnetism on magnetic walls to pull them over the gap. There are two gaps in the beginning, the first being easy to cross and the second being more difficult. After that, to the left, there is a platform with a magnet wall that has a crate button spawner. To the right, there is a target and a jump pad that gets the player up to an area that returns them to the menu. This area is a trigger collider that requires every spawned player to enter, after they all enter the players are loaded back to the main menu screen.
Video of level 4: Watch from 3:48 to see level 4.










