Skip to main content

What Makes a Game Feel Good? What I Learned Making Whisker 2

· 3 min read

After making several games, I started noticing patterns in what made games feel satisfying to play versus games that felt frustrating or boring.

Movement Feel​

One of the biggest things I learned was how much small details matter for movement. In Whisker 2, I spent a lot of time tweaking how the player moved around the kitchen.

At first, I just used Unity's default character controller settings. The movement worked, but it felt sluggish. When I tried to pick up ingredients quickly, the character would take too long to start moving or stop.

// Original movement - felt too slow
void Update() {
float horizontal = Input.GetAxis("Horizontal");
float vertical = Input.GetAxis("Vertical");

Vector3 movement = new Vector3(horizontal, 0, vertical);
transform.Translate(movement * moveSpeed * Time.deltaTime);
}

I ended up adding acceleration and deceleration instead of instant movement. This made it feel more responsive.

// Improved movement with acceleration
void Update() {
float horizontal = Input.GetAxis("Horizontal");
float vertical = Input.GetAxis("Vertical");

Vector3 targetVelocity = new Vector3(horizontal, 0, vertical) * moveSpeed;
currentVelocity = Vector3.Lerp(currentVelocity, targetVelocity, acceleration * Time.deltaTime);

transform.Translate(currentVelocity * Time.deltaTime);
}

The difference seems small in code, but in gameplay it made the character feel way more responsive.

Feedback Systems​

Another thing I learned was that players need constant feedback. Every action should have a visual or audio response.

In Whisker, when you picked up an ingredient, the original version just made the ingredient disappear and appear in your hand. But during playtesting, people said they weren't sure if they actually grabbed it.

I added:

  • A small "pop" sound effect when picking up ingredients
  • The ingredient briefly scales up before moving to your hand
  • A subtle particle effect

These tiny details made players feel way more confident about what they were doing.

Pacing and Difficulty​

The hardest thing to balance was difficulty. I wanted Whisker 2 to be challenging but not frustrating.

Originally, customer patience timers were the same throughout the whole game. But that meant either early levels were too easy or later levels were impossible.

I ended up using a curve for patience:

  • Early customers: 60 seconds to complete order
  • Mid-game customers: 45 seconds
  • Late-game customers: 30 seconds

But I also added ways to earn back time, like perfect ingredient combos giving you +5 seconds.

Why Cozy Games Are Different​

Working on Whisker taught me that cozy games have different feedback rules than action games. In Sharpshooter, missing a shot felt punishing. But in Whisker, I wanted mistakes to feel like opportunities to learn, not failures.

That meant:

  • No instant game-overs
  • Customers get disappointed but don't rage-quit
  • You can recover from mistakes
  • Visual feedback stays positive and encouraging

What I Think About Now​

When I start a new game now, I ask:

  • How should movement feel? Fast? Heavy? Floaty?
  • What's the main action the player does? How can I make that feel satisfying?
  • What feedback does the player need to feel confident?
  • What's the pace? Frantic? Relaxed? Tense?
  • How do I want failures to feel?

These questions help me design mechanics that actually feel good to play, not just technically correct.