In the first Super League meeting between the teams, York looked the more confident early on, but O’Brien escaped away from Ata Hingano’s tackle to score the first try against the run of play.
The hosts were then given a reprieve when Lachlan Lam was called offside when touching the ball down after it had ricocheted around following Edwin Ipape’s kick through.
York rallied to respond, with Va’a crashing over for their first score.
Myles Harrison then converted with his first points in Super League to make it 6-6 with half an hour played.
But the scores were not level for long, as Va’a was sin-binned after a late shoulder tackle on O’Brien, and Adam Cook slotted the penalty between the posts.
Some home fans were surprised not to see a further card when Leopards’ Joe Ofahengaue appeared to make contact with Sam Cook’s head, but nothing was given.
One positive for the hosts was the return from injury of the energetic full-back David Nofoaluma, who made a try-saving tackle to thwart visiting winger AJ Towse.
But Charnley made amends on the right-hand side when he found space to break York’s back line and crash over, with Alick-Wiencke powering through for a try moments later.
The Knights tried to cut the deficit late on, but prop Paul Vaughan grounded the ball just short of the line.
Adrian Lam’s side may not have been spectacular on the night, but their pressure was unrelenting for long spells, allowing them to claim a third win of the season, following home victories over Leeds Rhinos and Toulouse.


