Crusade’s roster is great because it’s like 3 different eras of people, all with different ideas, and with completely incompatible ideas for what the game should be. It started as 4 people making a Smash game with whatever characters they wanted specifically wanted (this is where Ristar, Mach Rider, Chun-Li, and Goku came from.) Other planned characters include a trio of Kirby helpers that would switch with down special, and Acro the Acrobat. Most of the current cast was made by this team. Sense there was only 4 people, quality control was low.
Chun-Li is notable for being the only character to ever be considered to be cut, as all teams had a Sakurai like attitude of “X character had fans, so no matter how stupid, they stay.” Chunners is the exception, sense she was put in for demo v0.7, which only had two characters, and they felt that wasn’t enough.
Control of the game past to another team around 2011. This team attempted to legitimize the roster by dropping most of the wacky planned characters, though some oddities remain. For example, there’s the botched implementation of Weegee, who was meant to be an ultra secret character, with no real indication that he had been unlocked, accessed by toggling Luigi’s eyes. He was a normal alternate character instead. Snivy also came in at this time. Snivy was intended as a gift for the guy who programmed online mode, but was then promoted to a slot on the (possibly scrapped) Unova Pokemon Trainer alternate character for PT. Sense Snivy was complete, she was made playable. Spriters also had free reign to work on whoever, which is why you have Geno getting in before Bowser, or Tingle before Zelda.
Today, the game is developed behind closed doors, with an emphasis on redoing most of the existing cast. The roster has likely been overhauled again, sense Shantae was not on either of the previous rosters. I’d wager that no cuts will be made though.
But yeah, it is a weird roster, and that’s part of the games charm. I totally get why it would be a turn off though.