Elevation++
v0.9.9Elevated train stations, plus taller pillars and longer spans for elevated rails, pipes and belts.
- Source code
- https://github.com/rschurade/ElevationPP
Adds elevated train stations and raises the height and pillar-spacing limits of elevated structures and adds vertical connectors for pipes.

Elevated stations: every train station — the root plus all cargo modules (unit, loose, fluid, molten, empty) and fuel modules (coal, liquid, nuclear) — can be built on auto-rendered support pillars, for both normal and electrified rail. They live in a dedicated "Elevated stations" toolbar tab, grouped and ordered like the vanilla Stations menu, reuse the vanilla icons, and unlock with the same research as their ground counterparts.

Train tracks: pillars up to 16 tiles tall (vanilla 6) and track up to 14 tiles from a supporting pillar (vanilla 7). Pipes and belts: pillars up to 16 tiles tall (vanilla 6) and transport up to 8 tiles from a pillar (vanilla 4), so auto-built pillars are placed roughly twice as far apart. All four values are configurable in the mod settings (RailPillarMaxHeight, RailPillarSupportDistance, TransportPillarMaxHeight, TransportPillarSupportDistance) and changes apply immediately. Warning: if you remove the mod (or lower the values) after building structures that exceed the vanilla limits, those structures will be considered unsupported and may collapse.

Now also added the ability to connect pipes vertically.


