Day #864:

I know I’ve logged this before, but I really wish I’d gotten to see the finale at that screening thing.  An article was just released today, it looked like they had a lot of fun…

I don’t understand why so many of them hate this.  Ever since that picture of those plushies was found, they’ve just been arguing and arguing…

They’ve written stories where Twilight becomes an alicorn before, AVeryStrange did it in Spark…  I thought they liked that story?  What about ones where other characters became princesses and alicorns, like Fairy-Slayer’s Mommy Nearest, or that one based on it…  what was it called…  Oh!  Alicorn, by Aldea Donder!

Why was it okay there, but not here?  I saw some of them say it undermined the story somehow, or that it broke the symmetry of cast.  Why is it okay for them to do it, but not the show writers?  I thought they wanted their ideas to be in the show…  Did they change their minds?  Why?

I don’t think it will be that big of a deal, honestly.  I know they’re all up-in-arms now…  but they used to complain about the introduction of Princess Cadence, and now A Canterlot Wedding is one of the most praised episodes!  I don’t know, I feel like the division will end soon.

I could save my lonely soul for you,
But the feeling in my heart can’t follow through.

I hope we hear more on the Equestria Girls movie soon, all I’ve heard is a bunch of rumors.  It can’t make them angrier than they are right now, that’s for sure!  We’ll all in this together!

Cause you know that I’ll stay with you…