There are plenty of reviews of this ship and itinerary (5 nights from Jacksonville, calling at Nassau and Half Moon Cay), so I wanted specifically to address the needs of vegetarians, vegans, or anyone who just doesn't want to go home heavier than when they came.
Full disclosure about me: I'm not a total vegan. I am vegetarian, which means I don't eat meat, fish or items made with meat/fish stocks, gravies, etc. I do avoid eggs, cheese and milk most times, though I occasionally can't pass up a bit of chocolate. I just feel better when I don't eat cheese and butter in particular.
Is it possible to eat well on this ship if you are vegetarian or vegan?
"Definitely" if you are vegetarian; tricky but possible for vegans.
Every day is the same for breakfast -- and it's what you'd expect: eggs, omelets, fried potatoes, pancakes, etc. There is a good fruit selection of mainly melon, grapefruit and bananas. Vegetarians who have no problems eating eggs, butter or cheese will have no problem.
For vegans, pretty much the only choice is oatmeal or grits (both made with water, not milk). You can gussy them up with items from the fruit bar. Some, but not all, condiment stations have slivered almonds, but disappointingly, no other nuts at all. There are raisins at some stations, plus brown sugar and various jams and jellies. There is no real maple syrup anywhere on board. For your coffee, they DO HAVE SOY MILK! In the Lido buffet area, it seems to live in the fridge on the starboard hot buffet line. Just ask for it. They also have soy milk at the Bogart's coffee bar (costs $$, about $4 for a soy latte) and in the fridge at the lobby bar, where they also have an espresso machine. I also asked for it in the dining room and had no trouble.
This was the happiest meal for me since EVERY DAY at the outdoor lido deck buffet, there is a Mongolian stir-fry line. The lines can get long, but it's great. You load up a bowl of raw vegetables and rice noodles and the guys stir fry them in front of you. Instead of butter, they use Pam cooking spray, and if you ask, they will use a clean wok for you (they seem to use them maybe three times then grab a clean one). There is meat on the line, but it's controlled by the staff -- so no passengers are dropping meat into the vegetables. There is a choice of three sauces if you want them. This is wonderful for vegans who get tired of asking the ingredients of every single thing in restaurants.
There is also a good salad bar in the lido area. They keep the lettuce and vegetables on one side, and deli meats/cheese totally on the other side -- no no meat accidentally dropped into the veggies -- a really nice layout and a good selection of items.
For those who are okay with cheese, they have a 24-hour pizza station with a vegetable option. As for the other lunch buffet areas, there won't be much for you. It's mainly hamburgers, hot dogs, fish, and chicken. Sometimes there's a pasta with no meat, but not often. They do have gardenburgers on request, but they aren't good-tasting ones. I noticed very few sides that didn't have cheese, meat or butter. There are always french fries, however. Believe me -- the stir fry is great and the best option. I did not eat in the sit-down restaurants for lunch, so can't comment.
Vegetarians will always have TWO choices. Hurray! Vegans will need to pester the waiter. Every night there is an "Indian vegetarian" option, which I had three times. It was delicious. You get basmati rice, some pickled cucumber, raita (yogurt based) and three vegetables in different sauces. Some of these have butter or more probably ghee, so you have to ask. One night, one of the three was paneer (indian cheese) in a curry sauce. But they were always different -- I had chick peas, peas/cabbage, peas/potatoes, curry potatoes, okra/tomato. All were wonderful.
There will always be a second vegetarian option, and sometimes it's vegan. The first night it was a "pot pie" made of pumpkin, butternut squash, yams and cheddar cheese. I didn't order it because of the cheese and because all of those vegetables seem so similar -- it just didn't sound that interesting. Another night there was a cheesy pasta. Another night there was a chile relleno -- a poblano pepper stuffed with potato and squash. This seemed nearly vegan -- I suspect there was egg in the batter used for the pepper, but maybe not. I did not ask. It was served with a spicy rice and was very tasty. The next night, there were black bean and vegetable enchiladas served with sour cream -- I would hope you could get that on the side. I didn't try this one since I'd just had the mexican-ish relleno the night before. The final night there was a tofu steak (tofu!) served with a tomato and string bean stir fry. It looked like it was vegan, but I got the Indian again. So dinner for vegetarians -- no problem. For vegans, trickier. As a last resort, they do always have baked potatoes, some kind of salad, some kind of fresh fruit plate and steamed vegetables.
Sadly, there were rarely any vegetarian appetizers -- just fruit or salad. The soups were all meat or fish-based.
Vegetarians, no problem of course. But if you don't eat eggs, milk, cheese or yogurt, you're in big trouble. Fresh fruit is really the only vegan option. However, I found that most of the desserts looked a lot better than they tasted, so you aren't missing much. There is a 24-hour soft-serve ice cream and frozen yogurt area for vegetarians. The big headliner dessert is the "chocolate melting cake" which is fine for vegetarians (it contains eggs) but obviously not for vegans.
No vegan options. For vegetarians, there is only cheese pizza.
HALF MOON CAY
This is Carnival's island. They have a BBQ buffet for lunch. You can request a gardenburger, but they are the hockey-puck kind. One of the sides, couscous with broccoli and squash, was vegan. There's also fruit and chips/salsa. But that's it. Think about taking some fruit with you from breakfast.
Happy to answer any questions if I can! Hope that helps anyone wondering about Carnival's policy for non-meat-eaters.