====================
Templates

* Use Screw Attack (Space Jump):
      Morph Ball and Space Jump Boots and Screw Attack

* Use Screw Attack (No Space Jump):
      Morph Ball and Screw Attack

* Shoot Dark Beam:
      All of the following:
          Dark Beam
          Charge Beam or Dark Ammo

* Shoot Light Beam:
      All of the following:
          Light Beam
          Charge Beam or Light Ammo

* Shoot Annihilator Beam:
      All of the following:
          Annihilator Beam
          Any of the following:
              Charge Beam
              Dark Ammo and Light Ammo

* Shoot Darkburst:
      Dark Beam and Darkburst and Charge Beam and Missile ≥ 5 and Dark Ammo ≥ 30

* Shoot Sunburst:
      Light Beam and Sunburst and Charge Beam and Missile ≥ 5 and Light Ammo ≥ 30

* Shoot Sonic Boom:
      Annihilator Beam and Sonic Boom and Charge Beam and Missile ≥ 5 and Dark Ammo ≥ 30 and Light Ammo ≥ 30

* Activate Bomb Slot without Bombs (Space Jump):
      All of the following:
          Morph Ball and Space Jump Boots
          Shoot Darkburst or Shoot Sonic Boom

* Activate Bomb Slot without Bombs (No Space Jump):
      All of the following:
          Morph Ball
          Shoot Darkburst or Shoot Sonic Boom

* Activate Bomb Slot without Bombs (Instant Morph):
      All of the following:
          Morph Ball
          Shoot Darkburst or Shoot Sonic Boom or Shoot Sunburst

* Activate Safe Zone:
      All of the following:
          Enabled Safe Zone
          Power Beam or Shoot Annihilator Beam or Shoot Light Beam

* Has Suit:
      Dark Suit or Light Suit

* Kill Quad MB:
      All of the following:
          Morph Ball
          Any of the following:
              Boost Ball
              All of the following:
                  Combat (Beginner)
                  Morph Ball Bomb or Power Bomb
              Knowledge (Beginner) and Use Screw Attack (Space Jump)

====================
Dock Weaknesses

> DockType.DOOR
  * (0) Normal Door; Lock type: FRONT_ALWAYS_BACK_FREE
      Trivial

  * (1) Dark Door; Lock type: FRONT_ALWAYS_BACK_FREE
      Shoot Dark Beam

  * (2) Light Door; Lock type: FRONT_ALWAYS_BACK_FREE
      Shoot Light Beam

  * (3) Annihilator Door; Lock type: FRONT_ALWAYS_BACK_FREE
      Shoot Annihilator Beam

  * (4) Missile Blast Shield; Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Missile

  * (5) Super Missile Blast Shield; Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Power Beam and Super Missile and Charge Beam and Missile ≥ 5

  * (6) Seeker Launcher Blast Shield (destructible with Screw Attack; Expert); Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Any of the following:
          All of the following:
              Seeker Launcher
              Combat Visor or Dark Visor
              Any of the following:
                  Missile ≥ 5
                  Missile ≥ 4 and Knowledge (Intermediate) and Use Screw Attack (Space Jump)
          Missile and Seeker Locks without Seeker Missiles (Expert) and Use Screw Attack (Space Jump)

  * (7) Power Bomb Blast Shield; Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Morph Ball and Power Bomb

  * (8) Permanently Locked; Lock type: FRONT_ALWAYS_BACK_FREE
      Impossible

  * (9) Seeker Launcher Blast Shield (underwater; destructible by Screw Attack; Expert); Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Any of the following:
          All of the following:
              Seeker Launcher
              Combat Visor or Dark Visor
              Any of the following:
                  Missile ≥ 5
                  Missile ≥ 4 and Air Underwater (Advanced) and Knowledge (Intermediate) and Use Screw Attack (Space Jump)
          Missile and Air Underwater (Advanced) and Seeker Locks without Seeker Missiles (Expert) and Use Screw Attack (Space Jump)

  * (10) Power Bomb Blast Shield (destructible by Power Bomb Guardian); Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Any of the following:
          After Undertemple Blast Shield Destroyed by PB Guardian
          Morph Ball and Power Bomb

  * (11) Seeker Launcher Blast Shield (destructible with Screw Attack; Hypermode); Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Any of the following:
          All of the following:
              Seeker Launcher
              Combat Visor or Dark Visor
              Any of the following:
                  Missile ≥ 5
                  Missile ≥ 4 and Knowledge (Intermediate) and Use Screw Attack (Space Jump)
          Missile ≥ 2 and Seeker Locks without Seeker Missiles (Hypermode) and Use Screw Attack (Space Jump)

  * (12) Seeker Launcher Blast Shield (destructible with Screw Attack; Advanced); Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Any of the following:
          All of the following:
              Seeker Launcher
              Combat Visor or Dark Visor
              Any of the following:
                  Missile ≥ 5
                  Missile ≥ 4 and Knowledge (Intermediate) and Use Screw Attack (Space Jump)
          Missile and Seeker Locks without Seeker Missiles (Advanced) and Use Screw Attack (Space Jump)

  * (13) Seeker Launcher Blast Shield (destructible with Screw Attack; Expert; 2 Missiles); Lock type: FRONT_BLAST_BACK_FREE_UNLOCK
      Any of the following:
          All of the following:
              Seeker Launcher
              Combat Visor or Dark Visor
              Any of the following:
                  Missile ≥ 5
                  Missile ≥ 4 and Knowledge (Intermediate) and Use Screw Attack (Space Jump)
          Missile ≥ 2 and Seeker Locks without Seeker Missiles (Expert) and Use Screw Attack (Space Jump)

> DockType.MORPH_BALL_DOOR
  * (0) Morph Ball Door; Lock type: FRONT_ALWAYS_BACK_FREE
      Morph Ball

> DockType.OTHER
  * (0) Other Door; Lock type: FRONT_ALWAYS_BACK_FREE
      Trivial

> DockType.PORTAL
  * (0) Scan Portal; Lock type: FRONT_ALWAYS_BACK_FREE
      Scan Visor

  * (1) Dark Portal; Lock type: FRONT_ALWAYS_BACK_FREE
      Shoot Annihilator Beam or Shoot Dark Beam

  * (2) Light Portal; Lock type: FRONT_ALWAYS_BACK_FREE
      Shoot Annihilator Beam or Shoot Light Beam

  * (3) No Return Portal; Lock type: FRONT_ALWAYS_BACK_FREE
      Impossible

  * (4) Unknown Portal Type; Lock type: FRONT_ALWAYS_BACK_FREE
      Trivial
