We have found that no matter what, reading and understanding the Terms and Conditions of each cruise line makes a huge difference.
NCL is not great at clear and/or consistent information, so can be confusing when they make changes to things. If we choose our stateroom well and make certain that we choose the items we truly want, and find an itinerary with pricing that looks acceptable, we enjoy our cruises!
For the most part, @Liljo22 and @DCGuy64 have already covered the rest.