No announcements yet.
v0.9.9
Latest- Game version
- 0.8.5 - 0.8.7
- Released
- Aug 09, 2026
- File size
- 901.2 KB
- License
- CoI-Open
------ Fixes: - Elevated stations no longer accept being lowered into the ground: placing a station with any part of its footprint below the terrain surface is now rejected with the standard "Terrain too high" error, marking the offending tiles red — matching how vanilla elevatable buildings behave. (The stations' custom footprint carried no terrain bounds, so the game's terrain-collision validator skipped them entirely.) Raised placement on pillars and splicing a station onto an existing elevated line are unaffected. Verified against game v0.8.7.
v0.9.8
- Game version
- 0.8.5 - 0.8.6c re-verified
- Released
- Aug 05, 2026
- File size
- 900.6 KB
- License
- CoI-Open
------ New building — Balancing pipe connector: - The pipe connector's compact 1x1 body with the full feature set of the vanilla pipe balancer: per-port priorities, the "enforce strictly even inputs/outputs" toggles and the same prioritization management window — covering all six connections, including the vertical (top/bottom) ones. - Can be placed directly onto an existing pipe and cuts itself in, just like a regular connector — on straight runs, riser elbows and even mid-riser. (The pipe is cut when the ghost is placed, so flow pauses until construction finishes.) - Found right next to the pipe balancer in the toolbar, unlocked by the same research. Costs, workers, maintenance and power are half of the vanilla pipe balancer (rounded up). Fixes: - The loading animations of ELEVATED station modules now play fully: the fluid module extends its loading pipe down into the tank wagon and the loose module animates its chute. (The baked animation data was looked up under a placeholder asset root for modded protos — "Animation data not found" in the game log — leaving those parts frozen in their rest pose; only Animator-driven parts like the pump kept moving.)
v0.9.7
- Game version
- 0.8.5 - 0.8.6c re-verified
- Released
- Aug 03, 2026
- File size
- 897.2 KB
- License
- CoI-Open
------ Elevated station fixes for game Update 4 (v0.8.6c): - Placing an elevated station onto an existing elevated track no longer raises a huge mound of dirt under it. Update 4 terraforms a substitute plinth up to the entity's base height wherever a support pillar cannot be built — under a station spliced onto a track, that meant a hill up to deck height. Elevated stations now simply skip such tiles; the building rests on its remaining ring pillars. - An elevated station now anchors the track support chain, the way ground stations always have. Previously a station spliced into an elevated line BROKE the chain — spans that used to reach a pillar through the station's stretch suddenly flagged as unsupported. The station's track blocks now count as full support (they stand on the station's own pillars), applied on placement and on save load, so existing affected saves heal themselves. - The support scaffolding under a station root no longer stays blueprint-blue after construction completes. The vanilla sync that promotes a finished elevated building's pillars only handles entities with belt/pipe ports; the station root has none. (Existing saves: the game's own load-time validation already repairs stale blue pillars.) - Elevated stations are also opted out of the construction-time foundation shaping (applied relative to entity height), which would similarly re-shape ground toward deck level on build or deconstruct. Verified against game v0.8.6c (Update 4).
v0.9.6
- Game version
- 0.8.5 - 0.8.6
- Released
- Aug 02, 2026
- File size
- 895.1 KB
- License
- CoI-Open
------ Auto-portals while laying track: - A new elevated track can now be dragged straight over an existing track (crossing or stacked in parallel): wherever the planned centre support pillar cannot be placed, the portal pillar pair is planned and built automatically, crossbeam included. Stacked lines no longer have to be built strictly top-down. The drag ghost shows the real portal columns, and what you see is what gets built. - This applies to ANY spot where the centre pillar is blocked (e.g. a building or belt below), not just track crossings — if the flanking pair fits, the placement is valid. - Auto-placed portals use the closest stance; convert them afterwards with a modifier-click if you want a wider one. Portal stance is now a fixed modifier ladder: - Shift = closest valid spot, ctrl = +2 tiles, ctrl+shift = +4, alt = +6, alt+shift = +8. The RailPortalCtrlDistance setting from v0.9.5 is removed (a leftover entry in an existing config is ignored). Height-aware track snapping: - When laying track with the cursor raised (arrow keys), hovering an existing track at a different height no longer snaps the cursor — and its height — to that track. Snapping to tracks at the matching height still works (extending or connecting elevated lines), and picking at ground level is unchanged. Disable via the new RailBuildHeightAwareSnapping setting to restore vanilla snapping.
v0.9.5
- Game version
- 0.8.5 - 0.8.6
- Released
- Aug 02, 2026
- File size
- 891.1 KB
- License
- CoI-Open
------ Rail portals — run a train track under another track: - In the vanilla add/remove-pillars tool, shift- or ctrl-clicking a block of an elevated track places TWO support pillars beside the track (left and right, perpendicular to it) instead of the single centre pillar, leaving the space underneath free for another track. Both pillars count as full support for the clicked block. - Each side pillar lands on the first valid spot found by sliding outward from the track; obstacles (including the other track of a dual line) are slid past automatically. Shift places as close to the track as possible; ctrl goes further out by a configurable distance (RailPortalCtrlDistance, default 1 tile). - Other same-level tracks spanned by the portal (dual lines, with or without a gap between them) are supported by the same click: they receive their own pillars at the exact same column positions, replacing any of their vanilla pillars standing inside the portal. Tracks crossing 3.5+ tiles below are what the portal is for; decks at awkward in-between heights (where a crossbeam could never fit) make the placement invalid instead. - Removing any portal pillar demolishes the whole portal in one click. Another track's share is only removed if that track can afford to lose the support (same check the vanilla tool uses); otherwise its columns stay up. - Shift/ctrl-clicking an EXISTING pillar replaces it with the side pair (and converts a portal between the close and far stance). The new spots are validated before anything is removed, with rollback, so support is never lost. - Ghost previews of both columns follow the cursor with the modifier held; the vanilla centre-pillar ghost is hidden meanwhile. - A concrete crossbeam is rendered between the two columns: two "long saddle stones" matching the vanilla pillar-top blocks (procedurally generated, textured with the game's own concrete), spanning under the deck(s) and covering the pillars' saddle stones. Clearance under the beam is kept so an electrified track can pass 4 tiles below.
v0.9.4
- Game version
- 0.8.5 - 0.8.6c re-verified
- Released
- Aug 01, 2026
- File size
- 878.1 KB
- License
- CoI-Open
------ Vertical pipe connections for pipe connectors: - Pipe connectors now have a top and a bottom port, so pipes can connect to them vertically (from above and below), not just from the four horizontal sides. Fluid flows through vertical ports exactly like through horizontal ones. Existing connectors from older saves gain the vertical ports when rebuilt or tier-upgraded. - A connector can be cut directly into an existing pipe at a riser's corner (elbow) tile and even into the middle of a vertical run — the pipe splits and reconnects through the connector's vertical ports. (Vanilla refused both with "not flat".) Works from the connector toolbar button and by clicking a 1-tile pipe placement on the pipe. - The connector model only has a riser stub on top; when a pipe connects from below, the mod renders a mirrored copy of the stub underneath so the joint looks finished from every side. Placement quality-of-life (connectors, balancers, sorters, lifts and elevated stations): - Their maximum placement elevation now follows TransportPillarMaxHeight (previously stuck at the vanilla 5 tiles because the cap is baked into the protos at registration, before the mod raises the pillar height). Connectors now snap onto elevated pipes at any supported height. - The pipe tool's small height tooltip is now also shown when placing any of these height-adjustable buildings. - Placing a connector onto an existing pipe now shows the green "will connect" icons on the ports that the cut-in will reconnect (vanilla showed them as red/blocked). - The placement cursor of a pipe connector now shows its vertical (top/bottom) port arrows, with the same green feedback when a vertical connection will be made; built connectors already showed them. The down-facing port icon is drawn next to the connector instead of two tiles below it.
v0.9.3
- Game version
- 0.8.5 - 0.8.6
- Released
- Jul 17, 2026
- File size
- 868.9 KB
- License
- CoI-Open
------ - Verified against game version 0.8.6. - New: a single belt/pipe placement drag can now be much longer than the vanilla ~31 tiles. Longer runs are routed internally as several stitched sections, each still fully validated by the game (collisions, ramps, pillar support, ports). Configurable via TransportPlacementMaxLength (default 128 tiles, min 31 = vanilla behavior, max 512).
v0.9.2
- Game version
- 0.8.5 - 0.8.5
- Released
- Jun 21, 2026
- File size
- 866 KB
- License
- CoI-Open
------ - Elevated belts/pipes can now be held up by the supported connectors (balancers, mini-zippers, machine ports) at their ends. A short segment spanning between two connectors no longer requires its own pillar, so the auto-placed pillar there can be removed and the segment stays up instead of collapsing. Only self-supported structures count as anchors (not bare belt-to-belt junctions), and the normal support distance still applies between the two anchors, so longer spans still need a pillar. (The game still auto-places that pillar when you build; this only lets you remove it.)
v0.9.1
- Game version
- 0.8.5 - 0.8.5
- Released
- Jun 15, 2026
- File size
- 865 KB
- License
- CoI-Open
------ - The auto-built support pillars under elevated stations now render as a hollow ring around the outer edge of the footprint instead of a solid block beneath the whole building. Interior tiles carry no pillar (and need none — the deck rests on the ring of edge pillars). The rule is shape-aware, so thin modules stay fully pillared and the wide molten/nuclear footprints get a proper outline.
v0.9.0
- Game version
- 0.8.5 - 0.8.5
- Released
- Jun 15, 2026
- File size
- 864.7 KB
- License
- CoI-Open
------ Elevated train stations: - Every train station can now be built elevated on auto-rendered support pillars: the root, all cargo modules (unit, loose, fluid, molten, empty) and fuel modules (coal, liquid, nuclear), for both normal and electrified rail. - They live in a dedicated "Elevated stations" toolbar tab, grouped and ordered like the vanilla Stations menu (root first, molten last), reuse the vanilla icons, and unlock with the same research as their ground counterparts. - Obsolete / save-compatibility-only station protos (e.g. the legacy standalone hydrogen fuel module) are skipped, matching the vanilla menu. - A non-electrified elevated station can be converted in place with the vanilla "Electrify track" tool, just like a ground station (previously the tool reported "Collision with pillar" against the station's own support pillars, or silently failed at elevation). - Electrified elevated stations grow their catenary support masts on the platform like normal stations (the masts would otherwise be rejected for sitting on the station's own footprint / support pillars). Pillar limits (formerly "Elevated Rails Plus", now extended to pipes and belts): Train tracks (rails): - Pillar height limit raised from 6 to 16 tiles (configurable up to 30 via RailPillarMaxHeight). This also lifts the rail build cursor's up-arrow cap. - Maximum distance between elevated track and its supporting pillar raised from 7 to 14 tiles (configurable up to 56 via RailPillarSupportDistance). Auto-built pillars are placed roughly twice this value apart. - Rendering fix for rail pillars taller than the vanilla tower mesh: the mod stacks additional column segments down to the ground so tall pillars no longer show a gap (Harmony patch on the pillar renderer). Pipes and belts (transports): - Pillar height limit raised from 6 to 16 tiles (configurable up to 30 via TransportPillarMaxHeight). This also lifts the pipe/belt build cursor's up-arrow cap. - Maximum distance between an elevated pipe/belt and its supporting pillar raised from 4 to 8 tiles (configurable up to 32 via TransportPillarSupportDistance), so auto-built pillars are placed roughly twice as far apart. Transport pillars are drawn tile-by-tile, so they extend to the new heights with no rendering work needed. All four values are editable in the in-game mod settings and changes apply immediately.
Elevation++ — Changelog
================================
v0.9.9
------ Fixes: - Elevated stations no longer accept being lowered into the ground: placing a station with any part of its footprint below the terrain surface is now rejected with the standard "Terrain too high" error, marking the offending tiles red — matching how vanilla elevatable buildings behave. (The stations' custom footprint carried no terrain bounds, so the game's terrain-collision validator skipped them entirely.) Raised placement on pillars and splicing a station onto an existing elevated line are unaffected. Verified against game v0.8.7.
v0.9.8
------ New building — Balancing pipe connector: - The pipe connector's compact 1x1 body with the full feature set of the vanilla pipe balancer: per-port priorities, the "enforce strictly even inputs/outputs" toggles and the same prioritization management window — covering all six connections, including the vertical (top/bottom) ones. - Can be placed directly onto an existing pipe and cuts itself in, just like a regular connector — on straight runs, riser elbows and even mid-riser. (The pipe is cut when the ghost is placed, so flow pauses until construction finishes.) - Found right next to the pipe balancer in the toolbar, unlocked by the same research. Costs, workers, maintenance and power are half of the vanilla pipe balancer (rounded up). Fixes: - The loading animations of ELEVATED station modules now play fully: the fluid module extends its loading pipe down into the tank wagon and the loose module animates its chute. (The baked animation data was looked up under a placeholder asset root for modded protos — "Animation data not found" in the game log — leaving those parts frozen in their rest pose; only Animator-driven parts like the pump kept moving.)
v0.9.7
------ Elevated station fixes for game Update 4 (v0.8.6c): - Placing an elevated station onto an existing elevated track no longer raises a huge mound of dirt under it. Update 4 terraforms a substitute plinth up to the entity's base height wherever a support pillar cannot be built — under a station spliced onto a track, that meant a hill up to deck height. Elevated stations now simply skip such tiles; the building rests on its remaining ring pillars. - An elevated station now anchors the track support chain, the way ground stations always have. Previously a station spliced into an elevated line BROKE the chain — spans that used to reach a pillar through the station's stretch suddenly flagged as unsupported. The station's track blocks now count as full support (they stand on the station's own pillars), applied on placement and on save load, so existing affected saves heal themselves. - The support scaffolding under a station root no longer stays blueprint-blue after construction completes. The vanilla sync that promotes a finished elevated building's pillars only handles entities with belt/pipe ports; the station root has none. (Existing saves: the game's own load-time validation already repairs stale blue pillars.) - Elevated stations are also opted out of the construction-time foundation shaping (applied relative to entity height), which would similarly re-shape ground toward deck level on build or deconstruct. Verified against game v0.8.6c (Update 4).
v0.9.6
------ Auto-portals while laying track: - A new elevated track can now be dragged straight over an existing track (crossing or stacked in parallel): wherever the planned centre support pillar cannot be placed, the portal pillar pair is planned and built automatically, crossbeam included. Stacked lines no longer have to be built strictly top-down. The drag ghost shows the real portal columns, and what you see is what gets built. - This applies to ANY spot where the centre pillar is blocked (e.g. a building or belt below), not just track crossings — if the flanking pair fits, the placement is valid. - Auto-placed portals use the closest stance; convert them afterwards with a modifier-click if you want a wider one. Portal stance is now a fixed modifier ladder: - Shift = closest valid spot, ctrl = +2 tiles, ctrl+shift = +4, alt = +6, alt+shift = +8. The RailPortalCtrlDistance setting from v0.9.5 is removed (a leftover entry in an existing config is ignored). Height-aware track snapping: - When laying track with the cursor raised (arrow keys), hovering an existing track at a different height no longer snaps the cursor — and its height — to that track. Snapping to tracks at the matching height still works (extending or connecting elevated lines), and picking at ground level is unchanged. Disable via the new RailBuildHeightAwareSnapping setting to restore vanilla snapping.
v0.9.5
------ Rail portals — run a train track under another track: - In the vanilla add/remove-pillars tool, shift- or ctrl-clicking a block of an elevated track places TWO support pillars beside the track (left and right, perpendicular to it) instead of the single centre pillar, leaving the space underneath free for another track. Both pillars count as full support for the clicked block. - Each side pillar lands on the first valid spot found by sliding outward from the track; obstacles (including the other track of a dual line) are slid past automatically. Shift places as close to the track as possible; ctrl goes further out by a configurable distance (RailPortalCtrlDistance, default 1 tile). - Other same-level tracks spanned by the portal (dual lines, with or without a gap between them) are supported by the same click: they receive their own pillars at the exact same column positions, replacing any of their vanilla pillars standing inside the portal. Tracks crossing 3.5+ tiles below are what the portal is for; decks at awkward in-between heights (where a crossbeam could never fit) make the placement invalid instead. - Removing any portal pillar demolishes the whole portal in one click. Another track's share is only removed if that track can afford to lose the support (same check the vanilla tool uses); otherwise its columns stay up. - Shift/ctrl-clicking an EXISTING pillar replaces it with the side pair (and converts a portal between the close and far stance). The new spots are validated before anything is removed, with rollback, so support is never lost. - Ghost previews of both columns follow the cursor with the modifier held; the vanilla centre-pillar ghost is hidden meanwhile. - A concrete crossbeam is rendered between the two columns: two "long saddle stones" matching the vanilla pillar-top blocks (procedurally generated, textured with the game's own concrete), spanning under the deck(s) and covering the pillars' saddle stones. Clearance under the beam is kept so an electrified track can pass 4 tiles below.
v0.9.4
------ Vertical pipe connections for pipe connectors: - Pipe connectors now have a top and a bottom port, so pipes can connect to them vertically (from above and below), not just from the four horizontal sides. Fluid flows through vertical ports exactly like through horizontal ones. Existing connectors from older saves gain the vertical ports when rebuilt or tier-upgraded. - A connector can be cut directly into an existing pipe at a riser's corner (elbow) tile and even into the middle of a vertical run — the pipe splits and reconnects through the connector's vertical ports. (Vanilla refused both with "not flat".) Works from the connector toolbar button and by clicking a 1-tile pipe placement on the pipe. - The connector model only has a riser stub on top; when a pipe connects from below, the mod renders a mirrored copy of the stub underneath so the joint looks finished from every side. Placement quality-of-life (connectors, balancers, sorters, lifts and elevated stations): - Their maximum placement elevation now follows TransportPillarMaxHeight (previously stuck at the vanilla 5 tiles because the cap is baked into the protos at registration, before the mod raises the pillar height). Connectors now snap onto elevated pipes at any supported height. - The pipe tool's small height tooltip is now also shown when placing any of these height-adjustable buildings. - Placing a connector onto an existing pipe now shows the green "will connect" icons on the ports that the cut-in will reconnect (vanilla showed them as red/blocked). - The placement cursor of a pipe connector now shows its vertical (top/bottom) port arrows, with the same green feedback when a vertical connection will be made; built connectors already showed them. The down-facing port icon is drawn next to the connector instead of two tiles below it.
v0.9.3
------ - Verified against game version 0.8.6. - New: a single belt/pipe placement drag can now be much longer than the vanilla ~31 tiles. Longer runs are routed internally as several stitched sections, each still fully validated by the game (collisions, ramps, pillar support, ports). Configurable via TransportPlacementMaxLength (default 128 tiles, min 31 = vanilla behavior, max 512).
v0.9.2
------ - Elevated belts/pipes can now be held up by the supported connectors (balancers, mini-zippers, machine ports) at their ends. A short segment spanning between two connectors no longer requires its own pillar, so the auto-placed pillar there can be removed and the segment stays up instead of collapsing. Only self-supported structures count as anchors (not bare belt-to-belt junctions), and the normal support distance still applies between the two anchors, so longer spans still need a pillar. (The game still auto-places that pillar when you build; this only lets you remove it.)
v0.9.1
------ - The auto-built support pillars under elevated stations now render as a hollow ring around the outer edge of the footprint instead of a solid block beneath the whole building. Interior tiles carry no pillar (and need none — the deck rests on the ring of edge pillars). The rule is shape-aware, so thin modules stay fully pillared and the wide molten/nuclear footprints get a proper outline.
v0.9.0
------ Elevated train stations: - Every train station can now be built elevated on auto-rendered support pillars: the root, all cargo modules (unit, loose, fluid, molten, empty) and fuel modules (coal, liquid, nuclear), for both normal and electrified rail. - They live in a dedicated "Elevated stations" toolbar tab, grouped and ordered like the vanilla Stations menu (root first, molten last), reuse the vanilla icons, and unlock with the same research as their ground counterparts. - Obsolete / save-compatibility-only station protos (e.g. the legacy standalone hydrogen fuel module) are skipped, matching the vanilla menu. - A non-electrified elevated station can be converted in place with the vanilla "Electrify track" tool, just like a ground station (previously the tool reported "Collision with pillar" against the station's own support pillars, or silently failed at elevation). - Electrified elevated stations grow their catenary support masts on the platform like normal stations (the masts would otherwise be rejected for sitting on the station's own footprint / support pillars). Pillar limits (formerly "Elevated Rails Plus", now extended to pipes and belts): Train tracks (rails): - Pillar height limit raised from 6 to 16 tiles (configurable up to 30 via RailPillarMaxHeight). This also lifts the rail build cursor's up-arrow cap. - Maximum distance between elevated track and its supporting pillar raised from 7 to 14 tiles (configurable up to 56 via RailPillarSupportDistance). Auto-built pillars are placed roughly twice this value apart. - Rendering fix for rail pillars taller than the vanilla tower mesh: the mod stacks additional column segments down to the ground so tall pillars no longer show a gap (Harmony patch on the pillar renderer). Pipes and belts (transports): - Pillar height limit raised from 6 to 16 tiles (configurable up to 30 via TransportPillarMaxHeight). This also lifts the pipe/belt build cursor's up-arrow cap. - Maximum distance between an elevated pipe/belt and its supporting pillar raised from 4 to 8 tiles (configurable up to 32 via TransportPillarSupportDistance), so auto-built pillars are placed roughly twice as far apart. Transport pillars are drawn tile-by-tile, so they extend to the new heights with no rendering work needed. All four values are editable in the in-game mod settings and changes apply immediately.
This mod has no dependencies.
No other mods depend on this mod yet.