Sinethemba Qeshile fell one run shy of a maiden century as the Warriors enjoyed a progressive third day of their 4-Day Domestic Series encounter against the Knights in Port Elizabeth on Wednesday.
The 19-year-old made 99 (187 balls, 12 fours) and was an integral part of the hosts adding 140 for the final three wickets to amass 457.
Lutho Sipamla then grabbed two wickets as the Knights reached stumps on 154 for four thanks to half-centuries by Luthando Mnyanda and Pite van Biljon - still trailing by 24 at St George's Park.
It capped another good day for the Eastern Cape franchise, who had started out on 329 for seven. Qeshile, playing in just his seventh first-class game, was batting with Sisanda Magala at the time and the Knights would have been hoping to roll them over quickly.
But the latter made 36 and added 87 for the eighth wicket before he departed, with the former following 30 runs later when he was one short of three figures - Proteas paceman Duanne Olivier the one to disappoint him when he had him caught at third slip by Keegan Petersen.
It was nonetheless an impressive innings and continued the growth of the rookie batsman after he smashed his previous best score of 69.
Anrich Nortje (16 not out) and Sipamla (11) then further frustrated the Central Franchise, before pick of the bowlers Olivier (4/119) ended the innings.
The same two Warriors bowlers also did it with the ball by getting rid of Grant Mokoena (1) and Petersen (15) to leave the Knights on 23 for two.
But they fought back through Mnyanda's 52 (105 balls, 8 fours, 1 six) which was part of a battling 85-run third wicket stand with Van Biljon.
Although the former fell with Rudi Second (7) following, Van Biljon remained unbeaten at stumps with his 58 (123 balls, 9 fours, 1 six) carrying the day four hopes of the Knights.