Probably a little late, but the only cruises I've been on have been Carnival, and I haven't had any problems. A few ways to save money: 1) Like someone mentioned earlier, use Cruise Compete, and try to get some on board comps. 2) If you use Early Saver on Carnival, and you notice the price goes down, they will reward you with the difference in on board comps. 3) If you're not going to try and sneak your own liquor on board, you can buy a bottle or two and have it waiting in your room when you get on board. You can bring your own soda on board (12 packs).Link 4) Same with beer, although the only way to cool it is with buckets of ice, although I usually bring a pop up cooler, but you really don't save much buying it this way They used to offer drink tickets for soda and/or alcohol, but it looks like those have been discontinued. Really, the best way, in my opinion to save money once you're on board is to get the bottle of liquor, bring your own mixer, bring a flask, bring a bubba mug, and fill up in your room. When you're out, buy a soda and refill with your flask. In the end, you'll save a lot of money. If you want beer, the best deal is a bucket of beer. It's really helpful to bring a folding cooler to keep in your room to keep the mixers cool. Our cabin room guy (....I can't remember what these people are called, forgive me) always kept it full of ice.
+ 1 for Alaska There is something to look at outside at all times especially since the sun only goes down for like 3-4 hours
Go on Royal Caribbean, they are by far the best ships and have the best ports. If you can get the Allure of the Seas, it is really an amazing ship. I have been on 6-7 cruises over my life and Royal Caribbean has the best food, entertainment, and atmosphere. Seriously if you have the option go with RC there is no other way to go when it comes to cruises. Good luck.
Everyone I know under age 60 that's ever taken a cruise said they hated it. The ones that went to Alaska hated it less. Seems like a strange thing to do for a teenager, unless you have a thing for old ladies.