A NeoForge 1.21.1 mod that lets Sable SubLevels — the physics-driven ship structures used by Create: Aeronautics — pass through Nether portals.
Proof of concept. Detection, cross-dimension transfer, and rider rebinding are implemented. Not yet tested end-to-end with a real airship in a multiplayer environment.
Every few server ticks, AeroPortals scans loaded SubLevels in every dimension. When a SubLevel's world-space AABB overlaps a minecraft:nether_portal block:
- Riding players are captured with their local offsets and view angles.
- The SubLevel is serialized via
SubLevelSerializer.toData, its pose is rewritten to the scaled destination position (respectingDimensionType.coordinateScale), and any source-side allocation is freed. - The SubLevel is loaded into the destination dimension via
SubLevelSerializer.fullyLoad, falling back to a free plot slot if the original collides. - Riders are teleported to the destination dimension at the same local offset on the new SubLevel.
- A per-SubLevel cooldown prevents immediate bounce-back.
| Mod | Range |
|---|---|
| Minecraft | 1.21.1 |
| NeoForge | 21.1.x (≥ 21.1.219 required by Sable) |
| Sable | 1.0+ (required) |
| Create | 6.0+ (optional — for actual airships) |
./gradlew build
Produces aeroportals-1.21.1-<version>.jar in build/libs/.
MIT — see LICENSE.md.