If cave story took the metroidvania style and added in shooter elements, and Steamworld Dig took it and added the minecraft/terraria thing, Guacamelee is the brawler take on the same genre. It has a fun story and style to spare. The art and animation in the game are incredible, it has a great sense of humor (plenty of tongue-in-cheek references to be had throughout) and the fighting/combo system is surprisingly deep. I absolutely love this game, and I say that upfront because I have to be harsh about a handful of things that hold the game back from perfection.
As good as the fighting system is in Guacamelee, it could have used some more love- specifically recovery time and cancels. If it sounds incredibly petty that I'm asking for such a 'deep' feature in what is essentially a beat'em up game, it really starts to make sense toward the end of the game when enemies start doing shields that you need to break with specific attacks.
Often times, you'll break a shield and get knocked down by another enemy and before you can get back up the shield you took out has regenerated. It ends up making for a handful of really frustrating encounters, and one boss fight that is absolutely infuriating (javier jaguar). Your special moves take so much time to wind up that the situation can change while you're in mid-animation with no way to cancel it, so you have to watch in what feels like slow-mo while you get smashed in the face. This leads to a lot of situations where you die and feel completely cheated because you weren't in control of the character and could have avoided the attack if you could cancel.
This is exacerbated by the fact that pretty much every enemy attack in the game interrupts your special attacks. As I mentioned, you have to use these special moves to break shields, but in a room with multiple shield types, you can wind up your super long uncancellable special move to break a shield, only to get smacked in the back by another enemy (with a different shield). While your recovery animation is playing, the enemy's shield is regenerating. On the flip side of that, bosses are pretty much immune to special attack stuns and knockbacks, so the combos you've been practicing for so long are basically worthless in a boss fight. Specifically in the Javier Jaguar fight, you'll have to break his shield with a special, but he'll attack simultaneously- guess whose attack knocks back and whose doesn't? You will find yourself wanting to throw your controller through the wall during this fight because so much of it is beyond your control. It just seems intentionally punishing and doesn't reward the player for the skill they've developed over the course of the game.
To add to that, lots of end-game encounters have you fighting not only enemies that are shielded in a multitude of colors (which require completely different moves to break), but also enemies that are phased into the living/dead worlds. Here's another situation where it feels like the balancing is slightly broken or in need of adjustment. Enemies can hit you regardless of which dimension they're phased into, but you can't hit them. I would have preferred a system where opposite dimensions would give/take more or less damage than the dimension you're currently in, which would have made it more interesting and less frustrating.
Overall, like I said- this is a fantastic game and totally worth the full asking price, but it does have some frustrating moments later in the game due to some issues with the finer fighting mechanics.