On tonight's episode of "Arrow," -- "Code of Silence" -- Oliver and Captain Lance wrestled with keeping secrets from the women that they love. Lance had to decide if he was going to be honest with Donna about working with Damien Darhk, and Oliver had to figure out if it was safe to tell Felicity about his son, William. Both Oliver and Lance thought they were hiding the truth to keep the people that they loved safe. As each of them learned, secrets have a way of revealing themselves, and one secret in particular fell into the hands of Damien Darhk, which set up the dangerous obstacle for Team Arrow in next week's episode, "Taken."

Tonight's episode of "Arrow" was less about a villain of the week, and more about seeing where the team was, after the hellish events of the last few weeks. Oliver (Stephen Amell) was still running for mayor of Star City and had to prepare for his first live debate with Damien Darhk's (Neal McDonough) wife, Ruve Adams (Janet Kidder.) Oliver and Felicity (Emily Bett Rickards) were still planning on getting married, so Felicity's mom, Donna Smoak (Charlotte Ross) threw them an engagement party. Captain Lance (Paul Blackthorne) was still running the Star City Police Department and dating Donna, and he had to decide if he could do both, safely. Lastly Malcolm Merlyn (John Barrowman) was still shacking up with Darhk, and Darhk was bidding his time on when to put his plan to kidnap Oliver's son William in motion.

Oliver's debate with Ruve went well, though it was interrupted by Darhk's gang of thugs who intended to blow it up. Thankfully Team Arrow came prepared, and they were able to take out the thugs and disable the chemical bombs without causing harm to anyone. These thugs had previously been practicing their building demolishing skills on both Captain Lance and Team Arrow, earlier in the episode when they tried to kill Captain Lance. When Lance and Laurel (Katie Cassidy) went to check out a simple breaking and entering call, the building began to collapse on Lance. They figured out very quickly that this was Darhk putting a hit out on Lance's life because he had defected to work with Team Arrow. This moment of peril is what caused Lance to push away Donna, who he had been dating for the last few months. When he talked to Felicity about what to do, he thought lying to Donna was the best course of action, to keep her out of harms way. Donna took this a sign that another man in her life was lying to her, and she walked out on Lance. Thankfully Lance came clean to her -- about working for Darhk, about lying to her -- and she was able to forgive him.

Lance was able to break his "code of silence" in this episode, and it ended up strengthening his relationship with Donna. Oliver, on the other hand, kept his silence, and refused to tell Felicity about the existence of his son, William. Up until this episode Oliver had only told Barry, and that was before Barry fixed the time stream in "The Flash"/"Arrow" crossover episode. Tonight, when Thea (Willa Holland) was investigating the Queen Consolidated's finances, she found the check that Moira Queen wrote to Samantha back when Oliver was in college. Thea, being the smart woman that she is, figured out that Samantha and Oliver had a son together, and that Oliver found out while they were in Central City. Oliver told Thea that he wanted to tell Felicity, but Thea actually defended Samantha's wish, saying that instead of this being a lie, it was a promise, not to keep something from Felicity, but to protect William.

The episode also shed some light on H.I.V.E.'s plans for Star City. According to one of the members of H.I.V.E., phase four was well underway, and phase five required the control of City Hall. While the criminal organization did not expect Oliver to run, Darhk was confident that his wife could win the election. The episode also revealed another level of Darhk's powers. He was able to kill a man from over 3,000 miles away, via web conference. That begs the question, just how powerful is Darhk, and from where is he deriving his power?

The episode concluded with Donna throwing Oliver and Felicity an amazing engagement party. Felicity's friends were able to drive in from Ivy City, Donna and Lance reconciled, and Curtis (Echo Kellum) presented them with the best engagement present anyone could ask for. Curtis built Felicity a spinal stimulation chip that would help her walk again, which means she could have the strength to walk down the aisle (cue the tears!) Oliver even called Curtis "terrific" when he told him thank you. That's a nice little Mr. Terrific easter egg. Sadly not everything ended that well. Darhk's last move in the episode was to kidnap William. William and Darhk's daughter ending up playing together, which on the bright side, means Darhk has no intention to hurt William, but to use him as leverage to get Oliver to drop out of the race and leave Star City. Unfortunately, if Oliver chooses not to back out of the race, William or his mother Samantha could get caught in the crossfire and end up in the grave.

Next week Team Arrow must find and rescue William. Oliver will be forced to tell Felicity the truth, and the team will recruit Vixen to track them. "Taken" - "Vixen Joins Team Arrow - Oliver realizes he needs help battling Darhk so he calls in an old friend - Vixen (guest star Megalyn E.K.). Using her magical ability to summon animal powers, Vixen gets a lock on Darhk's location and the team goes to war. Meanwhile, Thea has a heart-to-heart talk with Malcolm. "

"Arrow" airs Wednesdays at 8 p.m. on The CW.