Juggling

From mugen-net
Revision as of 14:31, 2 January 2021 by Jesuszilla (talk | contribs) (→‎Overriding M.U.G.E.N's Juggle system: Bolded for emphasis)
Jump to navigation Jump to search

Juggling is a mechanic in fighting games that refers to the ability to hit an airborne opponent who is falling. To prevent infinite combos, a juggle system (often referred to as a "juggle limiter") is implemented. M.U.G.E.N provides an implementation for a juggle system through use of "juggling points," but it's known to not work properly and generally not do what the programmer expects it to. Combined with the fact that there is no one-size-fits-all juggling solution, creators usually opt to forego M.U.G.E.N's juggle system entirely and implement it on their own.

Overriding M.U.G.E.N's Juggle system

Any replacement for M.U.G.E.N's juggling system should always have this in its implementation in one of the character's negative states:

[State -2, Kill Juggle Checking]
type = AssertSpecial
trigger1 = 1
flag = NoJuggleCheck

As the snippet implies, this disabled M.U.G.E.N's juggle checking entirely, meaning that the enemy can be hit at any moment in the air. After this, it is up to the programmer to decide the juggling rules for their system. As mentioned before, there is no universal solution; BlazBlue handles juggling differently from King of Fighters 98, and so on.

In the majority of systems, players who are in the recovery animation (5040) can never be juggled. However, some fighters do allow for this, so outside of a full game, do not override the air recovery state to be invincible. It's considered rude to break other people's systems, and only complicates things for the developer as they try to search for a solution to a problem they didn't create.

Limiting Metrics for Juggling

There are two large metrics that can be used to determine when an opponent can be juggled: juggle points, and timers.

Timers

Timers are by far the most common method and allow the most flexibility. However, they are more prone to infinites on their own because any juggle is valid so long as the next hit occurs within the time window reset by the last hit. For this reason, some games (such as Vampire Savior) go for a combination method that also utilizes points in order to limit more specific moves.

In a timer juggle system, a timer variable is set to some arbitrary number of ticks when an airborne opponent is hit. Any move that can manage to connect to the opponent within the time limit results in a juggle. When the timer runs out, the opponent can no longer be hit in the air, preventing the combo from continuing any further (assuming there are no other weird reset rules). This variable may or may not reset the timer with each hit (though typically it does reset).

Points

Points are the second most common method, and typically used in conjunction with a timer to form a complete juggling system. There are many possibilities to the rules of a point-based juggle system, and not all can be covered here.

The basic idea, however, is that each move is assigned a certain amount of "points" that are required for the move to hit. When the opponent is hit by a move, the points assigned to the move are subtracted from the initial value in each subsequent hit. When there are not enough points for the juggle, the move will not hit. Juggle points can be arbitrarily assigned; the limit may be as simple as the number of total hits allowed in the air after a particular move connects, and each point can be a hit.