LeTrain is a procedural train simulator that fuses a retro ASCII/terminal aesthetic with a modern 3D engine, letting players design vast rail networks, manage a logistics-driven economy, and explore an effectively infinite world. Gameplay centers on building and optimizing transport routes for specialized cargo (GOLD, COAL, RUBY) with a capital-management system that starts players at $0 and scales revenue by travel distance. Worlds are generated with custom Perlin noise and randomized seeds (±10k-100k units) so scenarios are portable as plain-text .LTR recipes; the same seed rebuilds the same world. The editor workflow is robust: record/edit mode, undo/redo for construction and state, an integrated scenario/programming/config editor, experiment snapshots, and a headless LETRAIN-CHECK validator. The project ships both a high-performance 3D LibGDX client and a classic high-speed ASCII terminal client, with configurable gameplay via letrain.cfg.
The codebase is Java 17, uses LibGDX for 3D, Lanterna for terminal UI, a custom ANTLR4 scripting language for rail automation, and a granular synthesis audio engine. Builds are automated with Maven producing three distributions (3D, 2D, headless checker). Development traces back to 2006 under Antonio Vázquez Araujo; since March 2026 an OpenCode team of AI agents implements changes under his direction, with human review and public CI. The project is Apache-2.0, documented for contributors, and notes Snap sandboxing limitations on WSL2 and remote desktop with recommended build/workaround instructions.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.