Penrith are within touching distance of a home final after upsetting a depleted Melbourne side 22-16, a result which also has ramifications for Storm's minor premiership hopes.
The Panthers arrested their poor form in back-to-back losses to the Knights and the Warriors with a handy five-tries-to-two win at AAMI Park.
Barring a huge win by Brisbane on Sunday the Panthers will host a final.
The result was good news for the Sydney Roosters. If they beat the Eels by 27 points on Saturday night they will pass Melbourne and claim the J.J. Giltinan Shield.
The Broncos and Dragons would need to enjoy big wins in their remaining games of round 25 to dislodge the Panthers from either fifth or sixth spot. And the Sharks would need to lose to the Bulldogs by 29 points for the Panthers to push their way into the top-four.
The Panthers had not won in Melbourne since 2005. But Friday night's win gave interim head coach Cameron Ciraldo his second win since taking over from Anthony Griffin a month ago.
Match: Storm v Panthers
Round 25 -
Venue: AAMI Park, Melbourne
Penrith had to scrap for their win and overcome two sin bins in the first half to Josh Mansour and James Tamou.
But doubles to both winger Mansour and centre Waqa Blake proved too much for Melbourne to overcome despite leading 10-6 at halftime.
The home side had four changes to their starting 13 losing both Cameron Munster and Brodie Croft to knee injuries, while fullback Billy Slater was away on compassionate leave.
That resulted in debutant Scott Drinkwater joining Ryley Jacks in the halves.
Cameron Smith opened the scoring with a penalty goal early but the Panthers hit back in the 14th minute through Mansour, who twisted his way over to score their first try and a 4-2 scoreline.
It seemed to spark the Storm into action as they quickened the pace around the ruck and played a more flowing style of football.
The first turning point came when Mansour was sin binned for a professional foul.
Felise Kaufusi made use of the Panthers' lack of numbers by fooling James Maloney with a dummy and crossed with 12 minutes left in the first half.
All those extra tackles took its toll on visitors' discipline, who at one stage conceded 10 penalties to the Storms two. The final count ended up 12-6 in the home side's favour.
Tamou paid the price in the 33rd minute and was sin binned for being offside - and the Panthers again were down to 12 men.
Smith kicked a couple of penalty goals while Cleary was having a highly inaccurate night with the boot. He landed only one from six attempts.
The Panthers fired out of the blocks in the second half with Mansour scoring his second down their left edge.
The travelling Penrith fans were on their feet again just minutes later when Maloney's cross-field kick bounced its way into Blake's clutches and a 14-10 lead.
Ryan Hoffman, who recovered weeks ahead of schedule from an injured hamstring, made it onto the ground in the 55th minute but couldn't halt the now emboldened Panthers.
Just as the Storm were pushing hard in attack, Blake extended the Panthers lead after following through a Cleary grubber in broken play to score his second.
Penrith winger Christian Chrichton's diving intercept - and subsequent 50-metre run to the tryline - extended the lead to 22-10 with only six minutes remaining.
Drinkwater scored a consolation try in the 75th minute but the Panthers hung on for a gutsy win and a likely home finals game.
News & Notes: 21-year-old Scott Drinkwater made his NRL debut for Storm becoming their #191 first grade player .. Storm forward Tim Glasby went for an HIA test after a heavy tackle from Jack Hetherington and didn't return ... Jesse Bromwich played his 100th game at AAMI Park becoming the second to do so after Cameron Smith ... Penrith hadn't won in Melbourne in eight attempts over 13 years ... Crowd: 20,637
Slick hands send Mansour over again