Bleach It!
I led a team of three others in the development of this small crime scene cleaning sim over the course of a semester as our final project. I handled programming the main tools the player uses - trash bag & sponge - as well as player and object implementation. I also helped out our artist by drawing all the dead body sprites and facilitated unguided user experience playtesting with a post-testing survey that I created. Due to my project management skills we were able to develop the core functions of the game quite quickly; allowing us to tackle many stretch goals.
Overview
Engine: MonoGame
Language: C#
Date: February 2025 - April 2025
Role: Gameplay Programmer & Team Lead
Itch.Io Page: Bleach It!
Task Management: Trello Board
GitHub Repo: Bleach It! Folder
Mechanics & Gameplay
The mechanic I spent the most time programming was the scrub tool. The engine we used didn't have a built-in mouse input feature for dragging the mouse around. We wanted to include this feature to make the players more immersed into the actions of cleaning like the character. To develop the tool I created a mini mouse FSM that checked the activity of click & release to find the position of the first click within the blood sprite. The click I tracked was used as a reference to compare the mouse positions over the course of 30 frames to see if the user was actively scrubbing away at the blood with their mouse. If they were, the sprite's opacity would lower. This looped until the declared duration for when the sprite would be completely gone was reached.
The amount of frames to lower opacity and total duration can easily be changed as I set them as a parameter for a second constructor. The first constructor sets their default values to 30 frames & 90 frames. The parameterized constructor was made in planning for possible future development, where we would want a variety of larger stains (ex. spilled drinks) that'd take longer to scrub away at.
Tutorial Screen
We kept the tutorial super simple as it's just a mini slide deck with images of tools and the directions written. In playtest, I observed that players would skip through to find a more interactive tutorial level where they could learn how tools worked as they played the game. If we were doing further development, we would definitely create a more interactive tutorial like the players sought.


UI Layout
This is the sketch of the user interface that I drew for our UI programmer. We originally had the tools in the center rather than the left, but it felt unbalanced. Originally, the tools could only be switched between via keyboard controls. However, from the user experience survey I created, we found that lots of players wanted to be able to physically switch tools by clicking on the icon with the mouse. Our UI programmer implemented this ability in our final iteration of the game.
Priority Feature Planning
Leading the meeting, I worked with the team to layout what needed to be accomplished before the midpoint deadline and what features were to be prioritized for development. Additionally, we planned out the UI for the pause & level select screen and what should be included in the tutorial screen.

