Design Goals
The goal is to make the vanilla railway system easier to use, closer to real-world railways, while still keeping vanilla interaction patterns.
Primary Principles
Preserve Vanilla Track Building
Players should continue using vanilla rails, powered rails, detector rails, activator rails, and redstone logic. The mod should not force a separate placement system or parallel rail ecosystem.
Preserve the Vanilla Minecart Entity
BetterRailwaySystem does not add a completely new minecart entity family, such as fully realistic train models or rail visuals. Instead, it directly extends the behavior of the vanilla minecart.
Focus on Behavior and Operations
The mod adds value in areas where vanilla minecarts feel limited:
- acceleration
- train dispatch and recovery
- onboard announcements
- stop control
- route recording
- line visualization (WIP)
Work in Multiplayer
Railway systems become much more interesting once multiple players use them together. That is why dedicated server support, synchronized station media, and client feature gating are part of the design.
What the Mod Intentionally Avoids
- build a full standalone metro simulator
- replace vanilla rail placement with custom infrastructure blocks
- require custom train entities for core features
- abandon singleplayer in favor of server-only workflows
Resulting Tradeoff
Because the project stays close to vanilla rails, some systems must work around vanilla constraints. That tradeoff is intentional. The mod prefers compatibility and maintainability over building a separate, incompatible railway game inside Minecraft.