mirror of
https://github.com/d0zingcat/ore.git
synced 2026-05-13 15:09:57 +00:00
1c3b1246d3cd18e0a20ec98a85516e8df75a4505
ORE
Mine blocks. Trade hashpower. Earn rewards.
Summary
ORE is a cryptocurrency mining and trading game. Miners compete to earn block rewards by buying and selling hashpower in an open market. The more hashpower a miner has, the greater their chances of finding the best hash and winning the block reward.
Rewards and
API
Consts– Program constants.Error– Custom program errors.Event– Custom program events.Instruction– Declared instructions and arguments.
Instructions
User
Claim- Claims miner rewards.Close- Closes a block account.Initialize- Initializes the program.Log– Logs events as non-truncatable data.Mine- Submits hashes for scoring.Open- Opens a new block.Reset– Resets the hashpower market for the next block.Swap- Executes a buy or sell in the hashpower market.
Admin
SetAdmin- Re-assigns the admin authority.SetFeeCollector- Updates the fee collection address.SetFeeRate- Updates the fee charged per swap.
State
Block- A round in the game.Config- Global program configuration.Market- Hashpower market.Miner- Tracks a miner state and history.Treasury- The mint authority of the ORE token.
Block lifecycle
- Open a block with an upcoming ID.
- Reset the market to move it forward to the next ID.
Tests
To run the test suite, use the Solana toolchain:
cargo test-sbf
For line coverage, use llvm-cov:
cargo llvm-cov
Description
Languages
Rust
99.5%
Shell
0.5%