Competition Rules

Transparent, deterministic, and independently verifiable.

Vector Smart Chain

The competition runs exclusively on Vector Smart Chain (Chain ID 420042). The indexer verifies the chain ID before processing any transactions. No transactions from Ethereum, BSC, Polygon, Base, or any other network can qualify.

How Transactions Qualify

Beginning at START_BLOCK + 1, every successful (receipt.status == 1) transaction on VSC qualifies. Failed, reverted, and excluded protocol transactions are ignored. Qualifying transactions are processed in canonical blockchain order: by block number, then transaction index.

Deterministic Square Assignment

Each qualifying transaction receives exactly one unique square between 1 and 1000. The initial square is calculated as: keccak256(transactionHash + gameSeed + gameId) mod 1000 + 1. The same inputs always produce the same square — no randomness, no client-side logic.

Collision Handling

If a calculated square is already occupied, the indexer linearly probes the next square (433, 434, 435…) wrapping from 1000 back to 1. Every transaction receives a unique square. Exactly 1,000 transactions fill all 1,000 squares.

Hidden Ships & Fairness

Ship positions are configured before launch and locked. A commitment hash (keccak256 of game ID, seed, ship layout, and salt) is published before any transaction qualifies. Ships are never exposed to the browser before the reveal.

Prizes & VSG Calculation

Each winning hit awards $50 USD worth of VSG. The VSG amount is calculated from a configured price source at the time of detection. Payouts require admin approval — VSG is not sent automatically.

Completion & Verification

The competition ends after exactly 1,000 finalized transactions. After completion, an admin reveals the seed, salt, and ship layout. The entire game can then be independently reproduced and verified.

Confirmation Requirements

Transactions must reach the configured confirmation threshold (12 blocks) before becoming official shots. Detected transactions move through states: detected → confirming → finalized. Only finalized transactions count toward the 1,000-shot competition. Chain reorganizations are handled safely — unfinalized transactions can be invalidated without affecting the game.