It's actually pretty simple. For a seven-day cruise, I'll pack eight polo/golf shirts (seven to wear plus a spare), eight changes of underwear and socks, a supply of handkerchiefs, three pairs of slacks, three or four pairs of shorts if the cruise is going to a warm climate, a pair of dress shoes (black), moccasins for wear around the ship, my white dinner jacket and tuxedo pants with two shirts and the accessories (cufflinks & studs, vest, cummerbund, and ties), a couple sweaters or sweatshirts, a jacket, a sportcoat, and a "Hawaiian" shirt to wear at the deck party. If the cruise has semiformal nights, I'll bring the appropriate dress shirts and neckties as well. I usually wear a polo/golf shirt, slacks, and shoes in transit, so I have acceptable attire for dinner on the first night if my luggage does not arrive at my cabin in time. Also, don't forget toiletries, grooming aids, cameras, binoculars, etc., and your bible or prayer book.
The polo/golf shirts seem to be the ideal balance, as they are casual enough to wear with shorts during the day and dressy enough to wear to dinner on casual nights.