Challenges
Smashed Bros.
Some of the following topics are not included in the Digital Design Document and were created after the team’s post-mortem. These were individually proposed and thoroughly discussed as potential improvements to existing systems.
Controller Input
Challenge
Creating a distinct and satisfying feeling through player input can be difficult. At the end of the day, a button press simply triggers a gameplay event like any other. The hurdle was finding a way to make that action more engaging and gratifying.Action
Because the gameplay featured Super Soaker-inspired weapons, it was the perfect opportunity to use a controller’s pressure-sensitive triggers to simulate the sensation of pressing a water gun’s release lever. As shown in the illustration above, the depth of the trigger press would determine how much water was expelled from the blaster.Result
The idea resonated with the team, as it took a similar approach to Super Mario Sunshine, which also incorporated a liquid spraying mechanic. Capturing that same feeling would help players feel more connected to the gameplay, enhancing immersion and making the experience more tactile.Comparing Other Games
Challenge
The framework of how a water blaster projectile would work needed to be assembled. The team had a rough idea of what to consider, but needed more information.Action
A similar styled game, Splatoon was studied and broken down into individual components to help better understand how it could be implemented in the project.Result
Although the information was deep, at its core it was discovered that there was a projectile movement component that required initial velocity, directional vector, spread. There was also the aspect of the flight physics, which were affected by gravity, drag, and a lifetime timer. The impact required collision detection, blast radius, damage falloff, and ink coverage. All of these individual elements helped the team better understand the complexity of how shooting a water blaster worked in a AAA title, which could be directly applied to the project.Five Senses
Challenge
When a player was hit with different types of liquor, side effects were intended to affect one of the five senses to enhance the sensation that their character was intoxicated. Each effect needed to be broken down into a programmable way to illustrate a specific sensation.Action
The panels in the drawing above represent a breakdown of the desired effects for each sense. For visual, effects were implemented by blurring the screen using aSceneTexture: PostProcessInput0
node. Auditory would involve muffling sounds through Set Low Pass Filter Frequency
. Tactile could have accelerated ragdoll physics to make collisions feel more exaggerated by using Set Simulate Physics
. Gustatory would increased sensitivity to oncoming alcohol related attacks, causing the character to briefly stall through Play Animation
. Olfactory effects induced nausea and slowed movement by adjusting the player’s movement speed with a Float
value.
Result
Breaking down the five senses helped clarify how each effect could be implemented in code, allowing the team to plan more effectively. While adjustments would still be necessary, this approach provided a clear foundation for establishing a intoxication system.Predetermining Coding Opportunities
Challenge
Although the team had experience with shooters, it was essential to understand their inner workings at a deeper level. Developing rough ideas for coding a basic weapon was necessary to guide production.Action
The image above illustrates a breakdown of the components involved in shooting mechanics found by studying other games catering to the same genre. Concepts for coding became immediately apparent. Accuracy could be simulated using anAim Direction
node with a random Float
offset for bullet deviation. Ammo count and size were tracked with an Integer
. Fire rate was controlled using Delay
to enforce intervals between shots. Recoil was emulated with Add Controller Pitch/Yaw Input
to adjust camera movement. Spread utilized Random Float in Range
to vary bullet trajectory around the crosshairs. Stabilization employed RInterp To
to gradually return the aiming vector after firing.