Zachary was inspired to make this by the original "Kick the Buddy" Flash game for the smartphone, and his own personal experience and knowledge of others' experience with stress, and how stress can lead to aggression that, if left bottled up, can have very unwanted consequences when it blows up.
What it does
This game acts as a healthy alternative to taking out one's stress-induced aggression on something without causing harm to the ones they love and abusing them, either verbally or physically. It sucks, really, really sucks, when you say or do something terrible in the heat of the moment, and, only after the fact, have to face the consequences, both for yourself and others.
In this game, you beat up an inanimate object and let the frustrations of the day slide off your shoulders. It's a game you can pick up when you need it, and leave behind after it's done what it set out to do. So, knock the capsule off its feet, let your aggression play catch, and have fun!
How we built it
We built this game for the Oculus Quest using Unity 3D, and borrowing several assets for the scenery. Our original plan was to use Robot Kyle, a humanoid figure, and to transport the player across several levels by tossing him around. Our plans were slightly too large for the scope of the project, so we narrowed down what was needed to make things happen. Using assets, prefabs, textures, animations, and shaders, we were able to lay the groundwork for the C# code to play off of. Furthermore, we were able to set up spring traps and collision boxes, build a UI pathway to keep it connected, and end up with our MVP.
Challenges we ran into
A few challenges we ran into were in regards to software needing to download, or the time it takes to upload test runs to the Oculus Quest. In addition, we had issues with rigid bodies as regards spring mechanisms, and had to scrap our original idea as a result. A lot of the back-and-forth was frustrating, as well as debugging the code and adjusting the numbers to get the positioning and movement just right, but, overall, it was an enjoyable experience for everyone involved.
Accomplishments that we're proud of
We were able to code a simple version of the ragdoll and get it to move in pattern halfway to where we wanted it to be. We were able to get the scenery to animate and the StressBud, itself, to be knocked around and come back to the original, stationary position for easier access. Additionally, we were able to come up with a decent list of dialogue interactions that are associated with aggression, and build a miniature list to choose from at random.
What we learned
For a lot of us, this project acts as our first foray into Unity, and for using assets, prefabs, and shaders to act as we want them to. We learned of the difficulty that comes with using collision boxes to manipulate the environment (as in, they never act as we want them to), and of using spring boxes on humanoid, multi-jointed figures (it simply creates a collapsing ragdoll out of the asset being used, especially when fixing positions). Instead of focusing on our plan, we decided to go for the minimum viable product, and build something that could serve as a precursor for what's to come.
What's next for StressBud
We plan to add more scenes to choose from for StressBud, and perhaps even evolve the model to something more humanoid. Our original plan was to make him fall-themed and scarecrow-esque (to both differentiate him from the original Buddy and add the possibility of seasonal models and add-ons, as well as to allow for different facial expressions in reaction to the user's actions), so we might go back to that once we have a better grasp of the capabilities of Unity and how we would use the spring and collision boxes.