Procedural terrain
Heightmap noise, scattered rocks, ramps, trampolines, water, and a full day/night cycle.
A free, open-source off-road sandbox in Rust — procedural terrain, raycast suspension, weather, mud, ramps, P2P multiplayer trail rides, custom map drag-drop (PNG/GLB/GPX), and 100+ plugins of glorious chaos.
The full sandbox compiled to WebAssembly. One click, ~10 MB, and you're flinging mud — no Rust toolchain, no app store, no download bar.
WebGPU has much higher limits than WebGL2 — when it's on, SSAO, atmospheric scattering, and the Hanabi particle effects all just work. Most modern Chromium browsers ship it disabled by default. Flip the flag once and you're set.
brave://flags/#enable-unsafe-webgpuchrome://flags/#enable-unsafe-webgpuabout:configdom.webgpu.enabled to trueDon't want to fiddle? skoffroad falls back to WebGL2 automatically — you'll still get the full sandbox, just with the heavier post-processing turned down.
Pick your platform — no Rust toolchain, no compile time. Every link below resolves to the latest CI build from the most recent release ↗.
Prefer to compile yourself? Build from source — three commands, sixty seconds.
Built from scratch in pure Rust on Bevy 0.18 + Avian3D 0.6. No engine licenses. No DRM. Just code you can read.
Heightmap noise, scattered rocks, ramps, trampolines, water, and a full day/night cycle.
Per-wheel raycasts with spring/damper forces. Articulation, tire squash, mud, ruts, and skidmarks.
Engine torque curves, 4WD, low-range, diff lock, airdown, winch, fuel, and a working V8 bay.
Wind that pushes the chassis, rain, mud puddles, splashes, slip smoke, and impact flashes.
Pause physics, hide the cursor, and snap. Or rewind the last 10 seconds as a translucent ghost.
A sim binary that steps Avian without a window, with JSON output for CI regressions.
Chase, cockpit, wheel-cam, and orbit. Q/E to swing around. V to cycle.
Time trials, drift, nitro, trailers, stunt scoring, ramp arrows, achievements, and XP.
Three save slots, auto-save on exit, auto-load on launch. Settings persist between sessions.
Same Rust engine, compiled to WebAssembly. WebGPU when available, WebGL2 fallback. ~10 MB cold load.
Stylised illustrations of real in-game moments — the day/night cycle, mud and weather, and the ramps. Rendered here as lightweight SVG so the page stays fast; fire up the browser build to see the real thing.
Want the real frames? Launch it in your browser ↗ — every scene above is a live, drivable part of the sandbox.
The world is generated from noise, not hand-placed. Reroll the seed and the ridgelines, valleys, and mud pits all move. Or drag in your own.
Layered heightmap noise carves ridges, gullies, and off-camber climbs. Scattered boulders and log piles give the winch something to fight against.
Rain softens the ground into ruts that hold your tracks. Airdown, pick a line, and feel the tires bite — or dig in and spray slip smoke everywhere.
Kickers, arrows, and bounce pads are sprinkled across the terrain for the stunt-scoring crowd. Nitro on the runway, tuck the landing, bank the XP.
Drag-drop a heightmap PNG, a GLB mesh, or a real-world GPX track straight onto the window. The engine rebuilds the world around it on the fly.
Drive from golden hour into headlight-only darkness. Sun angle, shadows, and sky colour all shift as the clock runs.
Fording depth matters — hit a channel too fast and you'll float, splash, and stall. Read the crossing, keep momentum, make the far bank.
The drivetrain is fully simulated, so the knobs actually change how the truck behaves. Tune before the trail, or adjust mid-crawl.
Toggle 4WD, drop into low-range, and lock the diffs for the technical stuff.
Lower tire pressure for a bigger contact patch and more grip in soft ground.
Real torque curves and a working fuel tank — a heavy right foot has a cost.
Stuck on a ledge? Anchor the winch and haul yourself out, or hit auto-flip.
Every line of the engine is open. Audit it, fork it, mod it.
If you've got Rust installed, you're 60 seconds from mud-flinging — locally, with whatever feature flags you want.
$ git clone https://github.com/smilinTux/skoffroad.git
$ cd skoffroad
$ cargo run --release
# building... ☕
# 🚙 vroom.
The short answers. For anything deeper, the code and the issue tracker are open.
Nothing. skoffroad is free and open source under GPL-3.0-or-later — no purchase, no ads, no microtransactions. Play in your browser or download native builds at no cost.
No. The full sandbox is compiled to WebAssembly and runs in a modern browser — one click, roughly a 10 MB download, no toolchain. Native builds for Linux, macOS, and Windows are there if you prefer.
Any browser with WebGL2 — Chrome, Edge, Firefox, Safari 17+. Enabling WebGPU unlocks the heavier post-processing, but the game falls back to WebGL2 automatically.
Yes — every line of the engine is public on GitHub under GPL-3.0-or-later. Pure Rust on Bevy + Avian3D. Read it, fork it, mod it.
Yes. With Rust installed it's three commands — clone, cd, cargo run --release. Toggle feature flags to customise the build. See the build section above.
Yes. Drag-drop a heightmap PNG, a GLB mesh, or a real-world GPX track onto the window and the engine rebuilds the world around it on the fly.
skoffroad grows one sprint at a time, all in public. Below is the shape of the journey — the authoritative record lives in the changelog and the issue tracker.
Raycast suspension, drivetrain simulation, procedural terrain, and the day/night cycle — the foundations, hardened over 60+ sprints.
Wind forces, rain, ruts, water crossings, ramps, trials, nitro, replay, and photo mode.
The same Rust engine compiled to WebAssembly, with WebGPU acceleration and a WebGL2 fallback — plus P2P multiplayer trail rides.
Development continues in public — follow the commit history and releases for the latest, or open an issue to help steer it.
skoffroad is developed in public — every sprint, every plugin, every regression test lands on GitHub. Jump in wherever you like.
GPL-3.0-or-later. Every commit, every plugin, every line — yours to study and remix.