Waste rock pays: richer granite and basalt grinding, bulk rock orders (t3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -91,6 +91,14 @@ const fed = 400, sand = count(run, run('SAND')), o = ore();
|
||||
check('the Grinder grinds all the stone rubble it is fed', count(run, run('RSTONE')) === 0 && run('stats.refined') === fed, `${count(run, run('RSTONE'))} left, ${run('stats.refined')} of ${fed} ground`);
|
||||
check('about half as much sand comes out', sand > fed * 0.35 && sand < fed * 0.6, `${sand} sand from ${fed} rubble`);
|
||||
check('with the odd grain of common ore', o > 0 && o < fed * 0.15, `${o} ore grains`);
|
||||
// Old chances are tried in turn, so later ores require every earlier roll to miss.
|
||||
const oldGraniteChances = [0.02, 0.012, 0.01, 0.002];
|
||||
const oldGraniteExpected = 2000 * (1 - oldGraniteChances.reduce((miss, chance) => miss * (1 - chance), 1));
|
||||
grinderRig(); grind('RGRAN', 2000);
|
||||
const graniteOre = run('stats.refinedOre');
|
||||
check('all 2000 granite rubble grains are ground', run('stats.refined') === 2000, run('stats.refined'));
|
||||
check('granite yields at least 1.5 times its old expected ore', graniteOre >= 1.5 * oldGraniteExpected,
|
||||
`${graniteOre} ore; old expectation ${oldGraniteExpected.toFixed(1)}, minimum ${(1.5 * oldGraniteExpected).toFixed(1)}`);
|
||||
// gravel, sand and dirt are refined too; ore drops straight through
|
||||
grinderRig(); grind('LDIRT', 60);
|
||||
check('dirt goes through the Grinder too', count(run, run('LDIRT')) === 0 && run('stats.refined') === 60);
|
||||
|
||||
Reference in New Issue
Block a user