LXP2.1 - Ganon-Mage - Subaction - AttackAirHi

| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 |

Stats

IASA: None
Auto Cancel Window: 1-9, 39-60
Auto Cancel Lag: 5
Landing Lag: 22
Landing Lag (L-Cancel): 11
Hitboxes active: 10-20
Hitbox set 0 hits: 10
Subaction Index: 0x49

Hitboxes

Move staling reduces damage up to 45%. Move staling also reduces final knockback, shieldstun and hitlag because damage is used in their formulas.

Frames:10-16

Set ID Dmg BKB KBG Angle Effect Sound Clang Hitlag Mult Shield Dmg Shieldstun Hitlag Targets
0 1 10 96 22 80 Electric Shock false 1 9 6 6
0 4 10 37 118 90 Electric Shock false 2 9 6 12
0 5 9 37 55 80 Electric Shock false 1 9 6 5
0 6 9 37 55 80 Electric Shock false 1 9 6 5

Frames:17-20

Set ID Dmg BKB KBG Angle Effect Sound Clang Hitlag Mult Shield Dmg Shieldstun Hitlag Targets
0 1 10 96 22 80 Electric Shock false 1 9 6 6
0 2 15 61 90 90 Electric Unique false 1.8 8 8 14
0 4 10 37 118 90 Electric Shock false 2 9 6 12
0 5 9 37 55 80 Electric Shock false 1 9 6 5
0 6 9 37 55 80 Electric Shock false 1 9 6 5

Scripts

