Defending a sacrificial attack


I made the same mistake white did before. That sacrifice is premature. Black has enough material to defend it's king. White's king is not well protected. White chases black king around for a while, but what he actually does is creating more weakness for himself. I tried it myself in the past and got mated.


You made a mistake on move 20, throwing away a better position for a draw. After 20...Qf8, 21. Rg1! looks very powerful. White would have a perpetual check at worst. Two alternatives to 20...Qf8 are 20...Ng4, intending to give back a piece in a better manner and head into a complicated Exchange-up position, and 20...Qe6(!!), with the point being that 21. Bxf6 Qc4+ starts an attack for Black! Fortunately for you, your opponent overlooked Rg1 and allowed his attack to sputter.

Does 19.. Kh8 20. Bg5 ng8!? work? Offering a queen less middle game with him down the exchange for a pawn. If he declines you can play f6 with a good defensive set up.

Didn't white's weaknesses decide the game anyway? So what is the purpose of this sacrifice? Opening G file? And then what?
Don't you think white would have a better chance if he coordinated his pieces with his weak spots instead of mobilizing all his pieces for an attack he can not complete? Unless there is a clear path to mate, sacrificing more pieces makes white's position even weaker.
If we look at the position after move 21, I don't see a way for white to deliver the final hit, do you see it?