I"ve done the twenty in advance. Some gratefully pocket it and others gently instruct me the ship will let me know when and what to tip. I suppose if you insist on double the number of towels, two or three ice buckets, a pyramid of toilet paper and totally clean out the bathroom of goodies every day, you ought to pay something up front.
On our last cruise after the first night I felt that the waiter was average. Unknown to me until just recently, my wife approached him and gave him $20 and told him to take care of me. He tried to not accept but my wife insisted and told him she'd give him another $20 if he does what she requests. Well, he was the best waiter I ever had. In the end, I tipped him $60 and my wife tipped him $40. Was it worth it? Yes. He truly was oustanding.
I agree with Rick...you had to dish out $100....times that for every 2 people he serves....hhhmmmm...now that is making money.
I usually tip some in the beginning, only asking for extra towels and to make sure there is ice. Service is ok. I did make a mistake of tipping the cabin steward the 2nd to last morning and never saw him again. I saw him the last day and he gave me some saong and dance about forgetting.....YEA RIGHT !!!!!!!!