Main

  1. UnknownEvent { namespace: 0x11, code: 0x15, unk1: 0x0, arguments: [Value(24969236), Bool(true), Bool(true)] }
  2. RemoveFlashEffect
  3. AsyncWait(9.0)
  4. BoolVariableSetTrue { variable: RandomAccessBool(EnableLandingLag) }
  5. CreateHitBox(HitBoxArguments { bone_index: 2, hitbox_id: 1, set_id: 0, damage: Constant(10.0), trajectory: 80, wdsk: 0, kbg: 22, shield_damage: 9, bkb: 96, size: 6.0, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, tripping_rate: 0.0, hitlag_mult: 1.0, sdi_mult: 1.0, effect: Electric, unk1: false, sound_level: 1, unk2: false, sound: Shock, unk3: 0, ground: true, aerial: true, unk4: 0, sse_type: Hand, clang: false, unk5: true, direct: true, unk6: 0 })
  6. CreateHitBox(HitBoxArguments { bone_index: 0, hitbox_id: 4, set_id: 0, damage: Constant(10.0), trajectory: 90, wdsk: 0, kbg: 118, shield_damage: 9, bkb: 37, size: 6.0, x_offset: 0.0, y_offset: 17.5, z_offset: 0.0, tripping_rate: 0.0, hitlag_mult: 2.0, sdi_mult: 1.0, effect: Electric, unk1: false, sound_level: 1, unk2: false, sound: Shock, unk3: 0, ground: true, aerial: true, unk4: 0, sse_type: Hand, clang: false, unk5: true, direct: true, unk6: 0 })
  7. CreateHitBox(HitBoxArguments { bone_index: 0, hitbox_id: 5, set_id: 0, damage: Constant(9.0), trajectory: 80, wdsk: 0, kbg: 55, shield_damage: 9, bkb: 37, size: 6.0, x_offset: 0.0, y_offset: 13.0, z_offset: 7.5, tripping_rate: 0.0, hitlag_mult: 1.0, sdi_mult: 1.0, effect: Electric, unk1: false, sound_level: 1, unk2: false, sound: Shock, unk3: 0, ground: true, aerial: true, unk4: 0, sse_type: Hand, clang: false, unk5: true, direct: true, unk6: 0 })
  8. CreateHitBox(HitBoxArguments { bone_index: 0, hitbox_id: 6, set_id: 0, damage: Constant(9.0), trajectory: 80, wdsk: 0, kbg: 55, shield_damage: 9, bkb: 37, size: 6.0, x_offset: 0.0, y_offset: 13.0, z_offset: -7.5, tripping_rate: 0.0, hitlag_mult: 1.0, sdi_mult: 1.0, effect: Electric, unk1: false, sound_level: 1, unk2: false, sound: Shock, unk3: 0, ground: true, aerial: true, unk4: 0, sse_type: Hand, clang: false, unk5: true, direct: true, unk6: 0 })
  9. CreateHitBox(HitBoxArguments { bone_index: 0, hitbox_id: 7, set_id: 0, damage: Constant(7.0), trajectory: 80, wdsk: 0, kbg: 64, shield_damage: 9, bkb: 37, size: 7.5, x_offset: 0.0, y_offset: 4.5, z_offset: 0.0, tripping_rate: 0.0, hitlag_mult: 1.0, sdi_mult: 1.0, effect: Electric, unk1: false, sound_level: 1, unk2: false, sound: Shock, unk3: 0, ground: true, aerial: true, unk4: 0, sse_type: Hand, clang: false, unk5: true, direct: true, unk6: 0 })
  10. loop 7 times:
    1. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: -2, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.8, randomize: None, terminate_with_animation: false })
    2. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 17, bone: -2, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.35, randomize: None, terminate_with_animation: false })
    3. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 16, bone: 2, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.5, randomize: None, terminate_with_animation: false })
    4. SyncWait(1.0)
  11. CreateHitBox(HitBoxArguments { bone_index: 2, hitbox_id: 2, set_id: 0, damage: Constant(15.0), trajectory: 90, wdsk: 0, kbg: 90, shield_damage: 8, bkb: 61, size: 6.5, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, tripping_rate: 0.0, hitlag_mult: 1.8, sdi_mult: 1.0, effect: Electric, unk1: false, sound_level: 0, unk2: false, sound: Unique, unk3: 0, ground: true, aerial: true, unk4: 0, sse_type: Hand, clang: false, unk5: true, direct: true, unk6: 0 })
  12. AsyncWait(20.0)
  13. if (HasAFloorBelowThePlayer scalar(20000))
    1. IfStatementAnd (not(HasAFloorBelowThePlayer scalar(40)))
    2. IntVariableSubtract { variable: LongtermAccessInt (0x5c), value: 9 }
  14. else
    1. if (HasAFloorBelowThePlayer scalar(40.1))
      1. IfStatementAnd (not(HasAFloorBelowThePlayer scalar(0)))
      2. IntVariableSubtract { variable: LongtermAccessInt (0x5c), value: 1 }
    2. else
      1. IntVariableSubtract { variable: LongtermAccessInt (0x5c), value: 9 }
  15. if ((LongtermAccessInt (0x5c) LessThanOrEqual value(0)))
    1. BoolVariableSetTrue { variable: LongtermAccessFloat (0x51) }
  16. DeleteAllHitBoxes
  17. RemoveFlashEffect
  18. AsyncWait(38.0)
  19. BoolVariableSetFalse { variable: RandomAccessBool(EnableLandingLag) }
  20. AsyncWait(43.0)
  21. loop 11 times:
    1. if (ButtonPress value(0))
      1. IfStatementAnd (not(Unknown(54) value(24)))
      2. IntVariableSet { variable: LongtermAccessInt(JumpsUsed), value: 2 }
      3. if ((InternalConstantInt(ControlStickXAxisAbsolute) LessThan InternalConstantInt (0xc5c)))
        1. IfStatementAnd ((InternalConstantInt(ControlStickYAxisAbsolute) LessThan InternalConstantInt (0xc5d)))
        2. ChangeSubactionRestartFrame(CliffCatchPortal)
        3. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(14)] }
      4. else
        1. if (StickDirectionPressed)
          1. if ((InternalConstantInt(ControlStickXAxisRelative) GreaterThanOrEqual scalar(0)))
            1. ChangeSubactionRestartFrame(LandingFallSpecial)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(15)] }
          2. else
            1. ChangeSubactionRestartFrame(AttackAirB)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(16)] }
        2. else
          1. if ((InternalConstantInt(ControlStickYAxis) GreaterThanOrEqual scalar(0)))
            1. ChangeSubactionRestartFrame(AttackAirHi)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(17)] }
          2. else
            1. ChangeSubactionRestartFrame(AttackAirLw)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(18)] }
      5. DisableInterruptGroup(AirSpecial)
      6. DisableInterrupt(10146)
      7. DisableInterrupt(10148)
      8. DisableInterrupt(10149)
      9. EnableInterrupt(10028)
      10. UnknownEvent { namespace: 0x4, code: 0x1, unk1: 0x0, arguments: [Value(22), Requirement { flip: false, ty: AnimationEnd }] }
    2. SyncWait(1.0)
  22. CreateInterrupt { interrupt_id: None, action: 0x120, requirement: (not(BoolIsTrue LongtermAccessFloat (0x51))) }

