Files
RP412/RP_L4
CydandClaude Opus 5 127b8077f5 A solo race has no packets to keep
The SPOOLS folder was empty after a solo run because there was nothing to
put in it, and the code said so nowhere.

Recording captures the packets this station RECEIVES. A race with no other
machines in it neither sends nor receives any -
L4NetworkManager::ExclusiveBroadcast walks the remote host list and a solo
race has none - so the tee is never called, the recorder never arms, and
Save returned in silence. Correct behaviour, invisible reasoning.

The comment I put in the front end claimed the opposite, that "a
single-player run records as readily as a lobby one". It does not, and the
claim is now the truth instead.

The same gap has a consequence I had not drawn out either: a RACER's
recording is not the whole race, because its own pod is simulated locally
and never arrives as a packet. A Live Cam races nothing, so every pod
reaches it over the wire - it is the only station that hears the lot,
which is a better argument for the feature than the one I started with.

Say all of this where it will be read: the log now explains an empty
recording instead of leaving the folder to be puzzled over, and the front
end explains why the row is offered on races that cannot use it (hiding it
conditionally would read as a bug of its own).

Not fixed here: capturing locally simulated entities, which would make
solo recordable and a racer's spool complete. It is feasible -
Entity::Execute already produces each local update in wire form every
frame whether or not anyone is listening, and NetworkPacketHeader is four
fields, all of them available locally - but it means synthesising packets
that were never sent, and that wants proving against playback rather than
landing on the evening of a test with players.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-11 12:11:06 -05:00
..
2026-08-11 12:11:06 -05:00
2026-08-10 20:52:15 -05:00
2026-08-07 21:21:00 -05:00