HASHLINE
Creatures you breed with hashrate. Proof-of-work genetics on Robinhood Chain.
Version 1.0 · October 2026 · live on Robinhood Chain
Contract: 0xd8bb87e8555bbef3d81eb3677cf38aab3980a2a2 · Site: hashline.fun · X: @hashlinefun
1. Abstract
HASHLINE is a collection of on-chain creatures whose DNA is the hash that created them. A new creature can't be bought or minted at will: it is bred from an existing one by finding a hash that shares the parent's leading bits. Matching bits are inherited genes; the rest are mutations. Each extra matching bit doubles the work, so how faithfully a child copies its parent is a choice measured in hashrate.
Existing proof-of-work NFTs ask miners to hit a fixed target, such as leading zeros. HASHLINE is, to our knowledge, the first where the target is another NFT. Only the 16 genesis legends, hand-drawn and one of one, can be parents: each heads a lineage of at most 512 children, 8,208 creatures in all, and its owner earns royalties from other people's work, while difficulty balances itself.
2. Genome and artwork
- The 16 legends. Every genesis creature is a hand-drawn, one-of-one portrait, minted in order: Samurai Shiba, Moon Rabbit, Glitch Panda, Toxic Lizard (stage 1), Kitsune, Cosmic Toad, Iron Bear (2), Neon Ronin, Owl Sage (3), Golden Hog, Anubis (4), Mecha Prime, Oni (5), Overlord (6), Seraph (7) and The Hash Dragon (8). Each has its own species, colours and scene, a glow, a gold frame and a signature piece.
- Children carry their legend's species, fur and colours, so a lineage is recognisable at a glance; everything else comes from their DNA.
- A creature's DNA is a 256-bit hash. Its visual genome is the DNA combined with its lineage's root:
genome = dna XOR keccak256(rootDna), so every lineage has its own look while a child still shares its parent's leading bits. - Each child is a 48×48 pixel portrait assembled from an on-chain trait library of 161 sprites. Its legend fixes the species, fur and colours; the child's DNA picks 24 eyes, 24 mouths, 24 headwear, 24 outfits and 24 accessories with weighted rarity, 16 cloth dyes, 16 hat dyes and 16 backdrop colours × 8 patterns: about 2.6·10¹¹ combinations in every lineage, far more than its 512 children, and the fur's pattern is drawn from each creature's own hash, so no two are alike.
- Under headwear that covers the top of the head, ears and horns on top aren't drawn.
- Inheritance. Bits 34–81 pick the face, outfit and dyes and are shared with siblings only as far as the children matched their legend, so higher-fidelity children look more alike. Later bits choose the backdrop.
- The artwork, its sprites and palettes live in the contracts and are drawn by
tokenURIas SVG. No servers, no IPFS. The website draws with a reference renderer checked to produce byte-identical images.
3. Breeding
Only genesis creatures can be parents: children can't be bred from. To breed a child of a genesis creature P, a miner searches for a nonce such that
dna = keccak256(P.dna ‖ miner ‖ refBlock ‖ arbBlockHash(refBlock) ‖ nonce)
shares at least k leading bits with P.dna, where k is the current difficulty (§5).
| Property | How |
|---|---|
| Solutions can't be stolen | The miner's address is in the hash. A nonce copied from a pending transaction is worthless to anyone else. Robinhood Chain orders transactions first-come-first-served, with no priority-fee auction. |
| Work can't be prepared in advance | refBlock must be one of the last 240 L2 blocks (about 25 seconds on Robinhood Chain), and its hash comes from the chain's ArbSys precompile. The site moves to a fresh block every 3 seconds, which leaves about 20 seconds to confirm a find. |
| One lineage per hash | The parent's DNA is in the hash, so each hash targets one parent. |
| No replays | Every DNA is unique. |
| Same odds for everyone | Difficulty never depends on the wallet. More wallets don't help and don't hurt. |
Fidelity. A miner may keep going past k: the number of matching bits is recorded on-chain as the creature's fidelity.
4. Genesis stages
Genesis creatures descend from the Void, whose DNA is all zeros; mining them means finding leading zero bits. The 16 legends open in 8 stages with fewer and dearer legends each time:
- A stage's legends can breed once all of them exist; the next stage opens after 512 children of the current stage's legends. Legends of earlier stages keep breeding until each has its 512 children; then the lineage is complete. The collection ends at 8,208 creatures: 16 legends and 8,192 children.
- A legend needs 14 extra bits (16,384× the work of a child: at least 42 bits) and costs far more than a child. It earns 40% of every child's fee.
- A child's fee depends on its genesis parent's stage and rises as that stage breeds: it starts at the stage's child price and steps up by that amount after every 128 children of the stage (0.00025, 0.0005, 0.00075 … ETH in stage 1), stopping at 10×. When a new stage opens, the child fees of all earlier stages rise to the new stage's child price (keeping their own steps), so older lineages never become cheaper than new ones. Fees are always round numbers.
| Stage | Genesis | Genesis fee | Child fee: start → max | At ETH = $2,700 (genesis; child) |
|---|---|---|---|---|
| 1 | 4 | 0.01 ETH | 0.00025 → 0.0025 | $27; $0.68–6.75 |
| 2 | 3 | 0.015 | 0.000375 → 0.00375 | $41; $1.01–10.1 |
| 3 | 2 | 0.0225 | 0.0005 → 0.005 | $61; $1.35–13.5 |
| 4 | 2 | 0.0325 | 0.00075 → 0.0075 | $88; $2.02–20.2 |
| 5 | 2 | 0.045 | 0.001 → 0.01 | $122; $2.70–27 |
| 6 | 1 | 0.065 | 0.0015 → 0.015 | $176; $4.05–40.5 |
| 7 | 1 | 0.09 | 0.002 → 0.02 | $243; $5.40–54 |
| 8 | 1 | 0.125 | 0.00275 → 0.0275 | $338; $7.43–74.3 |
16 legends in all. Fees grow in steps within a stage and are capped; nothing doubles without limit.
5. Dynamic difficulty
k = global + parentFatigue(P) (a child of legend P)
k = global + 14 (a legend)
- Demand sets the difficulty, minute by minute. The contract aims for 8 births a minute and sets the difficulty anew every minute from the births of the minute before. More births add 1 bit (twice the work), and another bit for each doubling: 9–15 births +1, 16–31 +2, 32–63 +3, 64 or more +4. Fewer births take bits off the same way: 5–7 births −1, 3–4 −2, 2 −3, 0–1 −4, and every further empty minute −4. Exactly 8 keeps it. When many people mine, difficulty climbs every minute until births slow to the target; when few do, it falls fast.
- Be quick. A hash counts only if it meets the difficulty when its transaction lands. If someone else's birth or a new minute raised the difficulty in the meantime, the birth fails; the site checks this before asking you to sign, so you don't pay gas for it and mining just goes on.
- Lower bound. Difficulty never drops below 28 bits for a child and 42 bits for a legend. There is no upper bound in practice:
kis only capped at 64 bits, where one GPU would need billions of years. - Parent fatigue. Each birth from a legend adds 1 bit to that legend's next birth, fading by 1 bit every 15 seconds (at most 12): a legend only gets harder while it alone is bred more than 4 times a minute, half the target. Popular legends get naturally more expensive, so births spread over all of them.
- A legend needs 14 bits more than a child: 16,384 times the work.
Expected time per birth for one RTX 5090 (Keccak-256 ≈ 6.4 GH/s in hashcat; a browser miner is typically 2–3× slower, to be measured):
| Bits | Expected hashes | One RTX 5090 (6.4 GH/s) | At 2.6 GH/s |
|---|---|---|---|
| 28 (child floor) | 2.7·10⁸ | 0.04 s | 0.10 s |
| 32 | 4.3·10⁹ | 0.67 s | 2 s |
| 36 | 6.9·10¹⁰ | 11 s | 26 s |
| 40 | 1.1·10¹² | 3 min | 7 min |
| 42 (legend floor) | 4.4·10¹² | 11 min | 28 min |
| 46 | 7.0·10¹³ | 3.1 h | 7.5 h |
| 50 | 1.1·10¹⁵ | 2.0 days | 5.0 days |
| 54 | 1.8·10¹⁶ | 33 days | 80 days |
With the target of 8 births a minute (one every 7.5 seconds), the network settles near 39 bits with 10 such cards mining, 42 bits with 100 and 45 bits with 1,000: the more hashrate, the harder each birth. Legends always need 14 bits more. Everything is computed by the contract from stored timestamps and birth counts: no oracles, no admin controls.
6. Economics
Every child's fee is split on-chain:
| Recipient | Share |
|---|---|
| Owner of the legend (genesis parent) | 40% |
| Treasury | 60% (100% when you breed from your own legend) |
A legend's own fee goes to the treasury.
- Royalties. Owning a legend is income: every child bred from it pays you 40%. Breeding from your own legend pays that share to the treasury instead: no self-discount. Royalties follow the NFT: after a sale the buyer earns from the next child, while what was earned before stays with the seller.
- Sharing with children. A legend's owner can give any share (1–100%) of their withdrawable balance to the legend's living children, in equal parts. The reward belongs to the child NFT and is claimed by whoever holds it; children born later don't take part in earlier gifts, and burning a child pays out its unclaimed reward.
- Pull payments. Royalties and refunds accumulate in the contract and are withdrawn by their owners at any time.
7. Burning, staking and $GENE (planned)
$GENE, the project token, is planned for later, with rewards for burning and staking (locking) creatures.
- Burning for $GENE. HASHLINE records the fee paid for every birth. A separate rewards contract (
HashlineBurnRewards) burns creatures you approve it for and paysbirth fee × ratein $GENE: a legend that cost 0.01 ETH earns 40× a child that cost 0.00025 ETH. The contract is funded with $GENE up front and pays only what it holds; the rate is published before burning opens and can be locked forever. - Staking works the same way, by locking creatures in a separate contract; its rules come with the token.
- Until the token launches, burning is closed and pays nothing. A burned creature's record and lineage stay, but it can no longer be bred from.
$GENE confers no other rights and carries no promise of profit.
8. Mining
- In the browser: the official site mines with the graphics card through WebGPU. One slider sets how much of the card to use (0–100%); the batch size is tuned automatically. CPU threads are available when WebGPU isn't. Every solution is re-checked on the CPU and the transaction is simulated before sending.
- Open algorithm: the hash formula is public and the miner is open source. Fairness comes from the rules above, not from secrecy.
- Performance: the first 136-byte Keccak block doesn't depend on the nonce, so miners need a single Keccak permutation per attempt.
9. Security
- No mint, pause, fee or withdrawal powers for the team. All parameters are immutable. The owner can replace the artwork renderer until locking it forever.
- Tests: unit and fuzz tests; invariants over thousands of random actions (the contract holds exactly what it owes, stage counts add up, shared rewards add up, every creature matches its parent in its recorded bits); SVG validity and byte-for-byte renderer checks; an end-to-end test that mines and mints through the website.
- No external audit. The contracts are covered by the tests above and by static analysis (Slither);
contracts/SECURITY.mdlists every check and known limitation. The deployed source is verified (Sourcify, exact match) and open for anyone to review.
10. Roadmap
- ✅ Testnet: public test of mining, difficulty, stages, royalties and sharing with children.
- ✅ Mainnet (October 2026): genesis is open with the 4 legends of stage 1.
- $GENE launch; rewards for burning and staking creatures.
- Trait bounties: escrow ETH for "a child of P with trait X", paid to whoever mines it.
- Two-parent crossbreeding: match one parent's leading bits and the other's next bits.
11. Risks
HASHLINE is experimental software. Mining costs electricity and hardware time, and every birth costs a fee and gas whether or not the creature is later worth anything. NFTs and memecoins can lose all their value and may have no buyers. Smart contracts can contain bugs despite testing; these contracts have not had an external audit. Nothing in this document is investment advice.