Replays
Watch your past games, share seeds, and export replays. Everything is recorded automatically in the background.
Recording
The game automatically tracks your inputs, clicks, and reveals down to the millisecond without affecting performance.
| Setting | Default | Description |
|---|---|---|
replay_recording_enabled | On | Master toggle for recording |
replay_record_mouse_path | Off | Also capture cursor position over time |
replay_record_highlights | Off | Record tile highlight changes |
replay_compact_codec | On | Use compact binary encoding for smaller replay files |
replay_compress_input_blocks | On | Compress input event blocks |
replay_use_cpp | On | Use C++ replay codec when available (faster) |
Save Policy
The save policy controls which games are kept in the replay library:
| Policy | Behavior |
|---|---|
| All games | Every completed game is saved |
| Wins only | Only winning games are saved |
| Losses only | Only losing games are saved |
| All completed | All wins and losses (default) |
Abandoned games (reset before completion) are never saved regardless of policy.
Replay Library
Open via Replay > Replay Library in the menu bar. The library shows all saved replays with sortable columns.
Columns
- Date/time played
- Difficulty and board dimensions
- Result (win/loss)
- Time and 3BV/s
- 3BV of the board
Actions
- Play — watch the replay with full playback controls
- Play Seed — load the replay's board seed to play the same board yourself
- Delete — remove from the library
- Export — save as a
.bmrpfile for sharing
The active sort column is shown with an arrow indicator and highlighted header styling. Sort state persists across reloads.
Playback Controls
During replay playback, a controls panel appears below the board with:
- Play/Pause — start or pause playback
- Timeline bar — click or drag to scrub to any point in the replay
- Speed control — adjust playback speed
- Time display — current position and total duration
replay_auto_play is enabled (default), replays start playing automatically when opened.
Sharing & Seeds
Seed Format
Board seeds follow the format SEED-X-Y where SEED is the numeric seed value, and X/Y are the first-click coordinates.
- Copy Seed —
Ctrl+Ccopies the current board's seed to clipboard - Load Seed —
Ctrl+Vloads a seed from clipboard to play the same board - Replay Seed —
Ctrl+Rregenerates the current board with the same seed
File Export
Replays export as .bmrp files (Better Minesweeper Replay) with a companion JSON metadata file. The binary format uses a TLV (Type-Length-Value) structure with the magic header BMRP.
Board Image
Press Ctrl+P to copy the current board state as an image to your clipboard.
Auto-Export
Enable replay_auto_export to automatically export replays after each game. Configure rules with replay_auto_export_rules to export only specific games (e.g., wins, PBs, specific difficulties).
Stats During Replay
- All-time stat recording is paused during replay playback — replays do not affect your stats.
- The stats window shows the recorded game's stats (3BV/s, time, clicks, etc.) updating as the replay progresses.
- If you have PB stats visible, the difference from your current personal best is shown.
- Playing a seed from a replay loads it as a seeded run, which is excluded from PB records.
File Format
| Detail | Value |
|---|---|
| Extension | .bmrp |
| Magic header | BMRP (4 bytes) |
| Structure | TLV (Type-Length-Value) blocks |
| Metadata | Companion .json file alongside the .bmrp |
| Compression | Optional per-block compression (enabled by default) |
| C++ codec | Available for faster encode/decode |
Replay data includes: board seed, dimensions, mine count, settings snapshot, timestamped input events, and optionally mouse path and highlight data.