I often can't stand Mario Sunshine haters because their reasons for it supposedly sucking are usually "BUT IT'S NOT ON PAR WITH MARIO 64 LOL" when Mario 64 is a piece of shit with only a few standout levels.
Mario Sunshine wasn't bad, but all the levels having a tropical theme got old, and the water pack felt like a gimmick, or at very least it just felt wrong in the context of previous Mario game. That same problem (not feeling like a Mario game) was the major problem of the game:
1) Instead of having traditional Mario levels, like The Fire Level, The Ice Level, the Underworld, The Underwater Level, we were left with like 8 (only 8!) levels all centered around tropical locales. While they did all have different themes, the tropicality always shone through. The lack of variety didn't feel right for a Mario game, not to mention that the game had half as many levels as the previous game.
2) Water pack. Well implemented or not, gadgetry has no place in a Mario game. Leave this stuff to Ratchet and Clank and the like. While the water stuff worked fine, it was a level of complexity above what I like from Mario games. I play Mario games to run and jump, and while the water pack did add to some platforming puzzles, a layer of simplicity was removed from the game.
3) The opening of the game. Much like the faux pas in Twilight Princess, Mario Sunshine felt the need to put focus on a story at the beginning of the game, with perhaps the most awful cutscenes of the GC/PS2/XB era. Mario needs not cutscenes? What the fuck is this shit?
Overall, it didn't feel like a Mario game. It felt like some above average (but not great) platformer that had Mario injected into it instead of, I dunno, someone with a goatee.