Skip to content

Physics compatibility

PixelRifts game rules use a physics adapter instead of calling a browser or server physics library directly. Phase 0 includes the reference AABB adapter and the target Rapier 2D 0.19.3 adapter.

Try the browser runtime with Rapier:

text
http://127.0.0.1:5173/?physics=rapier

Run the headless fixture with the same adapter:

bash
corepack pnpm validate:fixture:rapier

For a matching authoritative server, start the realtime process with PIXELRIFTS_PHYSICS=rapier and open /?network=1&physics=rapier. Client and server must report the same adapter identifier and version in the current protocol v20 welcome handshake. PixelRifts refuses prediction across a mismatch because different physics engines can produce different positions and simulation hashes.

Physics versions are gameplay compatibility boundaries. Creators should not depend on tiny floating-point differences, and a future engine upgrade will require fixture validation and an explicit project-bundle compatibility policy.

PixelRifts creator documentation · generated reference · protocol 21