A few thoughts (great question!!)-
First, I think space on the ship may be limited where you could fit 20-25 people at the same time. Not sure if you can reserve a room anywhere? The game room is maybe the only place I can think of that might fit so many and is rarely crowded... so perhaps a game event? A few different types of games for different ages and interests? My family always played euchre at holiday gatherings, so we might do a euchre tournament, or similar activity. If everyone will have Internet, you could even try Jackbox games - those are hilarious and I can explain more if you have any interest in hearing about them...
Are you planning to try to get tables together for dinner? That might be a nice time, to reflect together about what you all did, especially because there is a lot of down time when you're waiting for food. (just saw @Jasukkie replied while I was typing with a similar suggestion...)
I know you said that you'd like to get together on the ship, but maybe reconsider finding an outing at one port that has something for everyone since there will be more space on land. When we were on Cozumel, there was a large family group at Paradise Beach. Kids were doing inflatables, some were going to the pool, some were just eating and drinking, some were wading or doing water activities, but they were all seating in a large space together. It looked really fun!
Go to a show together perhaps? You'd have to get there early to get seats together.