Repository navigation
Commit 584d26e
Add the PC edition: pygame, and everything 32 KB had cost
Same game, same rules, without the memory straitjacket. Every cut the
calculator build had to make is back, and then some.
Restored
- The drawn sector map. It went from a node graph to a route table to a
three-line menu on the calculator because the parse tree would not fit;
here it is a real graph with diagonals.
- Twelve upgrades instead of eight, three difficulty tiers, six events with
consequences, crystals you chase and can magnet in, explosions.
- Bosses get three phases and enrage after forty seconds.
New to this edition
- Hand-drawn pixel art instead of three rectangles a ship. Sprites are text,
left half plus centre column, mirrored at load: symmetry for free and half
as much to draw.
- Particles, screen shake, white-flash on hit, hit-stop on hull damage,
engine trails, an optional CRT overlay on F1.
- Eight-directional movement. The calculator was pinned to two keys per
player by a diode-less keyboard matrix; a PC is not.
Everything renders to a 480x270 surface scaled up by a whole number, so a
pixel stays a hard square at any window size.
Testing runs headless on the dummy SDL drivers, so real runs go through the
real state machine in CI -- same key events, same combat, only the display is
faked. It caught three things a screenshot would not have:
- an enemy killed by two bullets in one frame scored and exploded twice
- the boss descended below the player, where shots that only travel upward
could never reach it, and separately could drift off-screen and hand over a
win nobody earned
- the fight ended on the frame the boss died, throwing away the salvage it
had just dropped
Measured: bot win rate 7/4/1 of 8 across the three tiers, 9-11 minutes of
combat in a winning run, and 1.35 ms at p99 against a 16.7 ms frame budget.
Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKLqS4PgnCXrzKHDH8Cnzy1 parent 9f6077c commit 584d26e
29 files changed
Lines changed: 2751 additions & 6 deletions
File tree
- .github/workflows
- docs/img
- pc
- nova
- tests
- tools
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | | - | |
9 | | - | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
10 | 36 | | |
11 | 37 | | |
12 | 38 | | |
| |||
24 | 50 | | |
25 | 51 | | |
26 | 52 | | |
27 | | - | |
| 53 | + | |
28 | 54 | | |
29 | 55 | | |
30 | 56 | | |
| |||
45 | 71 | | |
46 | 72 | | |
47 | 73 | | |
48 | | - | |
| 74 | + | |
49 | 75 | | |
50 | 76 | | |
51 | 77 | | |
| |||
63 | 89 | | |
64 | 90 | | |
65 | 91 | | |
66 | | - | |
| 92 | + | |
67 | 93 | | |
68 | 94 | | |
69 | 95 | | |
| |||
78 | 104 | | |
79 | 105 | | |
80 | 106 | | |
81 | | - | |
| 107 | + | |
82 | 108 | | |
83 | 109 | | |
84 | 110 | | |
| |||
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
0 commit comments