My three biggest tips:
1) eBags packing cubes. These are essential not just for cruises, but all of our trips. They help to keep suitcases neat and orderly, and keep clothes separated (we have different colors for each family member so they're easily identified). Unpacking is a breeze as well, as they fit in most hotel and stateroom drawers - you simply unzip them. These also allow me to start packing things in advance without having to get out all of the big bags or suitcases right way.
2) Before a cruise or big trip, I prepare a spreadsheet listing each day, broken out by activity and daypart (i.e. Morning/Excursion, Palo Brunch,
Castaway Cay, Dinner Attire, Bedtime), and detail EVERYTHING I will be wearing for each day or daypart (right down to specific undergarments, jewelry/accessories and shoes). Once I have everything listed, I then go back and start editing to eliminate unnecessary items (i.e. realizing that I can wear the same sandals with all of my dresses, that I don't need new pajamas for each night, etc.). Then when it's time to pack, I print out the spreadsheet and pack everything I've listed. I'll usually include an extra "emergency" outfit and possibly a sweater or hoodie, but other than that, breaking everything out by daypart really helps keep me from overpacking, or conversely, forgetting something essential.
3) I also keep a separate running list for non-clothing items and toiletries, and starting a month out, will write them down as they come to me (even writing down the "obvious" things like passports, sunglasses, my son's favorite stuffed Mickey, camera chargers, contact lenses, etc.), then I go down the checklist the night before our trip to make sure I haven't forgotten anything. I've found that once you have a general "master list" like this, you only have to make minor edits for each new vacation.