Territory — Proximity & Geometry¶
TL;DR: The map has 90 latitude bands. Waat values compress by
/ 333. Your Code range (Yeo) is dynamic and divides byChao. Pick coordinates near QINGs whose RING state gives you a generous Yeo — and claim tighter to the center than you think you need.
Why this matters¶
Territory isn't a free-for-all. Every Code() has to land inside a box of radius Yeo around the target QING's position, and Yeo is a per-call output of META.Beat() that depends on your RING state. Get the geometry wrong and you revert (gas wasted). Pick the wrong QING and your Yeo is tiny even in the best case.
The numbers¶
The latitude system¶
| Constant | Value | Source |
|---|---|---|
| Latitude bands | 90 (indices 0..89) |
HECKEMERIDIANS |
| Latitude divisor | 333 |
Scales Waat down to latitude space. HECKEMERIDIANS |
| Southernmost (Meridian[0]) | 476,733,977,057,179 |
HECKEMERIDIANS |
| Northernmost (Meridian[89]) | 78-digit value | HECKEMERIDIANS |
Meridian values grow monotonically from Meridians[0] to Meridians[89], so a small Waat puts you south, a huge Waat puts you north.
The range-check at WORLD.Code¶
From WORLD:
(qlat, qlon) = Map.Map().Compliment(QingWaat)
if Latitude > qlat + int256(Yeo): revert OutOfRange
if Latitude < qlat - int256(Yeo): revert OutOfRange
if Longitude > qlon + int256(Yeo): revert OutOfRange
if Longitude < qlon - int256(Yeo): revert OutOfRange
So the valid region is an axis-aligned square of half-width Yeo around the QING.
The Yeo calculation¶
From META.Beat:
(Phoebe, Iota1, Chao, Charge1) = Ring.Eta()
(Yeo, Omicron, Dione, Omega, Charge) = Ring.Pang().Push(QingWaat)
Yeo = Yeo / Chao
So your practical Yeo = PANG.Push's Yeo-output ÷ RING.Eta's Chao-output. If Chao is big, your legal region shrinks.
Chao¶
From RING.Eta:
Phobos is a fixed QING resolved through the deep contract chain.
The play¶
- Target QINGs whose
Map.Compliment(Waat)you've read recently. Don't guess; simulate. Read QING.Waat(), then read MAP's Compliment to get (qlat, qlon) before picking your Code coordinates. - Claim closer to center than your
Yeoallows. IfYeo = 500and QING is at (100, 200), it's tempting to pick (100+499, 200+499) for max distance. Don't — if the next tx mutates anyone's RING state, Yeo recomputed at your actual Code call might be smaller, and you revert. Claim at (100+50, 200+50) for safety. - Code right after the QING's recent activity is quiet. Every React-bumping op changes Eta output via Yue.React(Phobos). If the QING is Phobos (or the Phobos chain) has been hit hard, your Chao is volatile.
- Pick different latitudes across successive Codes.
_creators[Latitude][Chi][Cause] += Deimosbuckets by latitude. Distributions pay out per-latitude. Spreading across latitudes hedges against a single Distribute pass clearing you out. - (inferred) Corner-hugging works. The valid region is a square, not a disc. You get marginally more territory by claiming in a corner than on an axis — but at the cost of being vulnerable if Yeo shrinks.
Worked example¶
Suppose you've computed that for you, at a given QING, META.Beat(QingWaat) returns Yeo = 100 and Dione = 5000. The QING sits at (lat=50, lon=150).
You could legally Code at any (lat, lon) in:
- Latitude in [-50, 150]
- Longitude in [50, 250]
That's a 200×200 square — 40,000 lattice points.
But if you fire off one Code, the RING state updates (Moments[Soul] = Iota overwrites; Yue.React side-effects). By your second Code, Chao may be larger (or smaller), shifting Yeo. You might compute Yeo=80 on the next read.
If your second claim was (150, 250) — the NE corner — and the recomputed Yeo = 80 puts the legal NE at (130, 230)… your (150, 250) reverts.
Rule of thumb: pick coordinates inside roughly 50% of Yeo, not 95%. Reserve some slack for turn-to-turn drift.
Gotchas¶
- Range check is
>/<, not>=/<=. Exactly atqlat + Yeois legal. The revert fires on strict exceedence. Corner-exactly claims are fine — but rely onYeonot shrinking mid-tx. - Latitude and Longitude are
int256. Negative latitudes are legal. Don't assumeLatitude >= 0. - Compliment output depends on Waat. Different QINGs have wildly different positions. A QING at Waat near Meridian[0] is near the south pole; near Meridian[89] is near the north.
- Map has a
Forbiddenconcept.Map.Forbidden(Asset)can lock a QING — Chat reverts withForbidden. Check whether the QING you want to Code near is forbidden before investing in its geometry. - (inferred) GWAT vs. QING positions. A GWAT has a different
Luo— specifically, aLuowhereLuo % 476733977057179 != 0. GWAT Waats are in a different region of the map from QING Waats. Don't assume a GWAT neighbor's territory math is the same.
Where it cross-connects¶
- Territory: WORLD.Code() Cadence — the order in which you fire Code calls.
- Territory: CO2 Dynamics — the global ledger your activity feeds.
- Cheat Sheet: Constants — the raw meridian numbers.
- Power: Soeng Chain Optimization — PANG's Yeo is your Yeo.
- Timing: Pole & Ring — Ring state gating
Yeo.