As I'm starting to build vehicles like at the Hoverpark experience, it's becoming apparent that you're going to need to allow people to teleport on top of dynamic objects.
JCat and others have also noted that one can teleport right through a dynamic object.
I'm betting the reason for this quirk is that teleport targets are computed as part of the build process. I'm betting every trigon gets flagged yes or no as a valid teleportation destination. I'm betting it's based purely on whether its surface normal points "up" enough and does not slope too much, with room for future enhancements to the appropriateness algorithm.
I get how this pre-computation is a performance boost and do not suggest you change it. My proposition is that you have a live-computation algorithm (instead of a precomputed lookup table) for dynamic objects' surfaces. Yes, this means more computation, but it would be limited to dynamic objects.
Of course, this would oblige creators like me to define appropriate collision volumes. In my Clockworks work, I've favored the smallest possible cubes in order to avoid collisions. And that's fine for things that avatars should not interact with. However, for things the user does interact with, like doors and boat decks, we would have to create collision volumes that reflect their apparent shapes.
I would also propose that you add a new setting to the properties of a dynamic object: "Can pick up". It does not make sense to allow a user to pick up a moving boat, but it does make sense to allow them to stand on it. I noted this counterintuitive behavior at my Hoverpark, too, where you can accidentally pick the very hover platform you are standing on up.