'Once Upon a Time' Season 6 Episode 13 Spoilers, News: Hook's secret discovered, 'Walking Dead' alum joins cast

Robin (guest star Sean Maguire) and Zelena (Rebecca Mader) forge a dangerous alliance, while Emma (Jennifer Morrison) discovers that Hook (Colin O'Donoghue) is keeping a secret from her in the upcoming episode of ABC's "Once Upon a Time" season 6.

Titled "Ill-Boding Patterns," next week's episode will see Mr. Gold (Robert Carlyle) take action to protect Gideon (guest star Giles Matthey) from the taint of dark magic. According to the official synopsis, Gideon decides to resume his mission to kill Emma and become the Savior. However, Mr. Gold steps in to make sure that his son won't be poisoned by dark magic.

Promotional image for ABC's fantasy drama "Once Upon a Time"Facebook/OnceABC

Elsewhere in the hour, Robin is desperate to escape from Regina (Lana Parrilla) and Storybrooke, so he is willing to ally himself with anyone that can help him get out of the magical town. Hook finally musters up the courage to come clean to Emma, only to realize that she already knows his secret. In a flashback to Fairy Tale Land, Beowulf (Torstein Bjørklund) targets Rumplestiltskin (also played by Carlyle) after the Dark One uses his power to take down enemies and win the war for all humanity.

The fantasy drama will wrap up its sixth season in April by introducing a new character, to be played by "The Walking Dead" alum Andrew J. West. The actor is set to appear in the upcoming finale as a guest star, but details on his role are still being kept under wraps. Although West's character only has a brief stint this season, he will become a key player in the story should the "Once Upon a Time" get another full-season order from ABC.

Aside from portraying Gareth in AMC's zombie drama, West is known for his roles in "Dead of Summer," "Greek" and "Under the Dome."

The sixth season of "Once Upon a Time" airs every Sunday at 8 p.m. EDT on ABC.