Puppet Ganon

is a in . The three-stage battle is a precursor to the finale with atop .
==Characteristics==
===First Form: Humanoid Boar===
's first form, Humanoid Boar, is reminiscent of 's boar-like beast form. 's movement is restricted; his appendages hang from the ceiling by cords. damages by spinning his tail and flailing his arms, and by releasing as a distraction. can cut the cords with the , similar to the battle with in the . After cuts all blue cords attached to , he hangs suspended on the central red cord, dragging the ground. To damage , must shoot a at the blue ball at the end of 's tail to damage him. However, the blue ball is always revealed to , so cutting the cords is not required. After three hits, changes form.
 
===Second Form: Bug-Ganon===
's second form, Bug-Ganon, resembles a large spider; he flies up to the top of the room periodically, spinning rapidly before crashing back down above 's latest position. While in the air, can use the shallow water in the room as a mirror to see where will fall. Once again, must shoot a at the blue ball on 's body to damage him. After three hits, changes form again.
===Final Form: Worm===
The final form of , Worm, is reminiscent of the many iterations of throughout the series. moves erratically around the room, gaining speed each time strikes the blue ball at the end of his tail with a . is stunned whenever attacks his face with the , , or the , and becomes distracted at the sight of . When the bait is thrown, quickly moves towards it, damaging if he is in the way. may best if he uses the to reach high platforms in the room. With this method, may shoot without fear of damage.
After three hits to this form, is defeated, and turned back to Ganondorf. After defeating the final form of , climbs the room's central cord after Ganondorf to the tower's rooftop ; it is here that he faces again for the final time.
==Trivia==
*'s second form vaguely resembles the Ushi-Oni from Japanese folklore.
==Nomenclature==
==Gallery==
File:Puppetsnake.jpg|'s snake form being shot with a in