Home / Guides / Strategy / The Wall-X physics engine

The Wall-X physics engine

Every shot in Wall-X is a real physics simulation. This page explains what the game calculates behind the scenes and what it means for you as a player.

Dimensions

The game world is measured in metres. The scale bar on screen uses the same units.

WhatValue
Play area10 m wide, 5.6 m tall
Ball28 cm across
Gravity9.81 m/s² (varies by planet in space stages)
Maximum shot speed13.5 m/s (full pull)
Wall thickness34 cm
Longest possible shot12 seconds

Shot speed is proportional to how far you pull the ball back: half a pull is about 6.75 m/s. The ball always heads right, rolling along the floor. A shot ends when the ball has been still for half a second or after 12 seconds.

Materials

Every surface has two basic properties: restitution (how much of its speed the ball keeps after an impact) and friction (how much it slows while rolling on it).

MaterialRestitutionFrictionWhere
Ramp0.12lowRamp
Booster0.12noneBooster
Spring and rubber0.92noneSpring, Rubber blocks, mushroom caps
Solid ground0.35mediumfloor, blocks, triangles, rocks
Sand0.20~3× groundDesert
Ice0.30~1/6 of groundPolar

Other effects are defined with the same kind of numbers: Wind pushes at 36 m/s², a magnet brakes at 18 m/s², and a booster adds about 6 m/s for every metre.

Deterministic simulation

The engine runs at 60 frames per second with 12 sub-steps per frame, so 720 steps a second. That density stops a fast ball from tunnelling through a thin line. More importantly, the simulation is deterministic: the same drawing, the same power and the same moment give exactly the same result, bit for bit, every time. There's no luck. If a shot worked once, repeating it exactly works again.

That's why "change one thing and watch" works far better than "keep trying, maybe it'll go in". It's also why the plus and minus buttons exist: you vary the same shot in small steps and see the effect directly.

Verification on the server

A copy of the browser's physics engine also runs on the server, and the two produce the same result. When you clear a stage, your drawings and shot are sent to the server, which replays the shot itself. If the ball goes in there too, the result is saved, the next stage unlocks and you enter the rankings. The server also checks that every point you drew is in an allowed spot and that the ink limit wasn't exceeded.

What that means for you: the rankings are fair. Nobody can edit their result to jump to the top; every score you see is a shot that was really played.

More in this section

Ready to try it? No sign-up, it runs right in your browser.

Start playing