I think the big misstep Starcraft (and really, all of Blizzard's writing), is that they try to make you care for the characters. It leads to some really goofy shit like Raynor inexplicably wanting to save muh Kerrigan, and Kerrigan later becoming Space Jesus. The characters basically suck the air in the room from all the potentially good shit in the setting. Especially the fucking cringe romance they attempted to write.
I'll contrast this now with Command & Conquer.
C&C GDI: You're this commander under General Mark Sheppard, and your job is to exterminate the NOD threat in Eastern Europe. Along the way, the GDI got embroiled in a scandal and you're forced to fend for yourself from the encroaching NOD forces. Later, you're informed it's actually a ruse and NOD got their shit pushed in, with you finishing the job.
C&C NOD: You're this commander under Seth. Your job is to exterminate the GDI presence from Africa. Halfway along the way Seth attempts to betray you and Kane terminates him. Now you answer to Kane and finish the job.
While campy, C&C never attempted to elevate itself or its characters as some sort of hero. Everything is in service to the geopolitics and war to let you order troops around to kill shit.
EDIT: It's noteworthy that in all of Westwood's and later, Petroglyph's games, romance never factored into anything. (C&C 4 doesn't count and the story there is already regarded as widely abysmal anyway.)
I'll narrow down your claim a bit.
Trying to make you care for characters is actually a
good thing. It's what a good story
should do. But it has to be in service to the game and not the other way around. World in Conflict had characters you very quickly got invested in, and its story was well written enough that it punched you in the gut pretty hard near the end. Starcraft 1's story was perfectly serviceable, and you cared for the characters because they all had interesting personalities that were pretty well-defined to begin with. Sure, they were cartoony (Mengsk future betrayal couldn't be more obvious if he wore a top hat and a spiky mustache) but the setting was never depicted as very serious. It was very much a post-apocalyptic space western.
The problem with Starcraft 2's story is twofold, IMO.
First, it got way too big for its britches. You could count the named Terran characters in Starcraft 1 in the fingers of one hand: Raynor, Kerrigan, Duke and Mengsk. If you stretch really hard you can fill that last spot with the Adjutant. Add another hand and you had all the characters from Brood War, too: DuGalle, Stukov and Duran (I know he's not technically Terran but he presented as Terran in BW). You had similar numbers for the Protoss, and the Zerg had like... five named characters total, and only Kerrigan and the Overmind weren't basically interchangeable.
The cast in SC1/BW was limited and the story was simple and told entirely through conversations in the briefing where you were very much present as an unnamed character, chunks of expositional text, or triggers in the missions themselves. It was a plot-driven story. Things were happening and you were along for the ride with Jim Raynor. The plots themselves were also not overwhelmingly huge or complicated. You're trying to overthrow the Confederacy by any means necessary. You're nurturing Kerrigan's power and eating Aiur. You're reconnecting with the Dark Templar and killing the Overmind. Each campaign has at most one plot twist, and you're moving along from event to event.
Starcraft 2 then massively increased the roster and tried to tell a more "complex", character-centric story with plenty of dialogue, plus a huge overarching and
escalating plot with the Xel-Naga and Amon and the Primal Zerg and the Void and robot Protoss and etc., without actually making the
writing any better. And then it hit the second problem:
Narrative agency. SC1
had a player character. You were referred to by title in every mission. You were a Terran Magistrate that defects to the Sons of Korhal. You were the Cerebrate the Overmind created to oversee Kerrigan's development. You were a young Protoss Executor (which they later retconned as Artanis). BW followed the same convention. You were a different Protoss Executor. You were a UED commander. You were a new Cerebrate freed from the Second Overmind's control by Kerrigan. The point is, you as the player were part of the story (something Command & Conquer also did a lot of, except in Tiberian Sun IIRC). The characters existed only to move the story forward. That all went away in SC2, the story of which basically happens entirely because Raynor wanted to crush some spacebug pussy.
So while in SC1 your character was along for the ride and assumed to agree with the objectives he was being asked to fulfill, in SC2 you're just a spectator. Raynor is the main character for Wings of Liberty and nothing happens without him. Kerrigan is the main character for Heart of the Swarm and an ungodly amount of time is spent trying to give her more depth than a puddle. Artanis is the main character for Heart of the Swarm and
Blizzard couldn't make him any more generic if they tried. They're not good main characters. They would be great supporting characters if the
player was part of the story, and Blizzard knew how to structure a story like that, but the player is just a third-person observer without any real bearing on the plot itself so the flaws in the story become even more obvious.
Long story short, they should have written a Saturday Morning Cartoon. That's what they were good at. Instead, they tried to write an Epic Space Opera and fell flat.
You can see the same thing happening between Warcraft 3 (relatively small stories for each campaign) and World of Warcraft's later expansions (huge ever-expanding plots with more and more powerful reality-rending enemies). They just couldn't help themselves.