546 - bombShield(int a, int script)


Sets the bomb invulnerability flag (a=0 false, a=1 true), the caller's ANM script will change to script when a bomb is active.

Point Player Hitbox Bug


Specifications


  • Versions: 1.00a
  • Difficulty: Easy - Normal - Hard - Lunatic - Extra
  • Mode: Main game - Practice mode - Spell practice
  • Shottype: Reimu - Marisa

What happens


The player's hitbox is a point with no radius, effectively making the player's hitbox much smaller than what it is supposed to be.

An in-game screenshot of Reimu with a massive hitbox.
Figure 1: A modified version of th20 in which Reimu has an increased hitbox sized similar to the spell-card "You Grow Bigger!" in th14. This image exaggerates the point that the player's hitbox is a point with no radius.

How it happens


The final player hitbox size is calculated as follows:

final_hitbox = (hitbox_radius * hitbox_scale) / 100.0
  • final_hitbox: the final hitbox radius of the player
  • hitbox_radius: the hitbox radius of the player, which is 3 for both Reimu and Marisa.
  • hitbox_scale: the hitbox scalar, which is a value between [0, 100].

For the point player hitbox bug to happen, hitbox_scale must be 0.

Why it happens


The variable hitbox_scale is initialized to 0 and no other part of the code modifies it, meaning that its value will always remain 0 making final_hitbox always be 0 as well. This causes the player hitbox to be a single point.



Replays


This section has no content yet. Would you like to add to this section? Contact me if you are interested!

Videos


This section has no content yet. Would you like to add to this section? Contact me if you are interested!