If you are paying the Daily Hotel charge/Staff gratuities then there is no requirement (moral or otherwise) to pay anything additional on board. Drinks will have 18% gratuity added to the bill, unless you have a drinks package, which will include the grat. Speciality Restaurants (Pinnacle grill etc) now have 18% gratuity added to the bill, so again absolutely no necessity to tip extra. If you have a comped meal in a speciality restaurant, then again there is no need to tip extra.
Regarding excursions, we take the view that if we get exceptional service or the tour greatly exceeds our expectations, then we will not tip. If it is a ships excursion, then it is the ships responsibility to tip any guides as they booked them and employed them, not us. If it is a private tour then we do ask when booking that they give us the total price including any expected gratuities as we will not be tipping on the day.
Don't over think it. Even Americans get confused about tipping amounts. Unfortunately for many it seems that the answer to confusion is to over tip.
(p.s. do not believe the 'when in Rome...'edict as most American do not follow that ideal in Europe where they continue to over tip and drive up expectations unnecessarily).
Rant over,