THE writing on the wall screamed out in neon blue across the empty stadium.

Mathematically the play-offs may still be on and Phil Parkinson stressed the desire to keep going to the last minute of the final game.

But over his shoulder the message glowed loud and clear from the electronic scoreboard: Gillingham 1 Bradford City 0.

That said everything you needed to know about an afternoon of huge missed opportunities.

When Parkinson faced the post-match press, he should have been talking about slashing the gap to sixth place to just four points.

He should have been talking about reeling in the bunch of clubs around them, none of whom won at the weekend.

He should have been talking about a final five-game gallop down the home straight and timing the run to perfection.

The word “should” cropped up plenty in his verdict, all right, but it was in that same frustrated sense that has become increasingly familiar. How City should have scored this or that, should have been out of sight by half-time, should have won this game at a canter.

Instead a third defeat in four games – and criminally a third blank in front of goal – meant an evening of navel-gazing for City and their fans on the long trek back north.

Not that the visitors didn’t have their scoring chances – they had oodles of them in a first half when Ben Williams could have joined the 311 hardy City souls sat behind his redundant goal.

A mixture of good defending, poor finishing and a big goalline call from the assistant referee maintained the stalemate. So what followed was entirely predictable.

You can question the formation – and James Hanson constantly being drawn to the left side to accommodate Billy Clarke’s bursts from the tip of the diamond certainly dilutes the big man’s effectiveness – but there were enough sights of goal to have removed any need for debate.

Hanson has now gone ten games without a goal after falling victim to two more clearances off the line – that’s three in a week.

Jon Stead felt he was harshly treated by the scrambling save by Glenn Morris, Gillingham’s man of the match, which looked borderline over. But the non-decision extended his current run to two goals in 12.

His form has not been the same since Sunderland. In that time, City have won only one of the seven games when the two big men have started.

Clarke was once again the pivotal performer and he twice went close. But his inclusion in that “number ten” role narrows the midfield and Filipe Morais appeared uncertain whether to stick or twist at times as he was pulled inside on City’s right.

The Portuguese looks at his most effective with “paint” on his boots when he can get out wide and take on the full back. When he linked with Stephen Darby in the first half to do that, he proved a constant headache for marker Amari Bell.

But after the break that threat diminished and he found himself tucked in too deep when receiving the ball from City’s skipper to cause similar problems.

Such discussions should be academic – there’s that word again.

From the moment that Morris pulled off a wonderful low save from Clarke, City had matters by the scruff of the neck.

Gillingham v City picture gallery

Doug Loft flicked Hanson’s goal-bound bullet over the bar, then striker Cody McDonald was back in his own six-yard box to thwart his opposite number once more.

The rebound from that block fell invitingly for Stead, only for Morris to drag himself across in time and get enough on the save to convince the watching officials that the ball was still in play.

Clarke produced a wonderful moment of skill to flick over a defender before volleying at goal, a la Gazza against Scotland in Euro ’96, and only the faintest of deflections lifted the ball on to the roof of the net rather than in it.

The half-time whistle brought much-needed respite for Morris and Co – and rekindled a familiar sinking feeling in the away dressing room.

The City onslaught extended into the opening exchanges after the restart. Rory McArdle and Hanson were both guilty of wasting free headers from corners as the Gills goal continued to live a charmed life.

Finally the home side stirred themselves for a first shot on target after 52 minutes. The momentum was slowly shifting – although there was the standard non-penalty for City when Gary MacKenzie was blatantly dragged to the ground.

But the game was turned on its head just after the hour when Gills boss Justin Edinburgh introduced his first changes.

John Marquis, the loan striker not good enough to get into Millwall’s team, made the sort of impact from the bench that City have not seen from Francois Zoko.

And he soon showed the goal-shy visitors exactly how it should be done with a thumping finish from the edge of the penalty area.

Gillingham were on course for a first home win in two months; stunned City could find nothing in response.

Darby’s goalline intervention denied Marquis a second after Williams had saved well from fellow sub Brennan Dickenson but the damage had been done.

Gillingham, such regular bedfellows down the years, will almost certainly provide a familiar name on next season’s fixtures.

City’s play-off ambitions now hinge on pooping Bristol City’s promotion party at Valley Parade tomorrow and beating the leaders. No challenge there, then.

Whatever transpires over these final three weeks, season 2014-2015 is guaranteed to be remembered for the incredible cup exploits.

The foundations are there for a real push in the league, maybe not now but certainly next year.

Afternoons like Saturday in furthest Kent will have reinforced Parkinson’s view of where he has to strengthen.

It’s blindingly obvious City need a natural goal-scorer but, contrary to what some think, there is not a tree which you can shake and poachers suddenly drop at your feet.

But 16 months on, they have still not filled the Nahki Wells hole. And while his expensive replacement sits in the dug-out of his first love Peterborough, that lack of a cutting edge has blunted any chance of a top-six finale.