When we saw Star Wars last year it was first shown on Thursday at 8ish, I think, for early dining, and 10ish for late seating. I could be wrong about that and it was that they had two different showings depending on whether you were saying 2-D or 3-D. But I do know when we saw the 10 o'clock show it wasn't the first one either because I couldn't get tickets or we were second seating. You did have to get tickets a couple days ahead of time by standing in line at guest services. I think so everyone didn't go at once. For the first movie we went to, the in line started 30 minutes before the doors opened, just to get a good seat. Then there was another showing at 12:30am. By that time the only people seeing it were us and members of the crew mainly the entertainment staff. We saw it in 2d at 10 , then again in 3d at 12;30. And then got up at 6:30 to eat breakfast and disembark!
I think it was shown before midnight because it was being shown on land before then, and because it was the night before disembarkation. Or maybe just because it was such a huge release with such huge interest.
We are going on the Disney Magic again this year to see Rogue One, but this time it will be released five days into a seven day cruise. So even though I suspect it will be released on land before midnight on Thursday, I'm not sure if they'll show it on the cruise before midnight.