I was on the last Britannia cruise and you could only book for shows in the theatre when you were onboard as the app uses the ships WIFI. I tried booking on Personaliser before the cruise but wasn't able.
As others have said, you don't need to book but when you arrive at the theatre your cabin number will be recorded.
The first show I attended I hadn't booked and, after recording my cabin number, it was explained to me that guests who have booked will get priority over those that haven't. There wasn't, however, an explanation about how that would work! The inference seemed to be that if you turned up with a booking, and the theatre was full, somehow seats would be found but god knows how!!
Just out of interest guests, with or without bookings, were sometimes queing for up to nearly an hour before the show was due to start.