LeTrain ๐Ÿš‚โœจ

March 2, 2026 ยท View on GitHub

      __       ______           _
     / /   ___/_  __/________ _(_)___
    / /   / _ \/ / / ___/ __ `/ / __ \
   / /___/  __/ / / /  / /_/ / / / / /
  /_____/\___/_/ /_/   \__,_/_/_/ /_/
       The Letter Train Simulator           
   (C) 2006-2026 Antonio Vazquez Araujo 

LeTrain is a procedural train simulator that blends classic ASCII aesthetics with a modern 3D engine. Build vast rail networks across an infinite world, manage a complex economy, and master the art of logistical efficiency.


๐ŸŒŸ New in 2026: The 3D Evolution

LeTrain has evolved! While maintaining its terminal roots, it now features a high-performance 3D engine powered by LibGDX:

  • Modern Perspective: Explore your rail empire in full 3D with smooth orbiting cameras.
  • Classic Soul: Industrial zones and trains retain their iconic character-based charm, now rendered as physical 3D objects.
  • Visual Polish: Dynamic transparency for mountains, semantic color-coded stations, and high-resolution typography.

๐Ÿ’ฐ Deep Economy & Industry

The game now features a fully integrated financial system:

  • Capital Management: Start with $0 (Zero-to-Hero challenge) and grow your wealth.
  • Logistics Engine: Transport specialized cargo (GOLD, COAL, RUBY) from Producers to Consumers.
  • Smart Pricing: Revenue scales with travel distance. Every meter counts!
  • Construction Costs: Balancing infrastructure expansion vs. operational fuel costs.
  • Configurable Gameplay: Fine-tune the entire economy via the economy.properties file.

๐ŸŒ Infinite Procedural World

  • Entropy Booster: Every new game starts at a unique, randomized coordinate (ยฑ10k to ยฑ100k units) to ensure fresh exploration every time.
  • Procedural Landscapes: Navigate through lakes, forests, and towering mountains generated by custom Perlin noise.
  • Frustum Culling: Optimized rendering engine handles massive maps by only processing what you see.

๐Ÿš€ Getting Started

Prerequisites

  • Java JDK 17 or higher.
  • Maven.

Quick Launch

The build system is now fully automated. Simply run:

mvn package -DskipTests

This generates a standalone distribution in the output/LeTrain folder.

Dual Launchers

  • LeTrain.exe: The modern experience. Launches directly into 3D mode.
  • LeTrain2D.exe: For those who prefer the classic, high-speed ASCII terminal view.

๐Ÿ› ๏ธ Tech Stack

  • Core: Java 17
  • 3D Engine: LibGDX (OpenGL)
  • Terminal UI: Lanterna
  • Scripting: Custom ANTLR4-based rail automation language.
  • Audio: Granular synthesis engine for realistic locomotive sounds.

๐Ÿค Contributing

Contributions are welcome! Whether it's bug fixes, performance improvements, or new "letter" models for wagons, feel free to open a Pull Request.


Created by Antonio Vazquez Araujo.
Twitter/X - @avaraujo | GitHub