Ocarina of Time
Damage Flag Corruption
Damage Flag Corruption (DFC) is a glitch that modifies of a collider's damage flags, which are used to determine what "types" of damage it applies (e.g. hammer swing, fire damage, etc.), between the time of the collision and the hit actor's next update. This is done by unloading the attacking actor and loading a new actor, all while the hit actor is in a "frozen" state (e.g. during a bottle emptying cutscene or playing the Ocarina). If the game was "frozen" while the collision was occurring, some actors will not have had a chance to handle the collision, and will reference the new actor's data for collision handling instead.
Technical explanation
Damage Flag Corruption exploits the fact that most actors will stop updating during some of Link's actions, such as using the Ocarina or using the contents of a bottle (the relevant player states are PLAYER_STATE1_28 and PLAYER_STATE1_29). For most actor categories, this happens immediately, on the same frame the button is pressed, because the player actor updates before most other actors.
If an actor's AC collider intersects with another's AT collider, but the player halts actors in some way on that frame before the hit actor can update, the collision will be registered and a reference to the AT collider will be stored to the AC collider (along with the AC_HIT flag being set), but the actor will not be able to update, handle the collision, and clear the flag/reference. This means that, upon the game "resuming", the actor will attempt to handle the collision then.
Damage Flag Corruption exploits this by unloading the "attacking" actor while the game is frozen (which is possible because many item/action actors either do not halt during these types of cutscenes or have special logic by which they are allowed to halt later into the cutscene). Unloading this actor causes the reference to its AT collider (which is still held by the receiving AC collider) to become stale, and loading a new actor at this time can overwrite and corrupt the dmgFlags data used in determining what properties a certain attack has (e.g. hammer, fire).