GFX

  1. AsyncWait(3.0)
  2. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 38, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.7, randomize: None, terminate_with_animation: false })
  3. loop 5 times:
    1. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 16, bone: 38, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.2, randomize: None, terminate_with_animation: false })
    2. SyncWait(1.0)
  4. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 38, x_offset: 0.0, y_offset: 0.0, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.7, randomize: None, terminate_with_animation: false })
  5. AsyncWait(12.0)
  6. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 0, x_offset: 0.0, y_offset: 25.1, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.65, randomize: None, terminate_with_animation: false })
  7. SyncWait(1.0)
  8. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 0, x_offset: 0.0, y_offset: 27.1, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.7, randomize: None, terminate_with_animation: false })
  9. SyncWait(1.0)
  10. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 0, x_offset: 0.0, y_offset: 29.6, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.75, randomize: None, terminate_with_animation: false })
  11. SyncWait(1.0)
  12. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 0, x_offset: 0.0, y_offset: 30.9, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.85, randomize: None, terminate_with_animation: false })
  13. SyncWait(1.0)
  14. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 0, x_offset: 0.0, y_offset: 35.2, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 0.95, randomize: None, terminate_with_animation: false })
  15. SyncWait(1.0)
  16. ExternalGraphicEffect(ExternalGraphicEffect { file: 0, graphic: 19, bone: 0, x_offset: 0.0, y_offset: 40.7, z_offset: 0.0, x_rotation: 0.0, y_rotation: 0.0, z_rotation: 0.0, scale: 1.1, randomize: None, terminate_with_animation: false })
  17. SyncWait(3.0)
  18. UnknownEvent { namespace: 0x11, code: 0x15, unk1: 0x0, arguments: [Value(19), Bool(true), Bool(true)] }
  19. AsyncWait(24.0)

SFX

  1. BoolVariableSetFalse { variable: LongtermAccessInt (0x54) }
  2. BoolVariableSetFalse { variable: LongtermAccessInt (0x55) }
  3. IntVariableSet { variable: LongtermAccessInt (0x63), value: 0 }

Other

  1. BoolVariableSetFalse { variable: LongtermAccessInt (0x54) }
  2. BoolVariableSetFalse { variable: LongtermAccessInt (0x55) }
  3. BoolVariableSetFalse { variable: LongtermAccessFloat (0x51) }
  4. loop Infinite times:
    1. if (ButtonPress value(2))
      1. IfStatementOr (ButtonRelease value(2))
      2. BoolVariableSetTrue { variable: LongtermAccessFloat (0x51) }
      3. IntVariableSet { variable: LongtermAccessInt (0x63), value: 0 }
    2. SyncWait(0.1)
    3. CreateInterrupt { interrupt_id: None, action: 0x120, requirement: (AnimationEnd) }
    4. PreviousInterruptAddRequirement(not(BoolIsTrue LongtermAccessFloat (0x51)))
  5. AsyncWait(9.0)