# `smoke.random_budget`: A rulebook method drew too many random numbers

A build check error in the area "The smoke run". An error: the game cannot be published until it is fixed.

The build check runs on every game LobbyLab builds, and each problem it finds has a stable code, the exact message, the file and line when it names one, and a link to this page.

## What the check looks at

The check plays the game once: `init`, joins for `minimumPlayers`, the host's start, every smoke intent, then a view per player. Every call must return small plain JSON within its CPU budget (`init` and `advance` 25 ms, `project` 15 ms).

## How to fix it

Draw fewer random numbers in one call (at most 4,096).

Make each rulebook function total: accept unknown lifecycle events unchanged, reject bad intents with a short code instead of throwing, and return plain JSON (no undefined, NaN, classes or cycles).

See also: [every error code](/docs/errors), [the API reference](/docs/api) and [the docs](/docs).
