Preston North End had to battle back to earn a draw against Bristol City in a thrilling game at Deepdale.
The visitors took a 2-0 lead through goals from Taylor Moore and Andreas Weimann, both of which had a hint of controversy about with fouls in the build-up.
But Paul Gallagher scored from the penalty spot in first-half stoppage-time to give North End a way back into the game.
Daniel Johnson then equalised, again with a penalty, five minutes into the second half.
The hard work of getting back level was thrown away just past the hour mark when Nathan Moore put the Robins back in front.
Another set-piece proved their undoing, a free-kick leading to Moore's goal and corners for the first two.
North End dug deep and equalised again in the 71st minute, Patrick Bauer heading home his first PNE goal from a Joe Rafferty cross.
Alex Neil had reverted back in the main to the side who had won at Birmingham last week after ringing the changes for Tuesday night's Carabao Cup defeat to Manchester City,
The one change was Joe Rafferty coming in at left-back for Andrew Hughes.
There were good chances at both ends in the opening quarter of an hour, Weimann getting behind the Preston defence in the ninth minute and driving a low ball across the six-yard box which Darnell Fisher was forced to put behind at the far post.
Ben Davies got in the way of a shot from Han-Noah Massengo to head it out for a corner, then Rudd dived to parry a shot from Antoine Semenyo.
North End came close to taking the lead on the counter-attack, Davies' clearance down the left channel chased by Tom Barkhuizen.
He fed the ball inside to Josh Harrop who took the ball towards the box and probably should have shot, instead playing it to Sean Maguire on the right-hand side of the box.
Maguire pulled the trigger, seeing his shot fly into the side-netting.
The game swung the visitors' way with two goals in the space of eight minutes, North End protesting about fouls for both.
In the 29th minute, Rudd went up at the far post to try and claim Tommy Rowe's deep corner from the right.
Moore seemed to pull his arm and went the ball dropped in the six-yard box, Moore spun to stab the ball over the line from close range.
It was as advantage the Robins stretched in the 37th minute, Johnson appearing to get a shove from Moore as he tracked a Josh Brownhill corner.
The push saw him collide with Rudd and Weimann rose to loop a header into the net.
North End's players, including Rudd, followed referee Andy Davies back to the half-way line to protest but the goal stood.
Tempers became stretched in the few minutes after the goal, Fisher booked for a foul and there being a couple of other flash points.
Five minutes of stoppage-time was signalled at the end of the first half and a minute of those had been played when North End pulled a goal back.
Johnson was tripped in the box by Massengo as he tried to turn the midfielder and Mr Davies pointed to the spot.
Gallagher took the spot-kick, driving his penalty low and hard past keeper Daniel Bentley.
A second penalty awarded five minutes into the second half brought Preston level.
Barkhuizen's pass fed Maguire down the right channel, the Irishman's cross into the box striking Ashley Williams on the arm.
This time it was Johnson who took the penalty, sending Bentley the wrong way from the spot with a low left-footed effort.
North End were only level until the 61st minute though, as City regained the lead - the warning signs had been there in the shape of three good chances for the visitors since the equaliser.
Brownhill's free-kick into the box was headed down at the far post and when PNE failed to deal with the bouncing ball, Moore fired a shot under Rudd.
Neil introduced Alan Browne and David Nugent in a double substitution straight after that goal, Gallagher and Harrop the men to give way.
Preston made it 3-3 in the 71st minute after a Ben Pearson cross was headed out for a corner by the Bristol City defence.
Johnson rolled the flag kick shot to Joe Rafferty on the left hand corner of the box, the left-back delivering a cross to the far post where Bauer rose to head home.
Nugent saw a shot from the edge of the box go wide while City had the ball in the net in the 82nd through substitute Famara Diedhiou but he was penalised for a foul on Bauer and the effort was chalked off - former PNE man Brownhill was booked for taking his protests too far.
In the closing stages play swung from end to end with both sides looking for a winner.
Substitute Josh Ginnelly sent a shot wide late on but honours ended even.
PNE: Rudd, Fisher, Bauer, Davies, Rafferty, Pearson, Gallagher (Browne 62), Maguire (Ginnelly 80), Johnson, Harrop (Nugent 62), Barkhuizen. Subs (not used): Storey, Ledson, Potts, Ripley.
Bristol City: Bentley, Baker, Williams, Moore (Wakins 57), Brownhill, Semenyo (Diedhiou 57), Palmer (O'Dowda 62), Rowe, Weimann, Massengo. Subs (not used): Wright, Eliasson, Pereira, Maenpaa.
Referee: Andy Davies (Hampshire)
Attendance: 12,005 (735 away)