Skip to main content

Crate pinch_points

Crate pinch_points 

Source
Expand description

Pinch Points: a real-time grid routing puzzler.

sim is the headless simulation core and app the Bevy shell around it. The simulation is deliberately free of any engine types: plain Rust, integer-only, and deterministic, so it can be unit-tested, replayed, and driven over the wire. See docs/pinch-points-spec.md.

There is no unsafe here and there is not going to be: the game is a grid of integers, and the one thing it does with bytes a stranger wrote, decoding them, is the last place to want manual memory handling. Forbidden rather than merely denied, so it cannot be turned back on locally without saying so here.

Modules§

app
The Bevy shell: windowing, rendering, input, and the fixed-timestep bridge into the headless simulation. Nothing in crate::sim may depend on this.
gif
A minimal animated-GIF writer: one shared palette, one LZW-compressed frame per call, looping forever.
highlight
The highlight reel: the last fifteen seconds of a finished round, zoomed on the castle that decided it, written out as an animated GIF.
lzw
GIF-flavoured LZW, both directions.
share
Share codes: a beach, a level, or a whole round as one line of text.
sim
Headless game simulation. No engine types allowed in this module tree.
transport
UDP transport for online lockstep (spec §7.6). Engine-free but IO-bound, so it lives beside sim rather than inside it; the Bevy shell drives it.