Multi-core simulation: grain movement and heat across a worker pool (t88 phase 3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+5
-1
@@ -42,7 +42,11 @@ check('the settled water area goes back to sleep', run('awake[6 * CW + 1] === 0
|
||||
run('deserializeWorld(loadSave.meta, loadSave.buffers); bot.x = 14; bot.y = 190;');
|
||||
check('the destination is still waiting before moving wakes it', run('loadWakePending[6 * CW] === 2 && hot[6 * CW] === 0'));
|
||||
ticks(run, 8);
|
||||
check('moving near a waiting area wakes it within eight ticks, including heat', run('loadWakePending[6 * CW] === 0 && hot[6 * CW] > 0 && life[192 * W + 16] < FUEL[WOOD]'));
|
||||
check('moving near a waiting area wakes it within eight ticks, including heat', run('loadWakePending[6 * CW] === 0 && hot[6 * CW] > 0'));
|
||||
|
||||
// Burning is probabilistic: waking does not promise a fuel draw on that exact tick.
|
||||
ticks(run, 32);
|
||||
check('newly woken fuel resumes burning', run('life[192 * W + 16] < FUEL[WOOD]'));
|
||||
|
||||
// Saving midway keeps the actual cells, and loading starts a fresh queue at the new bot.
|
||||
run('globalThis.midLoadSave = serializeWorld(); deserializeWorld(midLoadSave.meta, midLoadSave.buffers);');
|
||||
|
||||
Reference in New Issue
Block a user