We were recently on the Dream (march 2nd sailing), also a 4 night. Tickets are limited. We took Disney transportion from our hotel and arrived to the ship by 1:30. By the time we made it to the port adventure desk by 2, both the Disney junior and princess tickets were gone. We got tickets for Anna and Elsa. During that meet I asked again about tickets and the cast member was able to add me on to the Disney junior meet.
So, arrive early to get tickets. They start distribution at noon. Also, for the Anna and Elsa meet and greet- it was only Anna. Disney junior had Sophia, doc mcstuffins and Jake.
There are other opportunities to meet the princesses during the day and evening.