About the project
What it is
A terminal Asteroids-like: rotate, thrust, shoot, dodge — with a 5-boss roster, upgradeable weapons (bomb, homing missile, boomerang, shotgun, rifle), and a difficulty curve. Built from `hello-pear-bare`, main branch — the updater runs in a Bare worker thread, off the main game loop.
RNG
All randomness (asteroid spawns, pickup rolls, boss selection) runs through an injectable RNG wrapper (src/engine/rng.js) backed by a linear congruential generator (src/engine/congruential.js) — the classic Numerical Recipes parameters (multiplier 1664525, increment 1013904223, modulus 2^32). Deterministic and seedable, and the wrapper keeps the seam open for swapping in a different source without touching any game logic.
Install it
pear install pear://ze8mc7gygcbp7wmihyh9d66fgt6879tkb8afde3xuw4fsd8utn6o
No server, no app store, no package registry — installs directly from the swarm.
Peer-to-peer
- Cooperativo: two players connect directly over Hyperswarm, either through automatic public matchmaking or a short shared code. Whichever peer's connection role wins a deterministic public-key comparison runs the real simulation; the other just sends input and renders. No lockstep, no relay.
- Ranking: no leaderboard server either — every co-op connection gossips each side's local top scores and merges them in.
OTA updates, verified live
Staged a new version while an already-running, installed copy sat idle at the main menu — no restart, no reinstall. The [updater] messages appeared on screen as it downloaded and applied automatically; restarting showed the new version and new content immediately. Shown live in the demo video.
Platforms
Standalone binaries, no Node/Bare/Pear CLI required by the end user:
- macOS — arm64, x64
- Linux — arm64, x64
- Windows — arm64, x64
Hacki