Skip to content
Mechanics

The compass

Deposit and point; withdraw anytime. How weight is counted.

Your compass is where you point. You deposit $MYR into the compass contract and point it at one coin; it stays there until you move it, and you can withdraw anytime. Every turn, all compasses are weighed and the heaviest direction wins.

needles point at targets; longer needles weigh more. the heaviest target lights red.

Deposit and point; withdraw anytime

Pointing is one transaction: point(target, amount) deposits amount $MYR (approve the compass contract first) and points your compass at target. From then on it counts on every turn. You do not need to come back, sign again or be online when the turn is called.

  • add(amount) deposits more on the same target.
  • point(newTarget, 0) moves your whole deposit to another target.
  • withdraw(amount) sends $MYR back to your wallet, immediately. There is no lock and no delay.
  • clearCompass() stops pointing; your deposit stays and can be withdrawn.

Only deposits count. $MYR in your wallet carries no weight, and sending or receiving $MYR never touches your compass.

You point at one target at a time. The target has to be eligible at the moment of the turn. If the coin you point at stops being eligible, your compass stays set but does not count until it is eligible again or you move it.

Weight

Your weight on a turn is:

activeDeposit * rankMultiplier

Two things go into it.

Deposited balance

A deposit counts once it has sat through a full turn: it becomes active at the start of the turn after next. Depositing again while a deposit is still waiting merges the two and restarts that wait for the whole waiting amount; nobody else can deposit into your compass, so only you can restart it.

This means depositing right before a snapshot does nothing. A withdrawal counts right away: your weight drops at once, taken from your active deposit first.

Rank multiplier

Your rank multiplies your weight. A new holder starts as Speck at 1×. The top rank, Murmur, counts at 2×. Rank rises when the target you pointed at is chosen and reaches take profit. It falls when it closes at the stop. A max-hold close changes nothing.

Worked example

The example below uses three holders with made-up balances. It is an example, not live data. The weights are computed from the current rank ladder, so if a multiplier changes, the example changes with it.

an example, with made-up deposits
HolderDeposit ($MYR)Counted depositRankWeightPoints at
Holder A
deposited a turn ago
400,000400,000Speck 1×400,000X
Holder B
deposited a turn ago
300,000300,000Lead 1.6×480,000Y
Holder C
deposited minutes before the snapshot
1,000,0000Wing 1.35×0X
target X 400,000target Y 480,000chosen
Holder C has the largest deposit, but it has not sat through 1 full turn, so it counts for nothing this time. Target Y wins.

Things to notice:

  • A large balance is not everything. A smaller holder with a higher rank can outweigh a larger one.
  • Weights for the same target add up. Two holders pointing at one coin can beat a single larger holder pointing elsewhere.
  • A deposit made during the last turn window adds nothing yet.

Reading your compass

The Compass tab shows your wallet and deposited $MYR, rank, current target and weight, with the deposit and withdraw controls. These come from the compass contract: compassOf, balancesOf, weightOf and rankOf. Until the contract is published, they show pending.

searchesc
follow us