Redux-Team / SM63Redux

Code base for Super Mario 63 Redux
https://sm63redux.com
Mozilla Public License 2.0
202 stars 27 forks source link

Spin attack hitbox is uncomfortably small #118

Open Koopa1018 opened 1 year ago

Koopa1018 commented 1 year ago

Describe the bug Spinning hits enemies from an uncomfortably small range away.

The player's normal hitbox is slightly narrower than the player sprite when standing. During a spin, the sprite's silhouette becomes several pixels wider, but the hitbox remains narrow, leading to cognitive dissonance when Mario's arms visibly touch the enemy, but nothing happens.

This is in contrast with the Flash version, wherein the spin attack hitbox was almost excessively generous.

To Reproduce Our established muscle memory may obscure the problem. Recommend trying these steps on a fresh individual.

  1. Allow an enemy to charge you.
  2. Time a spin attack using only visual information (the default for many players).

Alternately, the setup used in my screenshot:

  1. Place a breakable box on the ground, where it can be destroyed with a spin attack.
  2. Spin.
  3. While holding spin, move Mario close enough that his arms appear to hit the box.
  4. Repeat the spin action as many times as needed.

Expected behavior Spin attack range matches or exceeds what the player can see.

Screenshots Arm visibly hitting the box, yet the box is unbroken. image

System Information

Additional context Would recommend extending the hitbox past the visible boundaries slightly. as an affordance to players. (Though maybe not quite as much as the Flash version--too much of a good thing....)

Perhaps don't fix until the new, wider spin sprites drop.

Kuma-Boo commented 1 year ago

Maybe instead of having two separate hitbox sizes, we can just have a timer that keeps track of how long the player's been spinning for. EDIT: Apparently it's already implemented like that.

Maybe instead of increasing the spin hitbox, we should increase the box's hitbox instead, so enemies remain unaffected?

Koopa1018 commented 1 year ago

Nah, it's not a box-specific problem. (Boxes were just easy to screenshot acting weird, since they don't move.) Affecting enemies is what I'm going for here.

Koopa1018 commented 1 year ago

Notes on Flash version's spin, copied from Kuma's comment in #223:

After making some comparisons with the original flash version, The Flash version has an absurdly large hitbox, but seems to only be active for about 12 frames. Redux's spin in comparison has a super long active window of 30 frames.

Not really a big deal as we can always nerf it later and it's pretty unrelated to this pr, but I just thought I should document it.

GTcreyon commented 5 months ago

The Flash version has an absurdly large hitbox, but seems to only be active for about 12 frames. Redux's spin in comparison has a super long active window of 30 frames.

@Kuma-Boo Remember that the original 63 runs at 32fps, while Redux runs at 60fps. So, 12 frames in the original accounts for about 22.5 frames in Redux.

Still, 30 is longer than it's meant to be. I'll be doing the spin attack in the player rewrite now, so I'll bear this in mind.