Over the development period I have spent a lot of my free time playing the game Balatro, the extremely successful indie roguelike deckbuilder. A lot of the game’s addictive qualities have been attributed to its “game feel“: essentially the collection of small audiovisual details that make every action in the game feel satisfying and tactile. In Balatro, this is mainly achieved with the sound design and UI animations.
UI and Visuals
For a game based off of a medium as tactile as playing cards, Balatro aims to replicate this as much as possible with its UI animations. Every action, such as selecting, dragging or even hovering over a card, opening menus or pressing buttons has a satisfying snap with a slight elastic effect as it bounces back into place. The score numbers pop out and get bigger as your score increases, with a fire effect rising from their bubbles when you hit the round’s quota. All this combined leads to a pure dopamine rush when playing a successful hand, the effect only strengthening the primordial satisfaction at watching numbers get bigger.
Important to note is that this ties directly into the game’s intended gameplay mechanics, silently guiding the player into making builds that synergize and keep the chain going longer and longer.
Even when idle, all the cards and menus sway and rotate ever so slightly in a hypnotic fashion, making every single element feel alive. Opening menus, hitting buttons and getting high score multipliers in the game also add a tiny amount of screen shake, which adds heft to these actions without feeling distracting or nauseating.
However, for things that need to be read instantly at a glance, such as tooltips that pop up on hover, animations are disabled entirely. Snappiness is the main goal of the UI in both the timing of the animations as well as their physical feel. I intend to add this to Oh, Rats!‘s UI through the use of animation tweening, as there are several downloadable packages online which can automate the process of animating values such as UI element positions to satisfying effect.
Features such as the screen shake can be disabled in the options as well, making for very nice accessibility accommodations.
The main takeaways learned in terms of UI design are as follows:
- Large elements such as menus should move across the screen in a natural and tactile way, but should not feel too loose so as not to be snappy.
- Small but important elements such as tool tips or health/stamina meters should either have very quick animations to introduce them or none at all.
- Extremely subtle waving animations as well as some screen/camera shake can add life to UI elements but should be able to be turned off (or preferably tweak-able).
Sound Design
The second piece of the puzzle that players have repeatedly credited for their addiction to Balatro‘s second-to-second gameplay is the sounds. The game opts for what can be described as an emphasised skeuomorphic approach to sounds, mixing real world inspiration with gamified artificial sounds and audio manipulation for extra “juice”. For example, the sound of selecting a card has a papery click layered with a beefy button sound, giving purpose to the action. Deselecting, however, is given a different sound with much less low-frequency audio in it. When cards are dealt the familiar sounds of them sliding against each other can be heard, albeit in an uncannily perfectly spaced manner.
Sound is also a big contribution to the satisfaction of the aforementioned scoring sequence, with the player’s score multiplier increasing with an ever-rising bell-like sound reminiscent of slot or pinball machines. The sound for increasing chips (the base counter of one’s score in the game) also has a very short snappy click sound, similar to stacking chips in a casino. This again contributes to the player’s desire to create synergies of cards, as each Joker (special cards that grant abilities that usually increase score) fires off their sound effects sequentially and can sometimes re-trigger each other for an unending chain of steadily increasing satisfaction.
In Oh Rats I will try to make the sound design as satisfying as possible using lessons learned from Balatro in several ways:
- Short, tactile tapping sounds for the rat’s movement, perhaps using subtle pitch manipulation/randomness.
- Pitching up the jump sound to add a satisfying contrast from walk sounds.
- Adding weight to important button presses with lower frequencies but keeping less important interactions unobtrusive.
Leave a Reply