This PrusaSlicer project cuts the original 3DBenchy.stl into parts, using 100% infill density for the aft hull and 10% lightning infill elsewhere. The resulting model floats upright when printed in PLA. This version is under 9 grams, but some of my previous test prints were over 12 grams and just ...
The technique can be applied to other models: Use PrusaSlicer's 'cut' feature to break the model into parts, and tweak the settings (mainly infill and perimeters) to give each part the desired density.
yeah.... but I wanna hit a button and see it go...
(I mean, I do understand how incredibly hard and difficult that could be. which is kind of why I asked. I'd be very curious about how you implemented that process.)
That "slicer file is public domain" part would probably not be valid as benchy has a "no derivatives" licence:
If you remix, transform, or build upon the material, you may not distribute the modified material.
That overrides the requirement of "share-alike", meaning you have to use the same license for remixed or derived content, as you aren't allowed to release any in the first place.
Unless the creator has received permission from them, of course - that overrides all licences.
You can see in the photo that the wall is just above the waterline. It stays in that orientation until you disturb it enough to spill water over the edge, at which point it capsizes.