Hitbox: Difference between revisions
SuperSqank (talk | contribs) |
SuperSqank (talk | contribs) |
||
Line 86: | Line 86: | ||
|Groundness/Airness||''Smash 64''||Determines whether a hitbox can strike grounded opponents, aerial opponents, or both. | |Groundness/Airness||''Smash 64''||Determines whether a hitbox can strike grounded opponents, aerial opponents, or both. | ||
|- | |- | ||
|[[Shield damage]]||''Smash 64''||Modifies how much damage the hitbox | |[[Shield damage]]||''Smash 64''||Modifies how much damage the hitbox deals to [[shield]]s. A value of 0 indicates that a move will deal its normal amount of damage to shields. | ||
|- | |- | ||
|Clang||''Smash 64''||Determines whether a hitbox can cancel out other hitboxes through [[priority]] rules. In ''Smash 64'', if a hitbox that cannot clang interacts with another hitbox, the move will clash, but its animation will continue, rather than going through the [[rebound]] animation. In later games however, hitboxes that cannot clang simply cannot interact with other hitboxes. | |Clang||''Smash 64''||Determines whether a hitbox can cancel out other hitboxes through [[priority]] rules. In ''Smash 64'', if a hitbox that cannot clang interacts with another hitbox, the move will clash, but its animation will continue, rather than going through the [[rebound]] animation. In later games however, hitboxes that cannot clang simply cannot interact with other hitboxes. | ||
Line 96: | Line 96: | ||
|[[Rebound]]||''Melee''||Determines whether a move is interrupted with an animation while on the ground when it clangs with another move. This essentially has the same effect as the clang property did in ''Smash 64''. | |[[Rebound]]||''Melee''||Determines whether a move is interrupted with an animation while on the ground when it clangs with another move. This essentially has the same effect as the clang property did in ''Smash 64''. | ||
|- | |- | ||
|Type||''Brawl''||Determines what kind of [[sticker]]s can power up the attack: [[arm]], [[leg]], [[body]], [[weapon]], etc. | |Type||''Brawl''||Determines what kind of [[sticker]]s ([[spirits]] in ''Ultimte'') can power up the attack: [[arm]], [[leg]], [[body]], [[weapon]], etc. | ||
|- | |- | ||
|SDI Multiplier||''Brawl''||Modifies how much [[smash directional influence]] can be applied when struck by a hitbox. | |SDI Multiplier||''Brawl''||Modifies how much [[smash directional influence]] can be applied when struck by a hitbox. |
Revision as of 04:03, July 12, 2020
- For the website, see hitbox.tv.
A hitbox or collision bubble (sometimes hitbubble) is the main structure for how attacks are executed in most fighting games. Attacks have one or more hitboxes associated with them, and when these hitboxes overlap with a target's damageable area (sometimes called their hurtbox or hurtbubbles), the attack is considered a hit. Hitboxes are invisible and usually, though not always, have the same shape as the attack's animation.
Overview
The two most common forms of hitbox shapes in video games are cuboids and spheres. Neither is obviously better than the other - cuboids can more easily form long or thin attacks or targets, while spheres are easier to calculate collision detection for. Smash 64 uses cuboids whereas Melee, Brawl, and SSB4 use spheres and sphere-like structures known as capsules (cylinders with spheres on the ends).
In Smash 64, hacks can enable hitbox visibility (with a few limitations), such as in this image. In Melee, hitboxes can be seen by setting DBLEVEL to DEVELOP in the debug menu. There is no easy way to display hitboxes in-game in Brawl, SSB4 or Ultimate, though a common technique in Brawl is to use hacks to place Super Scope shot visuals where the hitboxes are (which is significantly more involved a process and generally fails for any projectile or item).
Should multiple hitboxes of a single move connect with the opponent, only one of them will count. The order of precedence is known as the "hitbox stack" - hitboxes higher in the stack will override ones lower should they both hit at the same time. Mechanically, this is denoted by giving each hitbox an ID number, and lower numbers indicate higher precedence (higher stack position). For example, Marth's down aerial in Melee features its tipper hitbox on top of the stack, so hitting with both a tipper and non-tipper hitbox will result in the tipper counting (even if the majority of the opponent was hit by the other hitboxes). By contrast, the move in Brawl has the tipper on the bottom, so the tipper can only hit if none of the other hitboxes do. As a result, even through the sizes and positions of the hitboxes did not change much between games, the tipper is simple to hit with in Melee while being difficult in Brawl.
Hitboxes that are separated from a character's hurtboxes are often called disjointed, which is usually an advantage, as they can connect from a farther distance, while keeping the attacker safer from retaliation and reducing the likelihood of trading blows. Examples of disjointed hitboxes include most weapon-based attacks, and more infamously the up tilts of Kirby in Smash 64 and Snake in Brawl as well as some of Joker's moves when using Arsene.
An interesting property of hitboxes in the Smash Bros. series is that under most conditions, they occupy not only the space where they currently are, but also the space where they were one frame ago as well as all the space in between (in a straight line, regardless of what the animation might look like during intervening subframes). This characteristic is likely to prevent situations where a fast projectile may end up passing through a character in less than a frame without hitting them. On the other hand, hurtboxes do not stretch over "interframe space" in this way, so a fast-moving object (such as Fox during his Illusion) may be able to move through a slow or stationary hitbox without being damaged. In addition, certain hitboxes in Brawl use the stretch effect to create a very long hitbox, for example in Zero Laser and Aura Storm, instead of stretching over interframe space. It is unclear how the hitbox-stretching mechanism operates in Brawl when time is slowed via training mode or other effects, as Brawl renders subframes, whereas Melee and SSB64 simply reduce the overall framerate.
Hitboxes in three dimensions
It is a common misconception that, like some other fighting games, hitboxes and hurtboxes only operate in two dimensions. In actuality, they interact in all three dimensions equally, even though the majority of gameplay elements are restricted to two-dimensional movement. As a result, Super Smash Bros. is more accurately described as a 2.5D game.
Notable examples of unexpected behavior due to the 3D nature of hitboxes include:
- Animations where characters lean sideways can result in attacks missing them. King Dedede's sidestep in Brawl is a notorious example, allowing him to dodge attacks with narrow hitboxes even after his intangibility ends.
- Attacks that swing in a horizontal arc can hit characters of different widths at different times. For example, Peach's neutral aerial in SSB4 usually hits Zero Suit Samus a frame later than most other characters. Similarly, Yoshi's running grab in Melee is so off to the side of the playing plane that it often misses a stationary Zelda completely.
When playing on a two-dimensional stage such as Flat Zone, many of these quirks disappear, due to characters being almost completely flattened along the camera's axis. However, some new quirks can arise: if hitboxes are produced when an arcing attack is normally not yet in the playable plane, the flattening effect results in them being able to hit earlier than expected. It is also important to note that only the characters are flattened; their hitboxes and hurtboxes continue to operate as three-dimensional objects in a three-dimensional world, so maneuvers such as using the Dragoon are not affected.
Players tend to refer to any unexpected behavior of this nature as fault of the "z-axis", as z traditionally refers to the third dimension in a three-dimensional environment. This tends to result in confusion when character moveset data is decoded, as while the camera's axis is indeed along the z-axis of stages, for characters and most other gameplay objects, the z-axis is the one that points forwards.
Hitbox types
Hitbox Type | Debug mode Colour | Explanation |
---|---|---|
Offensive | Red | The standard type of attacking hitbox. From Brawl onward, there are various types of offensive hitboxes, some of which have unique abilities (like the ability to ignore shields). |
Damageable | Yellow | The standard type of damageable area, also known as hurtboxes. Characters have a variety of these attached to their bodies, while damageable stage areas (such as the wedge of ice on the Summit) and non-playable entities (like enemies and bosses) use them as well. |
Invincible | Green | Invincible targets can be hit by attacks but will not flinch or take any damage or knockback. For example, this occurs for characters that have just stepped off a revival platform, or who have used a Star. |
Intangible | Blue | Intangible targets cannot be hit by attacks. This occurs during dodges and rolls. Various characters have attacks which provide parts of their body with intangibility, such as Mario's head during his up smash. |
Reflective | Aqua | Defensive hitboxes that reflect attacks. |
Shield | Cyan | Defensive hitboxes that shield attacks. |
Absorbing | Cyan-blue | Defensive hitboxes that absorb attacks. |
Grab | Magenta | Grab hitboxes will ignore any special or defensive hitboxes. |
Inert | Grey | Inert hitboxes are used for collision detection when a regular hitbox is unsuitable (such as the dash of Raptor Boost and Gerudo Dragon). |
Hitbox properties
Normal properties
Property | Introduced in | Description |
---|---|---|
ID | Smash 64 | Determines the priority of the hitbox compared to the move's other hitboxes. If multiple hitboxes overlap, the hitbox with the lower ID value (i.e. 0) will always connect if an attack lands in-between multiple hitboxes. |
Part | Smash 64 | Determines how many hitboxes can hit in one attack. If a hitbox has a part value of 1 for example, it can connect after landing a hitbox with a part value of 0. |
Damage | Smash 64 | The base damage dealt by the hitbox. In the first three games, the initial damage is always an integer, but (at least after Smash 64) it rarely ends up as one once modified by things like stale-move negation. In Smash 4, damage can start at any real number. |
Angle | Smash 64 | The direction the target is sent flying. Usually a number from 0 to 360, with numbers such as 361 or 365 indicating the Sakurai angle or autolink angle. Can also be negative numbers such as -90. |
Base knockback | Smash 64 | The minimum knockback this hitbox can apply, regardless of the target's weight and damage (but dependent on type effectiveness and launch rate). |
Knockback scaling | Smash 64 | Modifies how much knockback rises as the target's damage increases, with the default being 100. For example, a value of 110 means that knockback will increase at a 1.1x rate compared to other hitboxes that deal the same damage. |
Fixed knockback value | Smash 64 | If set, causes the hitbox to deal the same knockback regardless of the target's damage. |
Bone | Smash 64 | Determines which bone of a character model a hitbox is connected to. A bone value of 0 is a central bone and can only move with the character. Other bone values correspond to different bones (i.e. an arm or a leg) and will move if the characters moves that specific bone, even if the character does not move. |
X position | Smash 64 | Determines the horizontal displacement of a hitbox in comparison to the bone it is attached to. |
Y position | Smash 64 | Determines the vertical displacement of a hitbox in comparison to the bone it is attached to. |
Z position | Smash 64 | Determines the forwards/backwards displacement of a hitbox in comparison to the bone it is attached to. |
Effect | Smash 64 | Determines what happens when the hitbox connects: nothing, slashing, burning, electrocution, etc. |
Groundness/Airness | Smash 64 | Determines whether a hitbox can strike grounded opponents, aerial opponents, or both. |
Shield damage | Smash 64 | Modifies how much damage the hitbox deals to shields. A value of 0 indicates that a move will deal its normal amount of damage to shields. |
Clang | Smash 64 | Determines whether a hitbox can cancel out other hitboxes through priority rules. In Smash 64, if a hitbox that cannot clang interacts with another hitbox, the move will clash, but its animation will continue, rather than going through the rebound animation. In later games however, hitboxes that cannot clang simply cannot interact with other hitboxes. |
Sound effect | Smash 64 | On impact, each hitbox produces a sound effect with a given type (punch, kick, slash, shock, burn, etc.). |
Sound level | Smash 64 | Determines the strength of the sound a hitbox produces on impact (small, medium, large, huge can be applied for certain types). |
Rebound | Melee | Determines whether a move is interrupted with an animation while on the ground when it clangs with another move. This essentially has the same effect as the clang property did in Smash 64. |
Type | Brawl | Determines what kind of stickers (spirits in Ultimte) can power up the attack: arm, leg, body, weapon, etc. |
SDI Multiplier | Brawl | Modifies how much smash directional influence can be applied when struck by a hitbox. |
Hitlag multiplier | Brawl | Changes how much hitlag is applied on impact. |
Trip chance | Brawl | Gives the hitbox an extra chance of tripping opponents. |
Directness | Brawl | Determines whether the hitbox is Specials: Indirect. |
Special properties
Prior to Ultimate some hitboxes were listed as "special hitboxes" which had additional properties which could be added. In Ultimate, these properties are now included within standard hitboxes
Property | Introduced in | Description |
---|---|---|
Reflectiveness | Smash 64 | Determines whether the hitbox can be reflected. Usually a projectile. |
Absorptiveness | Smash 64 | Determines whether the hitbox can be absorbed. Usually a projectile. |
Blockability | Melee | Determines whether the hitbox can be shielded. |
Flinchless | Melee | Determines if a hitbox causes hitstun/hitlag. This is commonly used for "windboxes". |
Rehit rate | Brawl | Determines the frame gap between when a hitbox can connect multiple times. |
Angle Flipper | Brawl | Sets whether a hitbox is allowed to hit targets the opposite direction if the target is behind the attacker, among other things. |
Disable hitlag | Brawl | Sets whether a hitbox causes hitlag, regardless of the hitlag multiplier. |
Heedless | Brawl | Sets whether a hitbox can hit a teammate, even if friendly fire is turned on. |
Piercing | Brawl | Determins if a hitbox can ignore invincible opponents. |
Stretch | Brawl | Determines if a hitbox is stretched out, rather than being circular. |
Hitbits | Brawl | Determines what a hitbox is capable of interacting with. Including damageable objects in the environment, multiple opponents or even one opponent as well as if it can connect against enemies from the Subspace Emissary in Brawl. |
Disable GFX | Smash 4? | Determines if a hitbox produces hit graphics if it connects. |
X stretch/X2 | Smash 4 | Determines how far horizontally a hitbox is stretched. Essentially an extension of the stretch property from Brawl. |
Y stretch/Y2 | Smash 4 | Determines how far vertically a hitbox is stretched. |
Z stretch/Z2 | Smash 4 | Determines how far forwards/backwards a hitbox is stretched. |
Set Weight | Smash 4 | Determines whether a hitbox considers the target's weight when knockback is calculated. |
Set Gravity | Smash 4 | Determines whether a hitbox considers the target's gravity when knockback is calculated. |
Set Falling speed | Smash 4 | Determines whether a hitbox considers the target's falling speed when knockback is calculated. |
Shieldstun multiplier | Ultimate | Changes the amount of Shieldstun the hitbox does to a shielding opponent. |
Hitstun modifier | Ultimate | Changes the amount of Hitstun the hitbox does when hitting an opponent. |
Trapbox
In Melee, a trapbox is the hitbox left on the ground during Ness' yo-yo glitch. It is called a trapbox because this hitbox is not attached at all to any kind of attack but instead just sits wherever it was when the glitch occurred. Using a new attack will overwrite the hitbox with the new attack's properties and relocate it to the new attack, which due to the interframe stretching effect will cause it to hit everything between it and Ness.
Trivia
- In SSB, grabs are normal hitboxes with no apparent mechanism for distinction from attacks. In Melee, grab hitboxes and inert hitboxes are 0%-damage hitboxes with "grab" or "inert" for an effect. Both grabs and inert hitboxes are separate objects in Brawl and SSB4, though in rare cases a 0%-damage hitbox is used as an inert one.
- The single largest hitbox in Melee can be found when Raikou is released from a Poké Ball.
- Because characters enter a recoil animation upon being hit, pausing the game during the freeze frames can make it appear as if the attack's hitboxes are misaligned or too large.
Gallery
The hitboxes of Kirby's forward tilt, with Kirby's collision boxes, in the original game.
An example of a hack used to show the hitboxes of Toon Link's Spin Attack in Brawl.