My Grandma's a Hitman
My Grandma's a Hitman
ROLE | Assistive Programmer & Project Manager
TOOLS | Unity, Miro, Confluence, Trello
DURATION | 3 Months
TEAM SIZE | 9 Members
Creating Team Workflow for the project & setting the Project Timeline.
Iterated on Features by adding clearer feedback through the following systems:
Created & Integrated the Camera Goalpost System.
Created & Integrated the Knitting Needle Lock-On System.
Visual Vision Cone for Guards so Players know where Guards can detect them.
All around bugfixing so other Programmers can focus on implementing features.
Iterated on Designs through Diagrams & One-Page Documents.
Created Onboarding Processes & Diagramming for New Members.
Made the cool trailer you see to the left!
This was my first task as a Programmer. Playtests revealed that players didn't know how to navigate the level to the end goal, regardless of the linear nature of our levels (which was made to avoid this problem, ironically). So I opted to implement a system that shows the goal, and the path the player would travel through to reach the end.
My first worry was my code somehow breaking any of the systems already implemented in our project. So my first course of action was to study our entire codebase & learn how our game works. This taught me a lot of design patterns and inherent systems I didn't know existed in Unity.
I used this knowledge to create the Camera Goalpost System. I worked with camera systems already in-engine to avoid breaking anything, and took inspiration from how our Enemy AI works. It goes from set positions that can be set by the designer, going back to the player in the end.
I focused on making the system modular so it can be applied to all our levels. Seeing a system I made solve problems in our game gave me great motivation to try and take more technical tasks to further improve our game, which was the start of my journey.
Players were having issues aiming with our Knitting Needle, so I decided to add a Lock-On to it.
After learning what Unity's capable of with the Camera Goalpost System, I researched on ways I can send out some detector and retrieve information of hit objects, and that was the Sphere Cast. Whenever the Grandma is aiming, a SphereCast is shot out from her and searches for any objects that can take a hit from the Needle.
My iterations polished the Lock-On system so that Granny wasn't eternally locked onto an Object once found, by always making the SphereCast follow the direction of the Grandma, and separating the AimingLine from the Granny to follow her by default but lock onto Objects when detected by the SphereCast.
The team reviewed my designs and suggested that I add some other signifier rather than the AimCast staying locked onto a viable Object. I opted for something quick and simple, making the line green, leaving the team and our players satisfied.
My final significant task was to visualize the VisionCone that our guards used to detect the player. I already knew what the system needed: A Default Color, a Detected Color, and math needs to draw a Mesh taking from values already existing in our VisionCone.
It also needed to reflect how the Cone's shape changes when blocked by other objects, and when the Cone shrinks when affected by the Cat (it shrinks when the Cat is nearby).
The final system was implemented meeting all of these requirements, allowing our players to confidently strategize how they'll sneak past guards.
The math used to draw the cone isn't my own. I wanted to try and figure out on my own, but with our tight deadlines and the days I spent researching, I opted to learn from tutorials and implement that way.
I won't let this deter me though. Now I've got a personal side project I can work on, with the sole purpose of making a Cone all on my own! It's all about constant iteration and growth.
I've worked with Unity before, but this was the first time I've learned of what it can actually do.
My features became more streamlined & modular, easing time for designers to mess around with systems.
All the features I built take from systems already made by the team to prevent any unnecessary code.
A lot of iterations I did were made easy with this style of implementation, allowing me to fine tune my mechanics and easily respond to and implement feedback quickly.
Had I not taken initiative, I wouldn't have delved as deep as I did into programming, which was the highlight of this project.
I will fail, and I cannot let them hold me down. I'll learn to use my failures to know how to improve, and then begin improving.
I started off as Project Manager in this project and fulfilled that role all the way through. This was my third time being a Project Manager, so I was able to use a lot of lessons learned from my previous projects, which helped a lot because I was managing a team of 9.
I created the Pipelines and Team Structure that we used. I did research on pipelines used in other industries, and took from pipelines I used previously to create the one used for this project. It's a Scrum Based pipeline with Weekly Team Meetings and Builds, with Meetings focused on iterating the Project AND the Team Workflow.
The newest venture I did was using Confluence. With the size of the team, I wanted to ensure our Workflow was referenceable and written down. This is important with a team this big, so that everyone feels secure under a written truth. I could have done this with a Team Charter, but I experimented in using the Confluence as a Team Wiki.
The Confluence held information on the team workflow, structure, pipeline, and more. It was where we kept our Meeting Notes and everything related to the project was kept there.
Unfortunately I lost access to the Confluence, but everything I made for it can be viewed below. I started off by charting how I wanted to structure the Confluence.
An issue I encountered frequently in previous projects was members not following through on processes, due to how much text was contained in detailing said processes. So I made a lot of Images & Diagrams accompied by text to detail our workflow. It's what I do as a designer, so why not here! All the charts I've made is detailed in the Images below.