Auto-Build advisor + resilient simulation loop
- New advisor button (toolbar, purple wand): one click per planning pass * Genesis: founds a town from a blank map (main street + zone bands) * Keeps power ahead of demand (wind/solar/coal by deficit size) * BFS road spurs to reach orphaned zoned land * Stamps new districts when demand is high and empty plots run out * Places the weakest service coverage; parks/plazas for land value * Never spends below an emergency reserve; recomputes power per action - Simulation no longer dies when rAF throttles: interval watchdog compensates only after 3s of total frame silence - preserveDrawingBuffer now opt-in via ?cap=1 (software-GL perf) - Smoke test drives via game API, prefers headless_shell binary, tolerates stalled screenshots; engine suite at 51 assertions
This commit is contained in:
+1
-1
@@ -28,7 +28,7 @@ const b = await chromium.launch({ executablePath: exe, args: ['--no-sandbox', '-
|
||||
const page = await b.newPage({ viewport: { width: 1280, height: 800 }, deviceScaleFactor: 1 });
|
||||
await page.addInitScript(() => localStorage.setItem('polycity.settings.v1',
|
||||
JSON.stringify({ sound: false, shadows: true, autosave: true, minimap: true })));
|
||||
await page.goto('http://127.0.0.1:4176/', { waitUntil: 'load' });
|
||||
await page.goto('http://127.0.0.1:4176/?cap=1', { waitUntil: 'load' });
|
||||
await page.waitForTimeout(3500);
|
||||
try { const h = await page.$('#helpClose'); if (h) await h.click(); } catch {}
|
||||
await page.waitForTimeout(600);
|
||||
|
||||
Reference in New Issue
Block a user