You play as Pimm, an unassuming denizen of the quiet town of Hamsterdam, who must defend his home and rescue his grandfather from the villainous Vermin Gang and its leader, Marlo the Chinchilla. That task involves beating the stuffing out of an army of rats, foxes, and a menagerie of other rodents using your potent Hamster-Fu fighting style.

However, Hamsterdam requires a higher degree of finesse than most other beat-em-ups as your counters, combos and defense must be carefully timed based on the movements of your enemies. I played through a brief demo on both the Switch and iOS during GDC 2019 on Thursday and came away quite impressed with both the gameplay mechanics and visual style.

The controls are straightforward. You're afforded a basic unlimited attack with which to pummel your opponents. However they rarely just stand there and take it, instead launching attacks and counters of their own. When the enemies close in for their strikes, you must quickly swipe towards them to ward them off. If the opponent is able to connect, you're then launched into a rhythmic minigame -- swiping in the direction indicated or accurately timing your button taps. Complete the minigame successfully to counter, fail and get whacked. The controls differ slightly depending on the platform. The mobile version uses a variety of screen taps and swipes, while the Switch version has you flicking the Joy Cons back and forth to perform the appropriate in-game actions.

Hamsterdam offers 30 standard stages spread across 3 larger worlds as well as two David-vs-Goliath style boss battles per world for a total of 36 levels in all. Complete each level well enough to earn 3 stars (think Angry Birds) for increasingly larger rewards of seeds, the in-game currency. Use those seeds to equip stat-boosting gear and learn new combos with which to crush Marlo's gang and save your town.

Hamsterdam is slated for release later this year and should retail for around $2-3 for mobile versions (iOS and Android) and $10-15 for the Switch and PS Vita, though pricing has not yet been finalized.