I hate how they shoehorned that Gackt lookalike into Crisis Core. What a terrible character. Zack is a pretty cool guy though. Seeing what Sephiroth was like before he went nuts was pretty cool too.
I remember a lot of people being upset about the villain because they felt like he should have been referenced in FFVII even though none of the characters in that game who actually knew about him had any reason to mention him. I frankly don't remember much if him despite him being obnoxiously poetic/dramatic but I thought all in all the story was strong and motications were clear. To compare, think about the motivations of Kuja, Seymour, Ultimecia, and Kefka. They're either unecessarily elaborate and entirely dependent on an ad-hoc context, or were simple but nonsensical thin premises to move the story forward.
It is a bit hokey how they introduced such a (supposedly) important character in Genesis into Crisis Core, but at least they linked it with his appearance in the secret ending of Dirge Of Cerberus.
You should play it - it actually does a decent job as a prequel and I liked the gameplay. Gackt was stupid and the game would be the same without him but Nomura has a massive hard-on for him so he uses his face for everything. You should also watch the full version of AC (if you haven't already), it makes a lot more sense. Dirge sucked, no excuses for that.