To keep texture space in check for a ship this size, I primarily used trimsheets.
For more info about the making of this ship, I wrote an article on the Rookies:
The first ship was too ambitious to also add functionality. Therefore I made another, smaller ship where everything is movable and ready for gameplay.
It uses blend shapes for the sails to retract, and spline tools to update the ropes in real-time.
I've added offsets to the wall textures in the shader for extra variation.
I've been asked to do a webinar series on making modular environments in UE4.
The series never really kicked off, but I did record the entire thing, and I'm periodically uploading new episodes on my personal YouTube page.