const InitialMinX, InitialMaxX, InitialMinY, InitialMaxY, MaxBoardDim, ExpandStep, ExpandThresholdPercent, CooldownBlocks, cellPx, FeePerPixelUgnot, VandalismFeeUgnot, MaxBulkPixels, MaxCommunityDesignPixels, MaxCommunityDesignNameLen
1const (
2 // Starts at the full MaxBoardDim from genesis rather than the
3 // original 64x64-then-auto-expand design -- with real community
4 // placements landing right at the logo's edges as it neared
5 // completion, waiting for the 80%-occupancy trigger would mean
6 // people cramming free-form art tight against it first. Centered on
7 // (31.5, 31.5), the original 64-wide board's own center, so every
8 // existing target_pattern.js / migrated-pixel coordinate keeps
9 // exactly the same (x, y) and lands in the same place relative to
10 // the logo, just with far more breathing room around it.
11 InitialMinX, InitialMaxX = int64(-32), int64(95)
12 InitialMinY, InitialMaxY = int64(-32), int64(95)
13
14 MaxBoardDim = 128
15 ExpandStep = 8
16
17 ExpandThresholdPercent = 80
18
19 CooldownBlocks = 1
20 cellPx = 8
21
22 // FeePerPixelUgnot is charged for any placement that doesn't match
23 // the current owner-curated official target (see officialTarget) --
24 // placing toward the official design stays free, everything else
25 // (free-form painting, or bulk-helping finish someone else's custom
26 // canvas) costs this per cell, paid to collectionOwner.
27 FeePerPixelUgnot = 100_000 // 0.1 GNOT
28
29 // VandalismFeeUgnot applies instead of FeePerPixelUgnot when a cell
30 // IS part of the official target area but the caller paints it a
31 // different color than the design calls for -- overwriting/defacing
32 // an in-progress logo cell costs more than painting blank free-form
33 // space, so griefing the logo is strictly more expensive than
34 // helping (free) or painting elsewhere (the normal rate).
35 VandalismFeeUgnot = 1_000_000 // 1 GNOT
36
37 // MaxBulkPixels bounds SetPixels' batch size -- keeps a single
38 // transaction's gas/arg-size reasonable and bounds the worst-case
39 // payment amount a caller has to attach.
40 MaxBulkPixels = 10
41
42 // MaxCommunityDesignPixels bounds a single submitted design -- the
43 // per-byte storage deposit already prices submission naturally, this
44 // is just a hard ceiling against one submission dominating the
45 // realm's storage.
46 MaxCommunityDesignPixels = 4000
47 MaxCommunityDesignNameLen = 60
48)