BeamNG.Earth README

The project's README from github.com/TecnaGamer/BeamNG.Earth. As one markdown file: README.md.

BeamNG.Earth

A 1:1 scale, streamed Earth for BeamNG.drive: drive anywhere on the planet on real elevation data and satellite imagery, with distance-based level of detail and the real curvature of the Earth.

Status: beta (see VERSION). Tested on BeamNG.drive 0.39.4 on Linux (Vulkan). See docs/ROADMAP.md for what is coming (high-speed streaming, real view distance, roads, water, navigation, traffic, cities).

Features (working today)

The world

Time, weather and physics

Driving and traffic

Map and navigation

Interface and tools

How it works

Install and play

You need: BeamNG.drive (tested with 0.39.x) on Steam, free disk space for the map download cache (it grows as you visit places, up to 20 GB by default; settings page > "Download cache size" sets 5-50 GB), and an internet connection (the map is downloaded while you play).

  1. Download the file for your system from the Releases page:
    • Windows: BeamNG.Earth-<version>.exe. Windows may warn about an unknown app: More info > Run anyway.
    • Linux: BeamNG.Earth-<version>-x86_64.AppImage. Make it executable (right-click > Properties > "Allow executing", or chmod +x).
  2. Run it (with Steam running). A console window opens (like BeamMP's launcher); it copies the mod into the game, starts the world server and starts BeamNG.drive. Closing the game stops the server.
    • Linux, native game: started with the grass patch (tools/gcpatch) already applied, no Steam launch options needed.
    • Linux, Windows build under Proton: the AppImage sees the Proton setting and starts that build through Steam (the server runs natively). The .exe also works inside the game's Proton prefix (for example with protontricks' launcher).
    • Linux, Steam as a Flatpak (or snap): the mod goes into the game's folder inside the Flatpak (~/.var/app/com.valvesoftware.Steam/...) and the game starts through Steam (without the grass patch).
    • The Windows build shows BeamNG's launch options dialog (renderer, safe mode) as usual; --gfx dx11 / --gfx vk / --gfx dx12 skip it with that renderer.
  3. Play: in the game, go to Freeroam and pick the BeamNG.Earth level. A welcome page explains the basics the first time. Press M for the world map: search a place or an address, right-click to teleport, left-click to set a GPS route, and Autodrive to let the car drive it.

From the source instead (any system with Python 3.10+): download this project (the green Code button > Download ZIP) and unzip it. Install once (and after each update): double-click run_server.bat (Windows) or run python3 install.py (Linux). Then start the server with run_server.bat / ./run_server.sh, keep its window open, and start the game yourself. Or run python3 launcher.py, which also starts the game like the downloads do.

Updating: the mod tells you in game when a newer version is on GitHub. Download the new file and run it (from the source: unzip it over the old folder and run the installer again).

Uninstalling: delete the beamng_earth folder in <BeamNG user folder>/current/mods/unpacked/ and the downloaded file (or this folder); the map cache is .cache/beamng-earth in your home folder (~/.cache/beamng-earth on Linux, C:\Users\<you>\.cache\beamng-earth on Windows).

More detail (traffic, the status bar, reporting problems, troubleshooting): docs/QUICKSTART.md.

Developer setup

python3 install.py also works from a checkout (mod copy, .venv, then python3 start.py); by hand:

  1. Python 3.10+ with the packages in server/requirements.txt.
  2. Copy (or sync) mod/beamng_earth/ to <BeamNG user folder>/current/mods/unpacked/beamng_earth/.
  3. Start the server: python3 server/earthd.py
  4. Start BeamNG.drive and load the BeamNG.Earth level. The mod connects to the server and streams the world; the status bar at the top shows where you are and the loading, M opens the world map (search, teleport, GPS routes, Autodrive).

Player downloads: python3 tools/build_app.py builds this system's AppImage / .exe (PyInstaller; see its docstring; for the .exe run tools/build_bootloader.py first: a bootloader built from source, fewer antivirus false positives); GitHub Actions (.github/workflows/release.yml) builds both and publishes the release v<VERSION> whenever main gets a VERSION without one. Release zip of the source: python3 tools/package.py.

Tests: cd server && python3 -m unittest discover -s tests -p "test_*.py" and cd mod/tests && for f in test_*.lua; do luajit $f; done.

Data sources and attribution

The repository contains only code; all map data is downloaded at runtime and cached locally.

License

Code: MIT, see LICENSE. BeamNG.drive is a trademark of BeamNG GmbH; this is an unofficial fan project and contains no BeamNG assets.

BeamNG.Earth (TecnaGamer/BeamNG.Earth)

Searching Database…